Orchid: Integrating Schema Mapping and ETL ICDE 2008



Σχετικά έγγραφα
ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΕΞΑΓΩΓΗ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΜΕΤΑΦΟΡΤΩΣΗ (EXTRACT, TRANSFORM, LOAD) Πασχάλης Θρήσκος, PhD Λάρισα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

Database System Concepts and Architecture (Αρχιτεκτονική, οµές, και Μοντέλα)

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Εισαγωγή στην Πληροφορική

Παραδοτέο Π.2.1. Υπερχώρος και διαχείριση μοντέλων

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Διαχείριση Πολιτισμικών Δεδομένων

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Συστήματα Διαχείρισης Βάσεων Δεδομένων

2.2.5 ΑΝΑΠΑΡΑΣΤΑΣΗ ΑΛΓΟΡΙΘΜΟΥ

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

Κατανόηση των παραγόντων που συνδέονται με την εξέλιξη των συστημάτων ERP

Συστήματα Πληροφοριών Διοίκησης

Σχεσιακό Μοντέλο Περιορισμοί Μετατροπή ER σε Σχεσιακό Παράδειγμα.. Εργαστήριο Βάσεων Δεδομένων. Relational Model

Είδη Groupware. Λογισμικό Συνεργασίας Ομάδων (Groupware) Λογισμικό Groupware. Υπάρχουν διάφορα είδη groupware ανάλογα με το αν οι χρήστες εργάζονται:

Η ΜΕΤΑΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΕΞΕΙ ΙΚΕΥΣΗΣ. Υποβάλλεται στην

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 2. Α1. Ο αλγόριθμος είναι απαραίτητος μόνο για την επίλυση προβλημάτων πληροφορικής

Σύστημα Αναθέσεων. Σχεδιασμός Υποσυστημάτων

Κεφάλαιο 4ο: Δικτυωτή Ανάλυση

1. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ

Geographic Information System(GIS)

Jumbo AEΕ : Ροή Εργασιών & Διαχείριση Εγγράφων. Case Study

METROPOLIS. Ένα περιβάλλον σχεδιασμού για ετερογενή συστήματα

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Εισαγωγή στα Συστήματα Βάσεων Δεδομένων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 9 ο

Εισαγωγή στην Πληροφορική

ΓΕΩΠΟΝΙΚΗ ΣΧΟΛΗ ΑΠΘ Εργαστήριο Πληροφορικής στη Γεωργία ΠΛΗΡΟΦΟΡΙΚΗ Ι

Κεφάλαιο 6 Υλοποίηση Γλωσσών Προγραμματισμού

Πληροφοριακού Συστήματος Ενημέρωσης Καιρικών Συνθηκών

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

Πίνακας περιεχοµένων

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

Δημιουργία πολυμέσων

Διάλεξη 06: Σχεσιακό Μοντέλο I (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

ΜΕΘΟΔΟΣ ΠΕΠΕΡΑΣΜΕΝΩΝ ΣΤΟΙΧΕΙΩΝ

ΜΕΘΟΔΟΛΟΓΙΕΣ ΑΝΑΠΤΥΞΗΣ ΣΥΣΤΗΜΑΤΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

Φίλιππος-Δημ. Καλαμίδας. Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων ΠΕΡΙΛΗΨΗ

Βάσεις εδοµένων. Βασίλειος Βεσκούκης, Εµµ. Στεφανάκης ΣΥΣΤΗΜΑΤΑ ΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ

Στ Τάξη. Α/Α Μαθηματικό περιεχόμενο Δείκτες Επιτυχίας Ώρες Διδ. 1 ENOTHTA 1

ΕΙΣΑΓΩΓΗ ΣΤΗΝ UML ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ (ΔΙΑΓΡΑΜΜΑΤΑ ΔΡΑΣΤΗΡΙΟΤΗΤΩΝ & ΠΕΡΙΠΤΩΣΕΩΝ ΧΡΗΣΗΣ) (7-8)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ - Π.Μ.Σ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

Αρχιτεκτονική Συστημάτων Βάσεων Δεδομένων. Κατηγορίες χρηστών ΣΔΒΔ Αρχιτεκτονική ANSI/SPARC Γλώσσες ερωτημάτων Μοντέλα δεδομένων Λειτουργίες ΣΔΒΔ

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

Ανάπτυξη & Σχεδίαση Λογισμικού (ΗΥ420)

ΚΑΤΑΝΕΜΗΜΕΝΕΣ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ

Διαδικασίες παραγωγής λογισμικού. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 4

Μια ολοκληρωμένη, διαχρονική και μόνιμη συλλογή δεδομένων οργανωμένη κατά αντικείμενο ανάλυσης με στόχο τη διαδικασία υποστήριξης λήψης αποφάσεων -

ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ ΚΕΦΑΛΑΙΟ 2 ο ΚΕΦΑΛΑΙΟ 7 ο ΕΡΩΤΗΣΕΙΣ ΓΕΝΙΚΑ ΠΕΡΙ ΑΛΓΟΡΙΘΜΩΝ

Ενδεικτική Οργάνωση Ενοτήτων. E Τάξη. Α/Α Μαθηματικό περιεχόμενο Δείκτες Επιτυχίας Ώρες Διδ. 1 ENOTHTA 1

Επισκόπηση Μαθήµατος

Λειτουργικά Συστήματα 7ο εξάμηνο, Ακαδημαϊκή περίοδος

Πρόβλημα 37 / σελίδα 207

Βάσεις Δεδομένων : Σχεσιακό Μοντέλο 1. Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση.

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Σχεδίαση Σχεσιακών ΒΔ

ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ Relational Model. SQL Μαθ. #11

Διαχείριση Δεδομένων

Geogebra. Μακρή Βαρβάρα. Λογισµικό Geogebra

ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΑΡΧΕΣ ΤΗΣ ΕΠΙΣΤΗΜΗΣ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

Σχεδιασμός Βάσεων Δεδομένων

ΚΕΦΑΛΑΙΟ 2ο ΠΡΟΣΟΜΟΙΩΣΗ ΔΙΑΚΡΙΤΩΝ ΓΕΓΟΝΟΤΩΝ

Πλεονεκτήματα και μειονεκτήματα της προσομοίωσης

ΕΙΣΑΓΩΓΗ ΣΤΙΣ Β ΣΕ Ε Σ Ι ΟΜΕΝ

Θεωρητικές Ασκήσεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ. 1 ο Μέρος

Δεδομένα και Πληροφορίες

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών

Εξαγωγή Μετασχηματισμός Εισαγωγή Δεδομένων στην Αποθήκη Πληροφοριών (ETL) ETL) Αριστομένης Μακρής

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

Βάσεις Δεδομένων ΙΙ. Διάλεξη 5 η XML και ΒΔ στο Διαδίκτυο

ΔΙΑΣΥΝΔΕΣΗ ΔΙΚΤΥΩΝ (INTERNETWORKING)

Προδιαγραφές Απαιτήσεων Γιάννης Σμαραγδάκης

Διάγραμμα Ροής Δεδομένων

Σχεσιακό Μοντέλο Δεδομένων

Φύλλο Κατανόησης 1.8

Επεξεργασία Ερωτήσεων

Περιεχόμενο του μαθήματος

Επεξεργασία Ερωτήσεων

Σχεδίαση Βάσεων Δεδομένων

A. Να γράψετε τον αριθμό της κάθε μιας από τις παρακάτω προτάσεις και δίπλα. το γράμμα Σ, εάν είναι σωστή, ή το γράμμα Λ, εάν είναι λανθασμένη.

ΗΥ 360 Αρχεία και Βάσεις Δεδομένων

Ένας απλός τρόπος αναπαράστασης δεδομένων: ένας διδιάστατος πίνακας που λέγεται σχέση Γνωρίσματα

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

Αρχεία και Βάσεις Δεδομένων

Τεχνολογία Λογισμικού

Αρχιτεκτονική Λογισμικού

Μαλούτα Θεανώ Σελίδα 1

Συγγραφή κώδικα, δοκιμασία, επαλήθευση. Γιάννης Σμαραγδάκης

Εργασία «Διαχείριση Δικτύων» Ιούνιος 2014, Θεσ/νίκη

Πληροφορική ΙΙ Εισαγωγή στις Βάσεις Δεδομένων. Τμήμα Λογιστικής

ΕΝΟΤΗΤΑ 2 ΠΡΟΣΘΕΣΗ ΚΑΙ ΑΦΑΙΡΕΣΗ ΜΕΧΡΙ ΤΟ 100 ΔΕΙΚΤΕΣ ΕΠΙΤΥΧΙΑΣ

Σύστημα υποβολής αιτήσεων υποψήφιων συνεργατών ΕΚΤ

Transcript:

Orchid: Integrating Schema Mapping and ETL ICDE 2008 Δομουχτσίδης Παναγιώτης

Γενικά Data warehouse (DW): Είναι μία αποθήκη πληροφοριών οργανωμένη από ένα ενοποιημένο μοντέλο. Τα δεδομένα συλλέγονται από ένα πλήθος διαφορετικών πηγών. Έχει σαν στόχο να υποστηρίζει γρηγορότερες και καλύτερες αποφάσεις. Extraction-Transformation-Loading (ETL): Εργαλεία που διευκολύνουν και διαχειρίζουν τις λειτουργίες και τις διεργασίες των DW. Εξαγωγή σχετικής πληροφορίας από την πλευρά της πηγής (extraction). Μεταφορά αυτής της πληροφορίας στο DSA (transportation). Μετασχηματισμό της πληροφορίας που προέρχεται από πολλαπλές πηγές σε μία κοινή μορφή (transformation). Καθαρισμός των τελικών συνόλων των δεδομένων (cleaning). Διάδοση και φόρτωμα των δεδομένων στο DW και ανανέωση των data marts (propagation and loading).

Data Stage Area (DSA): Μία βοηθητική περιοχή δεδομένων για τον μετασχηματισμό, την τακτοποίηση και τον καθαρισμό πριν το τελικό φόρτωμα στο DW. Data mart: Ένα λογικό υποσύνολο του DW.

Εισαγωγή Mappings tools: Παράγουν ένα μετασχηματισμό μίας ερώτησης ή ενός προγράμματος που διατηρεί την σημασιολογία του και παρέχουν meta-data που διατηρούν τις σχέσεις μεταξύ του σχήματος της πηγής και του στόχου. ETL: Επιτρέπουν στους χρήστες να εκφράσουν μετασχηματισμούς δεδομένων (jobs) σαν μία ροή δεδομένων πάνω σε ένα γράφο τελεστών (stages).

Orchid (1/2) Το Orchid είναι ένα πρωτότυπο σύστημα που αναπτύσσεται στο IBM Almaden καιέχειενοποιηθείστοfasttrack ένα συστατικό του IBM Information Server. Είναι ένα σύστημα που μετατρέπει declarative mappings σε λεπτομερής διαγράμματα ροής (ETL jobs) και το αντίθετο. Το Orchid μετατρέπει τα Clio ή Rational Data Architect (RDA) schema mappings σε IBM WebSphere DataStage ETL jobs και το αντίθετο. Επειδή το Orchid μετατρέπει τα ETL job σε αντιστοιχίσεις, επαναδιατυπώνει τα job και τα αναπτύσσει σαν μία ακολουθία συνδυασμένων SQL ερωτήσεων και ETL jobs. Αυτό έχει σαν αποτέλεσμα να μειώνεται ο φόρτος εργασίας στους ETL προγραμματιστές.

Orchid (2/2) ETLs jobs & schema mappings descriptions αναπαριστούνται σαν ένα μοντέλο τριών επιπέδων (external, intermediate & abstract layer). External layer: χαρακτηρίζει την περιγραφή των ETL και mapping πληροφοριών σε ένα εξωτερικό σχήμα ειδικά για τα δεδομένα επεξεργασίας παραγωγής. Intermediate layer: ακόμη αναπαριστούν το προηγούμενο είδος, αλλά επιπλέον περιέχουν μοντέλα που αντανακλούν την επεξεργασία των ETL σχετικά με το Orchid. Abstract layer: υποστηρίζει το Operator Hub Model (OHM) για την αναπαράσταση των λειτουργιών των ETL βημάτων επεξεργασίας.

Operator Hub Model (OHM) (1/2) Ο κύριος σκοπός της εισαγωγής του ΟΗΜ μέσα στην αρχιτεκτονική του Orchid είναι: να παρέχει ένα μοντέλο για την αναπαράσταση των μετασχηματισμών των δεδομένων των λειτουργιών ανεξάρτητα από τις διαφορετικές πλατφόρμες ETL. Θέλουμε το ΟΗΜ να παραμείνει όσο γίνεται πιο κοντά στην προσέγγιση που είναι βασισμένη στους τελεστές που βρίσκονται στις ETL πλατφόρμες. Επίσης το ΟΗΜ πρέπει να είναι ικανό να αναπαραστήσει τους μετασχηματισμούς που είναι έμφυτοι στα schema mappings specifications. Για να πετύχουμε αυτούς τους σκοπούς επιλέγουμε την σχεσιακή άλγεβρα σαν σημείο εκκίνησης για το μοντέλο μας.

Operator Hub Model (OHM) (2/2) Ένα στιγμιότυπο του ΟΗΜ είναι ένας κατευθυνόμενος γράφος αποσπάσματος τελεστών κόμβων. Ο γράφος αναπαριστά μία ροή δεδομένων με την ροή προς την κατεύθυνση των ακμών. Κάθε κόμβος στον γράφο αναπαριστά μία λειτουργία μετασχηματισμού δεδομένων και είναι σχολιασμένος με πληροφορία που χρειάζεται να πιάσει τους σημασιολογικούς μετασχηματισμούς των λειτουργιών του ETL που αναπαριστούνται. Κάθε ακμή είναι σχολιασμένη με το σχήμα της ροής δεδομένων κατά μήκος της. Το σύνολο των τελεστών του ΟΗΜ περιέχει τους τελεστές της σχεσιακής άλγεβρας, επιπρόσθετα και κάποιους βελτιωμένους τελεστές. Επίσης υποστηρίζει και εμφωλευμένες δομές δεδομένων διαμέσου των απαραίτητων τελεστών.

Transforming ETL into Mappings Compiling ETL jobs into OHM Deploying OHM as Mappings

Transforming ETL into Mappings Compiling ETL jobs into OHM Deploying OHM as Mappings

Compiling ETL jobs into OHM Το Orchid κάνει την μετατροπή σε δύο βήματα: 1 ο βήμα: Η ETL αναπαράσταση διαβάζεται από την διεπαφή του ενδιάμεσου επιπέδου και μετατρέπεται σε ένα από κατευθυνόμενο γράφο, του οποίου οι κόμβοι καλύπτουν κάθε vendor-specific stage. 2 ο βήμα: Μετατρέπεται αυτός ο γράφος σε ένα γράφο που περιέχει ένα ή περισσότερους ΟΗΜ τελεστές.

Transforming ETL into Mappings Compiling ETL jobs into OHM Deploying OHM as Mappings

Deploying OHM as Mappings Δοσμένου του ακυκλικού κατευθυνόμενου γράφου (DAG) με του ΟΗΜ τελεστές, το Orchid δημιουργεί έναν αντίστοιχο DAG με αντιστοιχήσεις (mappings). Ξεκινώντας από την πλευρά των κόμβων της πηγής και με την φορά των ακμών προσπαθεί να συνθέσει την αντιστοίχηση στον τρέχων κόμβο με όλες τις αντιστοιχήσεις που στοχεύουν κόμβους με εισερχόμενες ακμές. Εάν η σύνθεση είναι δυνατή οι αντιστοιχήσεις αντικαθιστούν τις υπάρχοντες στον γράφο. Ένας κόμβος στον γράφο που δεν επιτρέπει την σύνθεση έχει τουλάχιστον μία ακμή που ονομάζεται materialization point. Τα materialization points αναγνωρίζονται ως όρια σε ένα γράφο, του οποίου οι αντιστοιχήσεις έχουν πλήρως συντεθεί.

Transforming Mappings into ETL Compiling Mappings into OHM Deploying OHM instances as ETL

Transforming Mappings into ETL Compiling Mappings into OHM Deploying OHM instances as ETL

Compiling Mappings into OHM Εισάγουμε τις αντιστοιχίσεις χρησιμοποιώντας την Clio ή κάποιο άλλο mapping tool. Αρχικά το Orchid δημιουργεί ένα σκελετό ενός ΟΗΜ γράφου χρησιμοποιώντας ένα πρότυπο. Έπειτα αναγνωρίζει και διατηρεί τους τελεστές που υπάρχουν στον γράφο και πραγματικά απαιτούνται για τις συγκεκριμένες αντιστοιχίσεις. Τέλος απομακρύνει εκείνους τους τελεστές του γράφου που είναι περιττοί.

Transforming Mappings into ETL Compiling Mappings into OHM Deploying OHM instances as ETL

Deploying OHM instances as ETL Το Orchid αναπτύσσει τον ΟΗΜ γράφο σε μία runtime πλατφόρμα (RP). Στο παράδειγμά μας χρησιμοποιείται η DataStage. Αρχικά κάθε τελεστής στον ΟΗΜ γράφο εσωκλείεται από ένα ή περισσότερους RP operator boxes. Όλοι οι RP τελεστές είναι ικανοί να διαχειριστούν OHM s BASIC PROJECT. Filter & Transform DataStage stages υλοποιούν το OHM s FILTER. Copy, Switch & Filter DataStage stages υλοποιούν το OHM s SPLIT. Υπάρχουν όμως τελεστές όπως ένα πολύπλοκο PROJECT, οι οποίοι δεν μπορούν να υλοποιηθούν από ένα από RP τελεστή. Όταν συμβεί αυτό το Orchid προσπαθεί να το σπάσει σε πολλαπλούς ΟΗΜ τελεστές. Επόμενο βήμα συγχώνευση γειτονικών RP operators boxes όσο το δυνατό το περισσότερο. Προτιμώνται λύσεις με τους λιγότερους RP τελεστές. Χρησιμοποιείται μία greedy τεχνική για τον συνδυασμό των κουτιών, ξεκινώντας με τους τελεστές πλησιέστερα στην πηγή των δεδομένων.

Mappings M 1 υπολογίζει το συνολικό ισοζύγιο για όλους τους πελάτες. M 2 και M 3 κατευθύνουν τις πλειάδες στις σχέσεις BigCustomers και OtherCustomers αντίστοιχα.

Orchid (3/3) ΗεισαγωγήτουOHM στο abstract layer έχει πολλά πλεονεκτήματα: 1) Αναπαριστά και χειρίζεται τα ETL jobs ανεξάρτητα, αυτό διευκολύνει τους μετασχηματισμούς από και προς τις αντιστοιχήσεις(mappings) και κάνει το μοντέλο ανεξάρτητο. 2) Είναι ελαστικό δηλαδή όταν, νέα ETL στοιχεία ή mapping λειτουργίες προστίθενται στο σύστημα, να μην επηρεάζεται καμία λειτουργία του επιπέδου που βρίσκεται το ΟΗΜ. 3) Μένοντας κοντά στην σχεσιακή άλγεβρα, προσδίδει στο ΟΗΜ τις ίδιες τεχνικές βελτιστοποίησης με το DBMS.