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

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

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

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

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

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

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

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

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

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

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

Επεξεργασία Ερωτήσεων: Επανάληψη και Ασκήσεις

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

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

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

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

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

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

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

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

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

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

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

Ευρετήρια. Το ευρετήριο αρχείου είναι ένα διατεταγµένο αρχείο µε σταθερού µήκους εγγραφές

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

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

Ευρετήρια. Το ευρετήριο αρχείου είναι ένα διατεταγµένο αρχείο µε σταθερού µήκους εγγραφές

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

Βάσεις εδοµένων Ευαγγελία Πιτουρά 2

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δεντρικά Ευρετήρια. Δέντρα Αναζήτησης

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

Οργάνωση Αρχείων. Βάσεις Δεδομένων : Οργάνωση Αρχείων 1. Blobs

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

Άσκηση 1 (15 μονάδες) (Επεκτατός Κατακερματισμός)

Τα δεδομένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο

Οργάνωση Αρχείων. Βάσεις Δεδομένων : Οργάνωση Αρχείων 1. Blobs

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

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

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

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

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

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

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

Βελτιστοποίηση ερωτημάτων Βάσεις Δεδομένων Διδάσκων: Μαρία Χαλκίδη

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

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

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

εντρικά Ευρετήρια έντρα Αναζήτησης

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

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

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

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

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

Κατακερµατισµός. Οργάνωση Αρχείων (σύνοψη) Οργάνωση αρχείων: πως είναι τοποθετημένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

Σχεσιακό Μοντέλο. Εισαγωγή. Βάσεις εδοµένων : Σχεσιακό Μοντέλο 1

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

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

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

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

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

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

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

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

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

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

Αποθήκευση εδομένων. Μαγνητικοί ίσκοι. Μαγνητικές ταινίες για. Εισαγωγή

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

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

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

Πανεπιστήμιο Πειραιώς, Τμήμα Πληροφορικής

Εισαγωγή. Διαλέξεις στο μάθημα: Μεταφραστές Γιώργος Μανής

Αποθήκευση Δεδοµένων

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

Βάσεις δεδομένων. (10 ο μάθημα) Ηρακλής Βαρλάμης

Αποθήκευση εδοµένων. Μαγνητικοί ίσκοι. Μαγνητικές ταινίες για. Εισαγωγή

Αποθήκευση Δεδοµένων

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Εξωτερική Αναζήτηση και Β-δέντρα Κεφάλαιο 16. Ε. Μαρκάκης Επίκουρος Καθηγητής

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

Αποθήκευση εδομένων. Μαγνητικές ταινίες για. Εισαγωγή. Μέχρι σήμερα, είδαμε το σχεδιασμό και υλοποίηση μιας βάσης δεδομένων χρησιμοποιώντας ένα Σ Β

ΗΥ460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Χειμερινό Εξάμηνο 2018 Project

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

Οργάνωση Αρχείων. Διάγραμμα Σχεσιακού σχήματος. Ευρετήρια. Ταξινομημένα ευρετήρια B + δένδρα Ευρετήρια κατακερματισμού

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

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Δεδομένων. Βασίλειος Βεσκούκης Ορισμός Βάσης Δεδομένων Δομή Περιορισμοί

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

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

Transcript:

Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΣΔΒΔ Σύνολο από προγράµµατα για τη διαχείριση της ΒΔ Αρχεία ευρετηρίου Κατάλογος ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Αρχεία δεδοµένων συστήµατος Σύστηµα Βάσεων Δεδοµένων (ΣΒΔ) 2 Επεξεργασία Ερωτήσεων 1

Εισαγωγή ΣΔΒΔ Μηχανή Εκτέλεσης Ερωτήσεων Επεξεργασία Δοσοληψιών Χειριστής Κλειδιών Μέθοδοι Προσπέλασης Αρχείων Διαχειριστής Ενδιάµεσης Μνήµης (buffer) Διαχειριστής Δίσκου Ανάκαµψη από Σφάλµατα ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ 3 Επεξεργασία Ερωτήσεων Θα δούµε την «πορεία» µιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσµα 4 Επεξεργασία Ερωτήσεων 2

Επεξεργασία Ερωτήσεων Ερώτηση SQL Ερώτηση Συντακτική Ανάλυση & Μετάφραση Έκφραση της Σχεσιακής Άλγεβρας Βελτιστοποίηση Σχέδιο Εκτέλεσης Μηχανή Υπολογισµού Στατιστικά Στοιχεία εδοµένα Αποτέλεσµα 5 Επεξεργασία Ερωτήσεων Τα βασικά βήµατα στην επεξεργασία µιας ερώτησης είναι 1. Συντακτική Ανάλυση & Μετάφραση 2. Βελτιστοποίηση 3. Υπολογισµός 6 Επεξεργασία Ερωτήσεων 3

Συντακτική Ανάλυση & Μετάφραση 1. Συντακτική Ανάλυση (Parsing) & Μετάφραση Η SQL ερώτηση µεταφράζεται σε µια εσωτερική µορφή αφού γίνει ο απαραίτητος συντακτικός και σηµασιολογικός έλεγχος (π.χ., τα ονόµατα που αναφέρονται είναι ονόµατα σχέσεων που υπάρχουν) Αντικατάσταση των όψεων από τον ορισµό τους Σε ποια εσωτερική µορφή; Έκφραση της σχεσιακής άλγεβρας select A 1, A 2,, A n from R 1, R 2,, R m where P π A1, A2,, An (σ P (R 1 x R 2 x x R m )) 7 2. Βελτιστοποίηση Βελτιστοποίηση Μια SQL ερώτηση µπορεί να µεταφραστεί σε διαφορετικές (ισοδύναµες) εκφράσεις της σχεσιακής άλγεβρας select balance from account where balance < 25000 π balance (σ balance < 2500 (account)) σ balance < 2500 (π balance (account)) Με ποιο κριτήριο γίνεται η επιλογή της έκφρασης; το πιο «δύσκολο» βήµα 8 Επεξεργασία Ερωτήσεων 4

Βελτιστοποίηση Κάθε πράξη της σχεσιακής άλγεβρας µπορεί να υλοποιηθεί µε διαφορετικούς αλγορίθµους: π.χ., για την υλοποίηση της επιλογής µπορεί είτε να σαρώσουµε (scan) όλο το αρχείο ελέγχοντας κάθε εγγραφή αν ικανοποιεί τη συνθήκη είτε αν υπάρχει π.χ., ένα Β + ευρετήριο στο γνώρισµα balance να χρησιµοποιήσουµε το ευρετήριο Άρα δεν αρκεί ο προσδιορισµός της πράξης - πρέπει να προσδιορίζεται και ο αλγόριθµος που θα χρησιµοποιηθεί για την υλοποίησή της 9 Βελτιστοποίηση βασικές (primitive) πράξεις: πράξη + αλγόριθµος Σχέδιο εκτέλεσης (execution plan): µια ακολουθία από βασικές πράξεις π balance σ balance < 2500, χρησιµοποίησε το ευρετήριο 1 account 10 Επεξεργασία Ερωτήσεων 5

Βελτιστοποίηση select A 1, A 2,, A n from R 1, R 2,, R m where P x Μετάφραση π Α1, Α2,... An σ P x π A1, A2,, An (σ P (R 1 x R 2 x x R m )) Πλάνο εκτέλεσης (ποιες πράξεις και µε ποιον αλγόριθµο) Φύλλα: σχέσεις Εσωτερικοί κόµβοι: βασικές πράξεις της σχεσιακής άλγεβρας x Βελτιστοποίηση του πλάνου R 1 R 2 R 3 R m 11 Βελτιστοποίηση Τα διαφορετικά σχέδια εκτέλεσης έχουν και διαφορικό κόστος Βελτιστοποίηση: η διαδικασία επιλογής του σχεδίου εκτέλεσης που έχει το µικρότερο κόστος Εκτίµηση του κόστους (συνήθως χρήση στατιστικών στοιχείων) 12 Επεξεργασία Ερωτήσεων 6

Μερικοί ευριστικοί κανόνες Βελτιστοποίηση Ερωτήσεων Γενική ιδέα: εκτέλεση πρώτα των πράξεων µε µικρή επιλεκτικότητα ώστε να περιοριστεί το µέγεθος των ενδιάµεσων αποτελεσµάτων 1. Διάσπαση των πράξεων επιλογής µε συζευκτικές συνθήκες σε ακολουθίες πράξεων επιλογής 2. Μετατοπίζουµε την πράξη επιλογής όσο πιο κάτω επιτρέπεται από τα γνωρίσµατα που περιλαµβάνονται στη συνθήκη 3. Επαναδιευθέτηση των φύλλων ώστε να εκτελούνται πρώτα οι σχέσεις που έχουν τις πιο περιοριστικές πράξεις επιλογής 13 Βελτιστοποίηση Ερωτήσεων 4. Συνδυασµός µιας πράξης καρτεσιανού γινοµένου µε µια πράξη επιλογής που ακολουθεί 5. Διάσπαση και µετακίνηση των λιστών προβολής όσο πιο κάτω γίνεται στο δέντρο 6. Εντοπισµός υποδέντρων µε οµάδες πράξεων που µπορεί να εκτελεστούν µε κοινό αλγόριθµο 14 Επεξεργασία Ερωτήσεων 7

Εκτέλεση 3. Εκτέλεση Μηχανή εκτέλεσης που εκτελεί τις βασικές πράξεις 15 Εκτέλεση Υπάρχουν υλοποιηµένοι µια σειρά από αλγόριθµοι για κάθε βασική πράξη (π.χ., που χρησιµοποιούν ή όχι ευρετήρια κλπ) Γενικά, το ΣΔΒΔ µε βάση κάποια στατιστικά στοιχεία κάνει µια εκτίµηση του κόστους και επιλέγει τον αλγόριθµο για κάθε πράξη µε τον µικρότερο (µε βάση την εκτίµηση) κόστος Αποθηκεύονται διάφορα στατιστικά στοιχεία, τα οποία χρησιµοποιούνται για την αποτίµηση του κόστους 16 Επεξεργασία Ερωτήσεων 8

Αλγόριθµοι Εκτέλεσης Βασικών Πράξεων Για να επιλέξουµε ποιόν αλγόριθµο θα χρησιµοποιήσουµε, διατηρούµε στατιστικά στοιχεία Για ένα αρχείο δεδοµένων µιας σχέσης R: n R : αριθµός πλειάδων της σχέσης R b R : αριθµός blocks της σχέσης R s R : µέγεθος σε bytes κάθε πλειάδας της σχέσης R f R : παράγοντας οµαδοποίησης (αριθµός εγγραφών ανά block) αν µη εκτεινόµενη, f R = B / s R και b R = n R / f R Ενηµέρωση στατιστικών στοιχείων; Βάσεις εδοµένων 2010-2011 17 Αλγόριθµοι Εκτέλεσης Βασικών Πράξεων Άλλα στατιστικά στοιχεία; V(A, R): αριθµός διαφορετικών τιµών που παίρνει το γνώρισµα Α π Α (R) -- αν το Α κλειδί; SC(A, R): µέσος αριθµός πλειάδων που ικανοποιεί µια συνθήκη (δεδοµένου ότι υπάρχει µια τουλάχιστον που την ικανοποιεί) 1 αν κλειδί, αν οµοιόµορφη; 18 Επεξεργασία Ερωτήσεων 9

Αλγόριθµοι Εκτέλεσης Βασικών Πράξεων Στατιστικά στοιχεία επίσης για το αρχείο ευρετηρίου (αν υπάρχει) f i : παράγοντας διακλάδωσης, πολυεπίπεδο f 0, Β + δέντρο ~ τάξη H i : αριθµός επιπέδων LΒ i : αριθµός block φύλλων Με βάση τα στατιστικά επιλέγεται ο αλγόριθµος µε το µικρότερο κόστος I/O Κόστος (Αριθµό blocks που µεταφέρονται) 19 Επεξεργασία Ερωτήσεων Αλγόριθµους εκτέλεσης βασικών πράξεων Επιλογή Διαφορετικοί αλγόριθµοι ανάλογα µε το αν το αρχείο είναι ή όχι διατεταγµένο, αν υπάρχει ή όχι ευρετήριο και από το είδος του ευρετηρίου 20 Επεξεργασία Ερωτήσεων 10

Πιθανοί αλγόριθµοι εκτέλεσης για την επιλογή: Ε1: Σειριακή αναζήτηση Επιλογή Ε2: Δυαδική αναζήτηση (αν το αρχείο είναι ταξινοµηµένο) Ε3: Χρήση πρωτεύοντος ευρετηρίου/κατακερµατισµού (αν υπάρχει) Ε4: Χρήση δευτερεύοντος ευρετηρίου/κατακερµατισµού (αν υπάρχει) Αν υπάρχει κάποιο ευρετήριο, λέµε ότι έχουµε µονοπάτι προσπέλασης (access path) 21 Επιλογή (σ) Επιλεκτικότητα επιλογής: το πλήθος των εγγραφών (πλειάδων) που επιλέγονται (δηλ. ικανοποιούν την συνθήκη) το πλήθος των εγγραφών (πλειάδων) του αρχείου (σχέσης) Έστω s i = σ Θi (R) επιλεκτικότητα: s i / n R Αν Θi συνθήκη ισότητας σε ένα γνώρισµα υποψήφιο κλειδί s i = 1 / n R Αν Θi συνθήκη ισότητας σε ένα γνώρισµα, οµοιόµορφη κατανοµή, k διακριτές τιµές, s i = k / n R 22 Επεξεργασία Ερωτήσεων 11

Επιλογή: Συνθήκη Ισότητας Επιλογή - συνθήκη ισότητας σ Α = α (R) Ε1 Σειριακή αναζήτηση Διάβασµα (scan) όλου του αρχείου b R : αριθµός blocks της σχέσης R b R b R /2 (µέσος όρος) αν το Α υποψήφιο κλειδί (οπότε το αποτέλεσµα έχει µόνο µία πλειάδα, σταµατάµε την αναζήτηση µόλις τη βρούµε) Μπορεί να χρησιµοποιηθεί σε οποιοδήποτε αρχείο 23 Επιλογή: Συνθήκη Ισότητας Ε2 Δυαδική αναζήτηση b R : αριθµός blocks της σχέσης R SC(A, R): µέσος αριθµός πλειάδων που ικανοποιεί µια συνθήκη f R : παράγοντας οµαδοποίησης Μπορεί να χρησιµοποιηθεί µόνο αν το αρχείο είναι διατεταγµένο µε βάση το Α (δηλαδή, το γνώρισµα της επιλογής) + log ( b R ) SC(A, r)/f R - 1 Εύρεση της πρώτης Εύρεση των υπόλοιπων Αν το Α υποψήφιο κλειδί; 24 Επεξεργασία Ερωτήσεων 12

Ε3 Χρήση πρωτεύοντος δεντρικού ευρετηρίου Πρωτεύον ευρετήριο σηµαίνει ταξινοµηµένο αρχείο Επιλογή: Συνθήκη Ισότητας b R : αριθµός blocks της σχέσης R SC(A, R): µέσος αριθµός πλειάδων που ικανοποιεί µια συνθήκη f R : παράγοντας οµαδοποίησης HT i : αριθµός επιπέδων Μπορεί να χρησιµοποιηθεί µόνο αν υπάρχει τέτοιο ευρετήριο στο Α HT i + 1 HT i + SC(A, R)/f R Εύρεση και µεταφορά της πρώτης Αν το Α δεν είναι υποψήφιο κλειδί -- ευρετήριο συστάδων Εύρεση και των υπόλοιπων ΣΗΜΕΙΩΣΗ: Πρωτεύον ευρετήριο στο Α, σηµαίνει ότι οι εγγραφές του αρχείου δεδοµένων είναι ταξινοµηµένες (διατεταγµένες) ως προς Α άρα οι υπόλοιπες εγγραφές µε την ίδια τιµή (αν υπάρχουν) βρίσκονται σε γειτονικά blocks του αρχείου δεδοµένων 25 Επιλογή: Συνθήκη Ισότητας Ε4 Χρήση δευτερεύοντος Δεντρικού ευρετηρίου Μπορεί να χρησιµοποιηθεί µόνο αν υπάρχει τέτοιο ευρετήριο στο Α Αν το Α είναι υποψήφιο κλειδί HT i + 1 b R : αριθµός blocks της σχέσης R SC(A, R): µέσος αριθµός πλειάδων που ικανοποιεί µια συνθήκη f R : παράγοντας οµαδοποίησης HT i : αριθµός επιπέδων Εύρεση και µεταφορά της πρώτης Αν το Α δεν είναι υποψήφιο κλειδί + κόστος για την εύρεση των υπολοίπων HT i + ενδιάµεσο επίπεδο +SC(A, R) Εύρεση και των υπόλοιπων Στη χειρότερη περίπτωση κάθε εγγραφή που ικανοπoιεί τη συνθήκη σε διαφορετικό block 26 Επεξεργασία Ερωτήσεων 13

Επιλογή: Συνθήκη µε Σύγκριση Επιλογή - συνθήκη µε σύγκριση σ Α u (R) ή σ Α u (R) 27 Επιλογή: Συνθήκη µε Σύγκριση Επιλογή - συνθήκη µε σύγκριση σ Α u (R) Έστω αύξουσα διάταξη Από το 1 ο block του αρχείου έως την πρώτη εγγραφή µε A > u Κόστος? 28 Επεξεργασία Ερωτήσεων 14

Επιλογή: Συνθήκη µε Σύγκριση Επιλογή - συνθήκη µε σύγκριση σ Α u (R) Έστω αρχείου σωρού (δεν υπάρχει διάταξη) και Β+ δέντρο Εύρεση στο Β+ δέντρο της τιµής u Χρήση εγγραφών στο φύλλο για τις υπόλοιπες τιµές Κόστος? 29 Τέλος 30 Επεξεργασία Ερωτήσεων 15