Υλοποίηση των Σχεσιακών Τελεστών. 6/16/2009 Μ.Χατζόπουλος 1

Σχετικά έγγραφα
Οι πράξεις της συνένωσης. Μ.Χατζόπουλος 1

Εισαγωγή στην. Εισαγωγή Σ Β. Αρχεία ευρετηρίου Κατάλογος. συστήματος. Αρχεία δεδομένων

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

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

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

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

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων

Το εσωτερικό ενός Σ Β

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

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 7: Αλγόριθμοι για επεξεργασία ερωτήσεων και βελτιστοποίηση

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

Το Σχεσιακό Μοντέλο-Σχεσιακή Άλγεβρα, Σχεσιακός Λογισμός. 06/06/2009 Μ.Χατζόπουλος 1

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

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

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 7: Αλγόριθμοι για επεξεργασία ερωτήσεων και βελτιστοποίηση

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1

Κεφάλαιο 14. Δομές Ευρετηρίων για Αρχεία. Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Ελληνική Έκδοση,

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

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 6: Δομές ευρετηρίων για αρχεία

Βάσεις Δεδομένων 2. Φροντιστήριο Αλγόριθμοι Επεξεργασίας και Βελτιστοποίησης Επερωτήσεων. Ημερ: 27/5/2008 Ακ.Έτος

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση, Δίαβλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 14-1

Τα δεδοµένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Για να επεξεργαστούµε τα δεδοµένα θα πρέπει αυτά να βρίσκονται στη

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση, Δίαυλος Διαφάνεια 15-1

Εξωτερική Αναζήτηση. Ιεραρχία Μνήμης Υπολογιστή. Εξωτερική Μνήμη. Εσωτερική Μνήμη. Κρυφή Μνήμη (Cache) Καταχωρητές (Registers) μεγαλύτερη ταχύτητα

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1

Κεφάλαιο 14. οµές Ευρετηρίων για Αρχεία. ιαφάνεια 14-1

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Διαφάνεια 16-1

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

Βελτιστοποίηση επερωτημάτων

Επεξεργασία ερωτημάτων

Βάσεις Δεδομένων ΙΙ Ενότητα 5

Κατακερματισμός. 4/3/2009 Μ.Χατζόπουλος 1

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

Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια.

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

Κεφ.11: Ευρετήρια και Κατακερματισμός

ΗΥ460 Συστήµατα Διαχείρισης Βάσεων Δεδοµένων Χειµερινό Εξάµηνο 2016 Διδάσκοντες: Βασίλης Χριστοφίδης

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

Σχεσιακή Άλγεβρα. Παύλος Εφραιμίδης. Βάσεις Δεδομένων Σχεσιακή Άλγεβρα 1

ΕΡΓΑΣΙΑ. (στο μάθημα: Τεχνολογίες Εφαρμογών Διαδικτύου του Η εξαμήνου σπουδών του Τμήματος Πληροφορικής & Τηλ/νιών)

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής.

Τελεστής Προβολής - Παράδειγμα. Π Πόλη, Εξάμηνο (Φοιτητές)

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

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ


Δυναμικός Κατακερματισμός

Πληροφορική 2. Δομές δεδομένων και αρχείων

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

Ο βελτιστοποιητής ερωτημάτων (query optimizer) Μετασχηματισμός εκφράσεων σχεσιακής άλγεβρας Υπολογισμός μεγεθών πράξεων σχεσιακής άλγεβρας

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

µπιτ Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E Άρα το δεκαεξαδικό ισοδύναµο είναι CE2

Βάσεις εδοµένων. Συνολοθεωρητικές Πράξεις. Ειδικές Πράξεις. Εκφράσεις. Θεµελίωση της Σχεσιακού Μοντέλου εδοµένων. Σχεσιακή Άλγεβρα Σχεσιακός Λογισµός

Σχεσιακή Άλγεβρα. Συνολοθεωρητικές Πράξεις. Εκφράσεις. Ειδικές Πράξεις. Θεμελίωση της Σχεσιακού Μοντέλου Δεδομένων. Σχεσιακός Λογισμός

Λίγα λόγια από το συγγραφέα...7

Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων

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

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005

Τμήμα Πληροφορικής ΑΠΘ

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

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση, Δίαβλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 14-1

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

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

Σχεδιασμός μιας εφαρμογής ΒΔ: Βήματα. 1. Συλλογή και Ανάλυση Απαιτήσεων(requirement analysis)

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

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

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

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων : Σχεσιακή Άλγεβρα 1

Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης

Μετατροπή Σχήματος Ο/Σ σε Σχεσιακό

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

Φροντιστήριο Αποθήκευση σε δίσκο, βασικές οργανώσεις αρχείων κατακερματισμός και δομές ευρετηρίων για αρχεία

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

DISTINCT, LIKE, NULL, AND, OR, BETWEEN

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

Μετατροπή Σχήματος Ο/Σ σεσχεσιακό

ΛΥΣΗ ΤΗΣ ΔΕΥΤΕΡΗΣ ΑΣΚΗΣΗΣ Όλγα Γκουντούνα

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

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

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός

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

Ευρετήρια και Κατακερματισμός

Εξωτερική Ταξινόμηση. Μ.Χατζόπουλος 1

Ευρετήρια. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια. Ευρετήρια. Ευρετήρια

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - Από το ΔΟΣ στη Σχεσιακή Β.Δ.

Ευρετήρια. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια. Ευρετήρια. Ευρετήρια

Πληροφορική & Τηλεπικοινωνίες. K18 - Υλοποίηση Συστημάτων Βάσεων Δεδομένων Εαρινό Εξάμηνο

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

Εργασία Συστήματα Βάσεων Δεδομένων. Θέμα

Εαρινό Εξάμηνο

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

Πρόλογος Μέρος Ι Εισαγωγή στα συστήματα βάσεων δεδομένων Μια βόλτα στις βάσεις δεδομένων...25

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

Εξωτερική Ταξινόμηση. Μ.Χατζόπουλος 1

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρα 1. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια.

Transcript:

Υλοποίηση των Σχεσιακών Τελεστών 6/16/2009 Μ.Χατζόπουλος 1

Ένα σχεσιακό ΣΔBΔ πρέπει να συμπεριλαμβάνει αλγόριθμους για υλοποίηση των διαφορετικών τύπων των σχεσιακών πράξεων (καθώς και άλλων πράξεων) που μπορεί να εμφανισθούν σε μια στρατηγική εκτέλεσης επερώτησης. Oι πράξεις αυτές συμπεριλαμβάνουν τις βασικές και τις επεκταμένες πράξεις της σχεσιακής άλγεβρας και, σε πολλές περιπτώσεις, συνδυασμούς αυτών των πράξεων. Για κάθε τέτοια πράξη ή συνδυασμό πράξεων παρέχονται ένας ή περισσότεροι αλγόριθμοι για την εκτέλεση της πράξης. Όλοι οι αλγόριθμοι ανακτούν πλειάδες από μια ή περισσότερες σχέσεις εισόδου. 6/16/2009 Μ.Χατζόπουλος 2

Δρόμοι Προσπέλασης (Access Paths) Ένας δρόμος προσπέλασης είναι ή : (1)Μια σάρωση ενός αρχείου ή (2)Ένα ευρετήριο και μια συνθήκη επιλογής Ένα ευρετήριο αντιστοιχεί στην συνθήκη επιλογής αν μπορεί να χρησιμοποιηθεί για την ανάκτηση των πλειάδων που ικανοποιούν την συνθήκη. Μια απλή συνθήκη επιλογής έχει την μορφή γνώρισμα θ τιμή θ {<,, =, >,, } Η επιλεκτικότητα ενός δρόμου προσπέλασης είναι το πλήθος των σελίδων που πρέπει να προσπελασθούν για να ανακτηθούν οι επιθυμητές πλειάδες 6/16/2009 Μ.Χατζόπουλος 3

Απόδοση Στον υπολογισμό του κόστους μας ενδιαφέρει μόνο το κόστος εισόδου/εξόδου. Το κόστος αυτό θα το μετρήσουμε πλήθος σελίδων που μεταφέρονται από/προς τη μνήμη. Η απόδοση κάθε πράξης μπορεί να εκτιμηθεί για διαφορετικές μεθόδους υλοποίησης. 6/16/2009 Μ.Χατζόπουλος 4

ΠΡΟΜΗΘΕΥΤΗΣ (ΠΡΜ) Κ_Προμ Π_Ονομα Είδος Πόλη 22 Ανδρέου 7 Αθήνα 31 Πέτρου 8 Πάτρα 28 Δέδες 12 Λάρισα 58 Παππάς 7 Αθήνα ΠΡΟΙΟΝ (ΠΡ) Κ_Πρ Πρ_Ονομα Χρώμα Βάρος Π35 Οθόνη Γκρι 8 Π76 DVD Μαύρο 4 Π14 Κράνος Άσπρο 1 ΕΡΓΟ (ΕΡ) Κ_Ερ Προυπ Πόλη Ε25 245Κ Αθήνα Ε32 500Κ Άργος Ε68 1000Κ Αθήνα ΠΑΡΑΓΓΕΛΙΑ (ΠΑΡ) Κ_Προμ Κ_Πρ Κ_Ερ Ποσοτ 22 Π35 Ε25 200 31 Π35 Ε25 100 31 Π76 Ε32 150 28 Π14 Ε68 150 22 Π76 Ε25 450 22 Π35 Ε32 670 22 Π35 Ε68 650 58 Π14 Ε68 670 28 Π14 Ε32 540 22 Π14 Ε25 200 6/16/2009 Μ.Χατζόπουλος 5

Πράξη της Επιλογής (1) Απλή επιλογή της μορφής: σ R.Aθc (R) 6/16/2009 Μ.Χατζόπουλος 6

Δεν υπάρχει ευρετήριο και τα δεδομένα δεν είναι ταξινομημένα στο γνώρισμα Α Σειριακή αναζήτηση (εξαντλητική αναζήτηση): ανάκτηση κάθε εγγραφής του αρχείου και έλεγχος αν οι τιμές των γνωρισμάτων της ικανοποιούν τη συνθήκη επιλογής. Το κόστος είναι όσο μια εξαντλητική σάρωση του αρχείου. Αν επομένως το μέγεθος του αρχείου είναι b σελίδες αυτό θα είναι και το κόστος γενικά. (Πότε μπορεί να είναι λιγότερο;) 6/16/2009 Μ.Χατζόπουλος 7

σ Ποσοτ>200 (ΠΑΡ) ΠΑΡΑΓΓΕΛΙΑ (ΠΑΡ) Κ_Προμ Κ_Πρ Κ_Ερ Ποσοτ 22 Π35 Ε25 200 31 Π35 Ε25 100 31 Π76 Ε32 150 28 Π14 Ε68 150 22 Π76 Ε25 450 22 Π35 Ε32 670 22 Π35 Ε68 650 58 Π14 Ε68 670 28 Π14 Ε32 540 22 Π14 Ε25 200 6/16/2009 Μ.Χατζόπουλος 8

Δεν υπάρχει ευρετήριο στο γνώρισμα της επιλογής αλλά το αρχείο είναι φυσικά ταξινομημένο στο γνώρισμα της επιλογής Δυαδική αναζήτηση: Αν η συνθήκη επιλογής περιλαμβάνει μια σύγκριση σε ένα γνώρισμα-κλειδί πάνω στο οποίο το αρχείο είναι ταξινομημένο, μπορεί να χρησιμοποιηθεί δυαδική αναζήτηση (η οποία είναι πιο αποτελεσματική από τη σειριακή αναζήτηση). Με την δυαδική αναζήτηση μπορούμε να εντοπίσουμε την πρώτη πλειάδα που ικανοποιεί την συνθήκη επιλογής και μπορούμε να εντοπίσουμε τις υπόλοιπες σαρώνοντας το αρχείο από το σημείο αυτό. 6/16/2009 Μ.Χατζόπουλος 9

ΠΑΡΑΓΓΕΛΙΑ (ΠΑΡ) σ Ποσοτ>200 (ΠΑΡ) Κ_Προμ Κ_Πρ Κ_Ερ Ποσοτ 31 Π35 Ε25 100 31 Π76 Ε32 150 Το κόστος της δυαδικής αναζήτησης είναι: Ο(log 2 b) Και επιπλέον το κόστος της σειριακής αναζήτησης 28 Π14 Ε68 150 22 Π14 Ε25 200 22 Π35 Ε25 200 22 Π76 Ε25 450 28 Π14 Ε32 540 22 Π35 Ε68 650 58 Π14 Ε68 670 22 Π35 Ε32 670 6/16/2009 Μ.Χατζόπουλος 10

Χρήση Πρωτεύοντος ευρετηρίου ή κλειδιού κατακερματισμού Στην περίπτωση που το γνώρισμα της συνθήκης επιλογής είναι πρωτεύον κλειδί και η συνθήκη είναι συνθήκη ισότητας τότε μπορεί να χρησιμοποιηθεί η οργάνωση του αρχείου (με το όποιο κόστος της) για την εύρεση της πλειάδας που ικανοποιεί την συνθήκη. Το κόστος θα είναι το ύψος του ευρετηρίου συν 1. Αν x το ύψος του ευρετηρίου θα είναι x+1 6/16/2009 Μ.Χατζόπουλος 11

Xρήση ενός πρωτεύοντος ευρετηρίου για ανάκτηση πολλών εγγραφών Αν η συνθήκη σύγκρισης είναι >,,<, ή σε ένα πεδίο-κλειδί με πρωτεύον ευρετήριο χρησιμοποιούμε το ευρετήριο για να βρούμε την εγγραφή που ικανοποιεί την αντίστοιχη συνθήκη ισότητας και στη συνέχεια ανακτούμε όλες τις εγγραφές που ακολουθούν στο ταξινομημένο αρχείο. Για παράδειγμα στην ερώτηση σ Κ_Προμ>28 (ΠΡΜ) μπορεί να χρησιμοποιηθεί το ευρετήριο για την εύρεση της πρώτης εγγραφής και στη συνέχεια να γίνει σάρωση. 6/16/2009 Μ.Χατζόπουλος 12

Χρήση ευρετηρίων συστάδων για ανάκτηση πολλών εγγραφών Αν η συνθήκη επιλογής περιλαμβάνει μια συνθήκη ισότητας σε ένα γνώρισμα που δεν είναι κλειδί αλλά έχει ορισθεί σ αυτό ένα ευρετήριο συστάδων, χρησιμοποιούμε το ευρετήριο συστάδων για την ανάκτηση όλων των εγγραφών που ικανοποιούν τη συνθήκη επιλογής. Για παράδειγμα η σ Ποσοτ>200 (ΠΑΡ) και υπάρχει ευρετήριο συστάδα στην ποσότητα Το κόστος θα είναι x (ύψος ευρετηρίου) συν την ανάκτηση των s εγγραφών που ικανοποιούν την συνθήκη s/bfr 6/16/2009 Μ.Χατζόπουλος 13

Xρήση δευτερεύοντος ευρετηρίου (B+-δένδρου) σε μια συνθήκη ισότητας Αυτή η μέθοδος αναζήτησης μπορεί να χρησιμοποιηθεί για να ανακτηθεί μία μοναδική εγγραφή, αν το γνώρισμα της συνθήκης είναι κλειδί (έχει μοναδικές τιμές) ή για να ανακτηθούν πολλαπλές εγγραφές αν το γνώρισμα της συνθήκης δεν είναι κλειδί. Eπιπλέον μπορεί να χρησιμοποιηθεί για ανάκτηση εγγραφών, προκειμένου για συνθήκες που περιλαμβάνουν τους τελεστές >, >=,<, ή <=. 6/16/2009 Μ.Χατζόπουλος 14

Πολύπλοκες Συνθήκες Επιλογής Γενικά η συνθήκη επιλογής μπορεί μπορεί να είναι μια λογική παράσταση. Μπορεί να έχει την μορφή: συνθήκη1 op συνθήκη2 op συνθήκηn όπου το op είναι ο λογικός τελεστής AND ή OR. Για παράδειγμα σ Είδος=7 AND Πόλη= Άργος (ΠΡΜ) Μια τέτοια παράσταση μπορούμε να την μετατρέψουμε σε συζευκτική μόνο 6/16/2009 Μ.Χατζόπουλος 15

Συζευκτική επιλογή με χρήση ατομικού ευρετηρίου Αν ένα γνώρισμα που περιλαμβάνεται σε οποιαδήποτε απλή συνθήκη της συζευκτικής συνθήκης έχει μια διαδρομή προσπέλασης που επιτρέπει τη χρήση μιας από τις μεθόδου όπως και σε απλή συνθήκη, χρησιμοποιούμε αυτή τη συνθήκη για την ανάκτηση των εγγραφών και στη συνέχεια ελέγχουμε αν κάθε ανακτηθείσα εγγραφή ικανοποιεί τις υπόλοιπες απλές συνθήκες της συζευκτικής συνθήκης. σ Είδος=7 AND Πόλη= Άργος (ΠΡΜ) Αν υπάρχει ευρετήριο στο Είδος ή την Πόλη 6/16/2009 Μ.Χατζόπουλος 16

Συζευκτική επιλογή με χρήση σύνθετου ευρετηρίου Αν δύο ή περισσότερα γνωρίσματα συμμετέχουν σε συνθήκες ισότητας στη συζευκτική συνθήκη και υπάρχει σύνθετο ευρετήριο (ή δομή κατακερματισμού) στον συνδυασμό των πεδίων. σ Είδος=7 AND Πόλη= Άργος (ΠΡΜ) Αν υπάρχει σύνθετο ευρετήριο στο Είδος και Πόλη, το σύνθετο ευρετήριο θα δώσει άμεσα τις πλειάδες που πληρούν και τις δύο συνθήκες 6/16/2009 Μ.Χατζόπουλος 17

Συζευκτική επιλογή με τομή των δεικτών εγγραφών Αν υπάρχουν δευτερεύοντα ευρετήρια σε όλα (ή σε μερικά) πεδία που ενέχονται σε συνθήκες σύγκρισης ισότητας της συζευκτικής συνθήκης κι αν τα ευρετήρια περιλαμβάνουν δείκτες εγγραφών (αντί δείκτες μπλοκ) τότε κάθε ευρετήριο μπορεί να χρησιμοποιηθεί για ανάκτηση ενός συνόλου δεικτών εγγραφών που ικανοποιούν τη μεμονωμένη απλή συνθήκη. H τομή αυτών των συνόλων δεικτών δίνει τους δείκτες εγγραφών που ικανοποιούν τη συζευκτική συνθήκη. Oι δείκτες της τομής χρησιμοποιούνται στη συνέχεια για την άμεση ανάκτηση αυτών των εγγραφών. Aν μερικές μόνον από τις συνθήκες έχουν δευτερεύοντα ευρετήρια, κάθε ανακατωμένη εγγραφή ελέγχεται για να διαπιστωθεί αν ικανοποιεί και τις υπόλοιπες συνθήκες σ Χρώμα= Μαύρο AND Βάρος=10 (ΠΡ) Αν υπάρχει ευρετήριο και στο χρώμα και στο βάρος μπορούν να βρεθούν οι δυο λίστες μπλοκ που ικανοποιούν τις συνθήκες και οι ζητούμενες είναι η τομή τους. 6/16/2009 Μ.Χατζόπουλος 18

Η ORACLE χρησιμοποιεί διάφορες τεχνικές για συζευκτικές συνθήκες. Μια είναι αυτή που εφαρμόζει AND σε bitmaps. Μια άλλη χρησιμοποιεί συνένωση με κατακερματισμό (θα την εξετάσουμε παρακάτω)στις δυο λίστες. Ο SQL Server υλοποιεί συνένωση ευρετηρίων. 6/16/2009 Μ.Χατζόπουλος 19

Διαζευκτική Συνθήκη Μια διαζευκτική συνθήκη (όπου οι απλές συνθήκες συνδέονται με το λογικό τελεστή OR) είναι πολύ πιο δύσκολη σε ό,τι αφορά την επεξεργασία της και τη βελτιστοποίηση. Μπορούμε να κάνουμε εξαντλητική σάρωση της σχέσης. Ή μπορεί να χρησιμοποιήσουμε διάφορα ευρετήρια. Συγκεκριμένα αν υπάρχουν ευρετήρια για γνωρίσματα της σύζευξης μπορούμε να τα χρησιμοποιήσουμε για περιορίσουμε την αναζήτηση σ (Χρώμα= Άσπρο OR Πρ_Ονομα= DVD ) AND Βάρος=25 (ΠΡ) 6/16/2009 Μ.Χατζόπουλος 20

Αν κάθε όρος της διάζευξης έχει ευρετήριο μπορούμε να αποφύγουμε την σάρωση της σχέσης. Χρησιμοποιούμε το ευρετήριο κάθε συνθήκης. Βρίσκουμε έτσι την λίστα των διευθύνσεων που ικανοποιούν κάθε συνθήκη και στη συνέχεια βρίσκουμε την ένωση τους. Ο SQL Server τέτοιες ενώσεις καθώς και bitmaps με διαζευκτικές συνθήκες. 6/16/2009 Μ.Χατζόπουλος 21

ORACLE Μετατροπή της ερώτησης σε ένωση ερωτήσεων χωρίς OR. Αν οι συνθήκες της διάζευξης περιέχουν το ίδιο γνώρισμα χρησιμοποίηση της δομής του ευρετηρίου. Χρήση bitmaps με διαζευκτικές συνθήκες Η Sybase χρησιμοποιεί ενώσεις λιστών 6/16/2009 Μ.Χατζόπουλος 22