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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 Ευρετήρια Ένα ευρετήριο (index) είναι µια βοηθητική δοµή αρχείου που κάνει πιο αποδοτική την αναζήτηση µιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισµα του αρχείου που καλείται πεδίο ευρετηριοποίησης (indexing field) Ευρετήρια γνώρισµα Ευρετήριο γνώρισµα υπόλοιπα γνωρίσµατα Αρχείο εδοµένων Αρχείο Ευρετηρίου Εγγραφή στο ευρετήριο: Τιµή Πεδίου Ευρετηριοποίησης είκτης στο block της εγγραφής 1 2 Ευρετήρια Ευρετήρια Συχνά αποκαλείται access path (µονοπάτι πρόσβασης) στο πεδίο ευρετηριοποίησης (indexing field) Είδη ευρετηρίου Πρωτεύον ευρετήριο (primary index): ορισµένο στο κλειδί διάταξης του αρχείου (δηλαδή, πάνω σε αρχείο που είναι διατεταγµένο στο κλειδί) Ευρετήριο συστάδων (clustering index): ορισµένο στο πεδίο διάταξης το οποίο όµως δεν είναι κλειδί Πυκνό ευρετήριο: µια καταχώρηση για κάθε εγγραφή του αρχείου Μη πυκνό ευρετήριο ευτερεύον ευρετήριο (secondary index): ορισµένο σε πεδία διαφορετικά του πεδιού διάταξης Πόσα ευρετήρια σε ένα αρχείο δεδοµένων µπορεί να έχουµε; 3 4 Πρωτεύον Ευρετήριο Πρωτεύον Ευρετήριο Πρωτεύον ευρετήριο (primary index): ορισµένο στο κλειδί διάταξης του αρχείου Το ευρετήριο αρχείου είναι ένα διατεταγµένο αρχείο µε σταθερού µήκους εγγραφές Για κάθε block του αρχείου (µη πυκνό ευρετήριο) η εγγραφή i του ευρετηρίου είναι της µορφής (<Κ(i), P(i)>) όπου: Κ(i): η τιµή του πρωτεύοντος κλειδιού της πρώτης εγγραφής του block (άγκυρα του block) P(i): δείκτης προς το block Το πρωτεύον ευρετήριο είναι ένα µη πυκνό ευρετήριο Το µέγεθος του αρχείου ευρετηρίου είναι µικρότερο από αυτό του αρχείου δεδοµένων. 5 6

2 Πρωτεύον Ευρετήριο Πρωτεύον Ευρετήριο Αρχείο Ευρετηρίου Αρχείο εδοµένων Αναζήτηση υαδική αναζήτηση στο πρωτεύον ευρετήριο Ανάγνωση του block από το αρχείο δεδοµένων Ποιο είναι το µέγεθος του ευρετηρίου (πόσα blocks); 7 8 Πρωτεύον Ευρετήριο Παράδειγµα (υπολογισµός µεγέθους αρχείου ευρετηρίου) Έστω διατεταγµένο αρχείο µε r A = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R A = 100 bytes, όπου το πεδίο κλειδιού διάταξης έχει µέγεθος V A = 9 bytes, µη εκτεινόµενη καταχώρηση. Κατασκευάζουµε πρωτεύον ευρετήριο, µέγεθος δείκτη block P = 6 bytes Μέγεθος αρχείου δεδοµένων: blocks Μέγεθος αρχείου ευρετηρίου: 45 blocks Πρωτεύον Ευρετήριο Παράδειγµα (υπολογισµός κόστους αναζήτησης) Έστω διατεταγµένο αρχείο µε r A = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R A = 100 bytes, όπου το πεδίο κλειδιού διάταξης έχει µέγεθος V A = 9 bytes, µη εκτεινόµενη καταχώρηση. Κατασκευάζουµε πρωτεύον ευρετήριο, µέγεθος δείκτη block P = 6 bytes Μέγεθος αρχείου δεδοµένων: blocks Μέγεθος αρχείου ευρετηρίου: 45 blocks Αναζήτηση χωρίς ευρετήριο: log = 12 blocks Αναζήτηση µε ευρετήριο: log = 7 blocks 9 10 Πρωτεύον Ευρετήριο Εισαγωγή εγγραφής αλλαγές και στο πρωτεύον ευρετήριο µη διατεταγµένο αρχείο υπερχείλισης συνδεδεµένη λίστα εγγραφών υπερχείλισης Ένα ευρετήριο (index) είναι µια βοηθητική δοµή αρχείου που κάνει πιο αποδοτική την αναζήτηση µιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισµα του αρχείου που καλείται πεδίο ευρετηριοποίησης (indexing field) γνώρισµα Ευρετήρια (επανάληψη) ιαγραφή εγγραφής αλλαγές και στο πρωτεύον ευρετήριο Ευρετήριο Αρχείο Ευρετηρίου γνώρισµα υπόλοιπα γνωρίσµατα Αρχείο εδοµένων χρήση σηµαδιών διαγραφής Εγγραφή στο ευρετήριο: Τιµή Πεδίου Ευρετηριοποίησης είκτης στο block της εγγραφής 11 12

3 Ευρετήρια (επανάληψη) Πρωτεύον Ευρετήριο (επανάληψη) ιαφορετικού τύπου εγγραφές ανάλογα µε το πεδίο ευρετηριοποίησης: (α) κλειδί ή όχι, (β) πεδίο διάταξης ή όχι Πυκνό ευρετήριο: µια καταχώρηση για κάθε εγγραφή του αρχείου Μη πυκνό ευρετήριο Πρωτεύον ευρετήριο (primary index): ορισµένο στο κλειδί διάταξης του αρχείου Για κάθε block του αρχείου (µη πυκνό ευρετήριο) η εγγραφή i του ευρετηρίου είναι της µορφής (<Κ(i), P(i)>) όπου: Κ(i): η τιµή του πρωτεύοντος κλειδιού της πρώτης εγγραφής του block (άγκυρα του block) P(i): δείκτης προς το block Ευρετήρια (επανάληψη) Ευρετήριο Συστάδων Access paths (µονοπάτια προσπέλασης) Το αρχείο ευρετηρίου καταλαµβάνει µικρότερο χώρο από το ίδιο το αρχείο δεδοµένων (οι καταχωρήσεις είναι µικρότερες και λιγότερες) Κάνοντας δυαδική αναζήτηση στο ευρετήριο (γιατί το ευρετήριο είναι διατεταγµένο αρχείο!) βρίσκουµε τον δείκτη στο block όπου αποθηκεύεται η εγγραφή που θέλουµε Ευρετήριο συστάδων (clustering index): ορισµένο στο πεδίο διάταξης το οποίο όµως δεν είναι κλειδί Υπάρχει µια εγγραφή για κάθε διακεκριµένη τιµή του πεδίου διάταξης (συστάδας) του αρχείου που περιέχει: την τιµή αυτή ένα δείκτη προς το πρώτο block του αρχείου δεδοµένων που περιέχει µια εγγραφή µε την τιµή αυτή στο πεδίο συστάδας Ευρετήριο Συστάδων Ευρετήριο Συστάδων Παράδειγµα (υπολογισµός µεγέθους ευρετηρίου) Αναζήτηση υαδική αναζήτηση στο ευρετήριο Ανάγνωση blocks από το αρχείο δεδοµένων Έστω διατεταγµένο αρχείο µε r A = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R A = 100 bytes, µη εκτεινόµενη καταχώρηση, όπου το πεδίο διάταξης έχει µέγεθος V A = 9 bytes και υπάρχουν 1000 διαφορετικές τιµές και οι εγγραφές είναι οµοιόµορφα κατανεµηµένες ως προς τις τιµές αυτές. Υποθέτουµε ότι χρησιµοποιούνται άγκυρες block, κάθε νέα τιµή του πεδίου διάταξης αρχίζει στην αρχή ενός νέου block. Κατασκευάζουµε ευρετήριο συστάδων, µέγεθος δείκτη block P = 6 bytes Μέγεθος αρχείου δεδοµένων: blocks Μέγεθος ευρετηρίου συστάδων: 15 blocks 17 18

4 Παράδειγµα (υπολογισµός κόστους αναζήτησης) Ευρετήριο Συστάδων (στοιχεία όπως πριν) Έστω διατεταγµένο αρχείο µε r Α = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R Α = 100 bytes, µη εκτεινόµενη καταχώρηση, όπου το πεδίο διάταξης έχει µέγεθος V Α = 9 bytes και υπάρχουν 1000 διαφορετικές τιµές και οι εγγραφές είναι οµοιόµορφα κατανεµηµένες ως προς τις τιµές αυτές. Υποθέτουµε ότι χρησιµοποιούνται άγκυρες block, κάθε νέα τιµή του πεδίου διάταξης αρχίζει στην αρχή ενός νέου block. Κατασκευάζουµε ευρετήριο συστάδων, µέγεθος δείκτη block P = 6 bytes ευτερεύον ευρετήριο (secondary index): ορισµένο σε πεδίο διαφορετικό του κλειδιού διάταξης Μέγεθος αρχείου δεδοµένων: blocks Μέγεθος αρχείου ευρετηρίου: 15 blocks Αναζήτηση χωρίς ευρετήριο: log ταιριάσµατα (= 3) 15 blocks Αναζήτηση µε ευρετήριο: log = 7 blocks Περίπτωση 1: Το πεδίο ευρετηριοποίησης είναι κλειδί (καλείται και δευτερεύον κλειδί) Υπάρχει µια εγγραφή για κάθε εγγραφή του αρχείου που περιέχει: την τιµή του κλειδιού για αυτήν την εγγραφή ένα δείκτη προς το block (ή την εγγραφή) του αρχείου δεδοµένων που περιέχει την εγγραφή µε τηντιµή αυτή Παράδειγµα (υπολογισµός µεγέθους ευρετηρίου) Έστω αρχείο µε r Α = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R Α = 100 bytes, µη εκτεινόµενη καταχώρηση, όπου το πεδίο κλειδιού έχει µέγεθος V Α = 9 bytes αλλά δεν είναι πεδίο διάταξης. Κατασκευάζουµε δευτερεύον ευρετήριο, µέγεθος δείκτη block P = 6 bytes Μέγεθος αρχείου δεδοµένων: blocks Μέγεθος αρχείου ευρετηρίου: 442 blocks 45 για πρωτεύον Αναζήτηση υαδική αναζήτηση στο δευτερεύον ευρετήριο Ανάγνωση του block από το αρχείο δεδοµένων Παράδειγµα (υπολογισµός κόστους αναζήτησης) Έστω αρχείο µε r Α = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R Α = 100 bytes, µη εκτεινόµενη καταχώρηση, όπου το πεδίο κλειδιού έχει µέγεθος V Α = 9 bytes αλλά δεν είναι πεδίο διάταξης. Κατασκευάζουµε δευτερεύον ευρετήριο, µέγεθος δείκτη block P = 6 bytes Μέγεθος αρχείου δεδοµένων: blocks Μέγεθος αρχείου ευρετηρίου: 442 blocks Αναζήτηση χωρίς ευρετήριο (σειριακή αναζήτηση): 3.000/2 = 1500 blocks Αναζήτηση µε ευρετήριο: log = 10 blocks Για πρωτεύον ήταν 45 και 7 blocks αντίστοιχα 23 24

5 Περίπτωση 2: Το πεδίο ευρετηριοποίησης δεν είναι κλειδί 1. Πυκνό ευρετήριο: µία καταχώρηση για κάθε εγγραφή 2. Μεταβλητού µήκους εγγραφές µε ένα επαναλαµβανόµενο πεδίο για το δείκτη 3. Μία εγγραφή ευρετηρίου για κάθε τιµή του πεδίου ευρετηριοποίησης + ένα ενδιάµεσο επίπεδο για την διαχείριση των πολλαπλών δεικτών Παράδειγµα (υπολογισµός µεγέθους ευρετηρίου) Συστάδων Έστω µη διατεταγµένο αρχείο (αρχείο σωρού) µε r A = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R A = 100 bytes, µη εκτεινόµενη καταχώρηση, όπου το πεδίο ευρετηριοποίησης (δηλαδή, το πεδίο στο οποίο θα κατασκευάσουµε το ευρετήριο) έχει µέγεθος V A = 9 bytes. Υπάρχουν 1000 διαφορετικές τιµές και οι εγγραφές είναι οµοιόµορφα κατανεµηµένες ως προς τις τιµές αυτές. Κατασκευάζουµε ευρετήριο συστάδων χρησιµοποιώντας την επιλογή (3), µέγεθος δείκτη block P = 6 bytes Ευρετήριο bfr ΕΤ = 68, b ET = 15 Ενδιάµεσο επίπεδο bfr Ε = Ποια είναι η οργάνωση του; Αναζήτηση υαδική αναζήτηση στο δευτερεύον ευρετήριο Ανάγνωση του block (ή των blocks) από το ενδιάµεσο επίπεδο Ανάγνωση των blocks (συνήθως τόσα όσες οι εγγραφές που ταιριάζουν) από το αρχείο δεδοµένων Εισαγωγή Απλή αν δεν αφορά εισαγωγή νέας τιµής στο ευρετήριο Εύκολη η λογική διάταξη των εγγραφών µε βάση το πεδίο ευρετηριοποίησης Ανακτήσεις µε σύνθετες συνθήκες Ευρετήρια (επανάληψη) Τα ευρετήρια (ενός επιπέδου) χωρίζονται σε: Το ευρετήριο αρχείου είναι ένα διατεταγµένο αρχείο µε σταθερού µήκους εγγραφές Το δευτερεύον ευρετήριο είναι ένα πυκνό ευρετήριο Το µέγεθος του δευτερεύοντος ευρετηρίου είναι µικρότερο από του αρχείου δεδοµένων (αν και µεγαλύτερο από το πρωτεύον). Πρωτεύον Ευρετήριο: ορίζεται σε ένα αρχείο που είναι διατεταγµένο στο (κύριο) κλειδί. Περιλαµβάνει µια καταχώρηση για κάθε block. Η καταχώρηση έχει την τιµή του κλειδιού της πρώτης εγγραφής στο block. (συχνά ονοµάζεται, µη-πυκνό ευρετήριο --- sparse index ή non-dense index) Ευρετήριο Συστάδων (Clustering Index): ορίζεται σε ένα αρχείο που είναι διατεταγµένο σε γνώρισµα που δεν είναι κλειδί. Περιλαµβάνει µια καταχώρηση για κάθε ξεχωριστή τιµή του γνωρίσµατος. Η καταχώρηση δείχνει το πρώτο block που περιέχει εγγραφές µε αυτή την τιµή γνωρίσµατος 29 30

6 Ευρετήρια (επανάληψη) Ευρετήρια (επανάληψη) Είδη Ευρετηρίων (Secondary Index): ορίζεται σε ένα αρχείο που είναι µη διατεταγµένο στο γνώρισµα. Περιλαµβάνει µια καταχώρηση για κάθε εγγραφή (συχνά ονοµάζεται, πυκνό ευρετήριο - dense index) Πυκνό Ευρετήριο µια καταχώρηση για κάθε εγγραφή του δίσκου Μη Πυκνό Ευρετήριο Ευρετήριο συστάδων (clustered index) στο πεδίο διάταξης το οποίο όµως δεν είναι κλειδί - γενικότερα, όταν η διάταξη των καταχωρήσεων στο ευρετήριο ακολουθεί τη διάταξη των εγγραφών στο αρχείο Ευρετήριο χωρίς συστάδες (unclustered index) Πρωτεύον ευτερεύον (πλήρως αντεστραµµένο ευρετήριο) Ευρετήριο Πολλών Επιπέδων Ιδέα: Τα ευρετήρια είναι αρχεία - χτίζουµε ευρετήρια πάνω στα αρχεία ευρετηρίου Έστω ότι το αρχείο ευρετηρίου είναι το πρώτο ή βασικό επίπεδο Έστω ότι ο παράγοντας οµαδοποίησης είναι f 0 και ότι έχει r 1 blocks Το αρχείο είναι διατεταγµένο και το πεδίο διάταξης είναι και κλειδί (άρα πρωτεύον ευρετήριο!) Υπενθύµιση (παράγοντας οµαδοποίησης: αριθµός εγγραφών ανά block Παράγοντας οµαδοποίησης (blocking factor), όταν Β R bfr = (B / R), όπου Β µέγεθος block σε byte και R µέγεθος εγγραφής σε bytes Ευρετήριο Πολλών Επιπέδων Έστω ότι το αρχείο ευρετηρίου είναι το πρώτο ή βασικό επίπεδο Έστω ότι ο παράγοντας οµαδοποίησης είναι f 0 και ότι έχει r 1 blocks Το αρχείο είναι διατεταγµένο και το πεδίο διάταξης είναι και κλειδί ηµιουργούµε ένα πρωτεύον ευρετήριο για το ευρετήριο πρώτου επιπέδου - δεύτερο επίπεδο Παράγοντας οµαδοποίησης: f 0 Αριθµός block (r 1 /f 0 ) ηµιουργούµε ένα πρωτεύον ευρετήριο για το ευρετήριο δεύτερου επιπέδου - τρίτο επίπεδο Παράγοντας οµαδοποίησης: f 0 Αριθµός block (r 1 /(f 0 ) 2 ) Ευρετήριο Πολλών Επιπέδων Ευρετήριο Πολλών Επιπέδων Μέχρι πόσα επίπεδα: Μέχρι όλες οι εγγραφές του ευρετηρίου να χωρούν σε ένα block Έστω t κορυφαίο επίπεδο (top level) (r 1 /(f 0 ) t ) = 1 Το f 0 ονοµάζεται και παράγοντας διακλάδωσης του ευρετηρίου Παράδειγµα (υπολογισµός µεγέθους ευρετηρίου) Έστω αρχείο µε r A = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R A = 100 bytes, µη εκτεινόµενη καταχώρηση, όπου το πεδίο κλειδιού έχει µέγεθος V A = 9 bytes αλλά δεν είναι πεδίο διάταξης,. Κατασκευάζουµε δευτερεύον ευρετήριο, µέγεθος δείκτη block P= 6 bytes f 0 = (1024 / (9 + 6)) = 68 Μέγεθος αρχείου δεδοµένων: blocks Μέγεθος αρχείου ευρετηρίου πρώτου επιπέδου: 442 blocks Μέγεθος αρχείου ευρετηρίου δεύτερου επιπέδου: (442 / 68) = 7 blocks Μέγεθος αρχείου ευρετηρίου τρίτου επιπέδου: (7 / 68) = 1 block Άρα t =

7 Ευρετήριο Πολλών Επιπέδων Ευρετήριο Πολλών Επιπέδων Αναζήτηση p := διεύθυνση του block του κορυφαίου επιπέδου του ευρετηρίου t := αριθµός επιπέδων του ευρετηρίου for j = t to 1 step -1 do read block µε διεύθυνση p του ευρετηρίου στο επίπεδο j αναζήτηση στο block p της εγγραφής i µε τιµή Κ j (i) K < K j (i+1) read το block του αρχείου δεδοµένων µε διεύθυνση p Aναζήτηση στο block p της εγγραφής i µε τιµή Κ j (i) K < K j (i+1) Παράδειγµα (υπολογισµός κόστους αναζήτησης) Έστω αρχείο µε r A = εγγραφές, µέγεθος block B = 1024 bytes, σταθερού µεγέθους εγγραφές µεγέθους R A = 100 bytes, µη εκτεινόµενη καταχώρηση, όπου το πεδίο κλειδιού έχει µέγεθος V A = 9 bytes αλλά δεν είναι πεδίο διάταξης,. Κατασκευάζουµε δευτερεύον ευρετήριο, µέγεθος δείκτη block P = 6 bytes Άρα t = 3 Παράδειγµα t + 1 = 4 προσπελάσεις Για το δευτερεύον ήταν 10 και χωρίς ευρετήριο Ευρετήριο Πολλών Επιπέδων ενδρικά Ευρετήρια Εισαγωγή/διαγραφή τροποποιήσεις πολλαπλών ευρετηρίων Τα πολυεπίπεδα ευρετήρια µπορεί να θεωρηθούν ως δέντρα αναζήτησης υναµικό πολυεπίπεδο ευρετήριο: Β-δέντρα και Β+δέντρα Κάθε κόµβος (block) έχει f 0 δείκτες και f 0 τιµές κλειδιού Ευρετήρια (επανάληψη) Τα αρχεία ευρετηρίων είναι απλά αρχεία, άρα και σε αυτά µπορούν να οριστούν ευρετήρια έντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόµβος του περιέχει το πολύ p - 1 τιµές αναζήτησης και ρ δείκτες ως εξής Καταλήγουµε λοιπόν σε µια ιεραρχία δοµών ευρετηρίων (πρώτο επίπεδο, δεύτερο επίπεδο, κλπ.) P 1 K 1 P j K j P q-1 K q-1 P p δείκτης σε block του αρχείου δεδοµένων Κάθε επίπεδο του ευρετηρίου είναι ένα διατεταγµένο αρχείο, συνεπώς, εισαγωγές/διαγραφές εγγραφών απαιτούν επιπλέον δουλειά Ένα πολύ-επίπεδο ευρετήριο αποτελεί ένα έντρο Αναζήτησης X < K 1 Kj-1 < X < K j K p-1 < X Υποθέτουµε ότι οι τιµές αναζήτησης είναι µοναδικές Κ 1 < Κ 2 < Κ q -1 και για όλες τις τιµές X στα υποδέντρα ισχύει Κ j-1 < X < K j για 1 < j < q, X < K j για j =1, και Κ j -1 < Χ για i = q Συµβολισµός K i * 41 42

8 έντρα Αναζήτησης Για άµεση πρόσβαση σε εγγραφές αρχείου διατεταγµένου στο κλειδί Κάθε κόµβος του δέντρου είναι ένα block στο δίσκο. Ένα Β-δέντρο τάξεως (order) p ορίζεται ως εξής: Β-δέντρα 1. Κάθε εσωτερικός κόµβος είναι της µορφής <P 1, <K 1, Pr 1 >, P 2, <K 2, Pr 2 >, <K q-1, Pr q-1 >, P q >, q < p, όπου P i δείκτης δέντρου, K i τιµή αναζήτησης, Pr i δείκτης δεδοµένων P 1 K 1 Pr 1... K j-1 Pr j-1 P j P q-1 K q-1 Pr q-1 P q Ισοζυγισµένο: όλοι οι κόµβοι-φύλλα στο ίδιο επίπεδο Β-δέντρο: ένα δέντρο αναζήτησης που παραµένει ισοζυγισµένο και χωρίς «πολύ αδειανούς» κόµβους X < K 1 Kj-1 < X < K j K q-1 < X 2. Σε κάθε κόµβο Κ 1 < Κ 2 < Κ q Για όλες τις τιµές X στο υποδέντρο που δείχνει το P j ισχύει Κ j-1 < X < K j για 1 < j < q, X < K j για j =1, και Κ j -1 < Χ για i = q Β-δέντρα Β-δέντρα 4. Κάθε κόµβος έχει το πολύ p δείκτες δέντρου 5. Κάθε κόµβος εκτός της ρίζα και των φύλλων έχει τουλάχιστον (p/2) δείκτες δέντρου. Η ρίζα έχει τουλάχιστον 2 εκτός αν είναι ο µόνος κόµβος του δέντρου. 6. Ένας κόµβος µε q δείκτες δέντρου περιέχει q - 1 τιµές πεδίου αναζήτησης (και άρα και q - 1 δείκτες δεδοµένων) Υποθέσαµε ότι οι τιµές αναζήτησης είναι µοναδικές, αυτό συµβαίνει όταν το πεδίο ευρετηριοποίησης είναι κλειδί Τα Β-δέντρα τροποποιούνται αντίστοιχα (πως;) αν το πεδίο δεν είναι κλειδί 7. Όλα τα φύλλα βρίσκονται στο ίδιο επίπεδο. Τα φύλλα έχουν την ίδια δοµή εκτός του ότι οι δείκτες δέντρου είναι null Τάξη p ώστε κάθε κόµβος να χωρά σε ένα block Έστω Β µέγεθος block, V µέγεθος πεδίου αναζήτησης, Pr µέγεθος δείκτη δεδοµένων (εγγραφής) και P µέγεθος δείκτη δέντρου (block) p * P + (p - 1) * (Pr + V) B p * (P + Pr + V) B + V + Pr p (B + V + Pr) / (P + Pr+ V) Παράδειγµα, V = 9 bytes, B = 512 bytes, Pr = 7 bytes, P = 6 bytes, τότε p = 23 Β-δέντρα Β-δέντρα Υπολογισµός επιπέδων Έστω όπως πριν, p = 23. Έστω ότι κάθε κόµβος είναι γεµάτος κατά 69%. Πόσα επίπεδα χρειαζόµαστε για να ευρετηριοποιήσουµε τιµές; (p - 1)*0,69 = 22*0,69 = 15 κλειδιά και = 16 δείκτες ανά κόµβο Ρίζα 1 κόµβος 15 (22*0,69) καταχωρήσεις 16 δείκτες Επίπεδο 1: 16 κόµβοι 240 (16*15) καταχωρήσεις 256 δείκτες Επίπεδο 2: 256 κόµβοι (256*15) καταχωρήσεις δείκτες Επίπεδο 3: κόµβοι Σύνολο: (65.535) 47 48

9 Εισαγωγή τιµής Β-δέντρα Αρχικά ένας µόνο κόµβος (ρίζα) στο Επίπεδο 0 Όταν ο κόµβος ρίζα γεµίσει (p 1 τιµές κλειδιού), νέα εισαγωγή οδηγεί στην διάσπαση του κόµβου σε δύο κόµβους στο Επίπεδο 1: η µεσαία τιµή µένει στη ρίζα, οι υπόλοιπες µοιράζονται εξίσου σε δύο κόµβους του Επιπέδου 1 Όταν ένας κόµβος εκτός της ρίζας γεµίσει, νέα εισαγωγή οδηγεί σε διάσπαση του κόµβου σε δύο κόµβους στο ίδιο επίπεδο και µεταφορά της µεσαίας τιµής στον γονέα του κόµβου ΠΡΟΣΟΧΗ: η εισαγωγή της µεσαίας τιµής στο γονέα αν ο γονέας είναι γεµάτος µπορεί να οδηγήσει σε διάσπαση του γονέα. Η διάσπαση µπορεί να οδηγήσει ως τη ρίζα, οπότε δηµιουργείται και νέο επίπεδο. ιαγραφή τιµής Β-δέντρα Μια «προς διαγραφή» τιµή µπορεί να ανήκει σε εσωτερικό κόµβο Αν σβήσουµε το K i, το µικρότερο κλειδί του υποδέντρου P i+1 πρέπει να το αντικαταστήσει (δηλαδή το µικρότερο κλειδί του κόµβου στα δεξιά του κλειδιού που διαγράφεται) Ειδικά για τα φύλλα, αν λόγω διαγραφής κάποιος κόµβος παραµείνει γεµάτος λιγότερο από το µισό: Ενώνεται µε τους γειτονικούς του κόµβους αυτή η ένωση µπορεί να διαδοθεί ως τη ρίζα οπότε και οδηγεί σε µείωση των επιπέδων. Πειραµατικά: τυχαίες εισαγωγές και διαγραφές οδηγούν σε 69% πληρότητα ιαφορά από Β-δέντρο: Αποθηκεύουµε δείκτες δεδοµένων µόνο στα φύλλα ύο τύποι κόµβων: εσωτερικοί κόµβοι φύλλα Κάποιες τιµές του πεδίου αναζήτησης µπορεί να εµφανίζονται παραπάνω από µια φορά Ένα Β + -δέντρο τάξεως (order) p ορίζεται ως εξής: 1. Κάθε εσωτερικός κόµβος είναι της µορφής <P 1, K 1, P 2, K 2,, K q-1, P q-1, P q > q p, όπου P i δείκτης δέντρου, K i τιµή αναζήτησης P 1 K 1... K j-1 P j K j P q-1 K q-1 P q X < K 1 K j-1 X < K j K q-1 X 2. Σε κάθε εσωτερικό κόµβο Κ 1 < Κ 2 < Κ q Για όλες τις τιµές X στο υποδέντρο που δείχνει το P j ισχύει Κ X < K j για 1 < j < q, X < K j για j =1, και Κ j -1 Χ για i = q Κάθε εσωτερικός κόµβος έχει το πολύ p δείκτες δέντρου 5. Κάθε εσωτερικός κόµβος εκτός της ρίζα έχει τουλάχιστον (p/2). Η ρίζα έχει τουλάχιστον 2 εκτός αν είναι ο µόνος κόµβος του δέντρου. 6. Ένας κόµβος µε q δείκτες δέντρου περιέχει q - 1 τιµές πεδίου αναζήτησης 1. Κάθε κόµβος-φύλλο είναι της µορφής <<K 1, Pr 1 >, <K 2, Pr 2 >, <K q, Pr q >, P next >, q p leaf, όπου p leaf είναι η τάξη των κόµβων-φύλλων K i τιµή αναζήτησης, Pr i δείκτης δεδοµένων που δείχνει στο block (ή στην εγγραφή) µε τιµή στο πεδίο αναζήτησης K i (ή σε ένα block ενδιάµεσου επιπέδου αν το πεδίο αναζήτησης δεν είναι κλειδί), P next δείχνει στο επόµενο φύλλο και χρησιµοποιείται για τη γρήγορη ανάγνωση του αρχείου σε διάταξη K 1 Pr 1... K j Pr j K q Pr q P next 2. Σε κάθε κόµβο-φύλλο Κ 1 < Κ 2 < Κ q 53 54

10 3. Κάθε κόµβος-φύλλο έχει το πολύ p leaf τιµές 4. Κάθε κόµβος-φύλλο έχει τουλάχιστον (p leaf /2) τιµές. Η αναζήτηση ξεκινά από τη pίζα, και οι συγκρίσεις των κλειδιών µας οδηγούν στα φύλλα Αναζήτηση για τα 5*, 15*, όλες οι καταχωρήσεις >= 24*... ΡΙΖΑ Όλοι οι κόµβοι-φύλλα βρίσκονται στο ίδιο επίπεδο. 2* 3* 5* 7* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* Εισαγωγή / ιαγραφή µε κόστος log F N--- κρατούν το δέντρο σε ισορροπηµένη µορφή. (F = διακλάδωση, N = αριθµός των φύλλων) Ελάχιστη πληρότητα 50% (εκτός της ρίζας). Εξαιρετική δοµή ΚΑΙ για ερωτήσεις ισότητας ΚΑΙ για ερωτήσεις διαστήµατος (range queries). Το αρχείο δεδοµένων µπορεί να είναι ή όχι ταξινοµηµένο Καταχωρήσεις Ευρετηρίου (Άµεση Αναζήτηση) Καταχωρήσεις εδοµένων («Σύνολο ακολουθίας») Τάξη p ώστε κάθε εσωτερικός-κόµβος να χωρά σε ένα block Έστω Β µέγεθος block, V µέγεθος πεδίου αναζήτησης, Pr µέγεθος δείκτη δεδοµένων (εγγραφής) και P µέγεθος δείκτη δέντρου (block) p * P + (p - 1) * V B p * (P + V) B + V p (B + V) / (P + V) Παράδειγµα, V = 9 bytes, B = 512, Pr = 7 bytes, P = 6 bytes, τότε p = 34 Για Β-δέντρο, p = Τάξη p leaf ώστε κάθε φύλλο να χωρά σε ένα block Έστω Β µέγεθος block, V µέγεθος πεδίου αναζήτησης, Pr µέγεθος δείκτη δεδοµένων (εγγραφής) και P µέγεθος δείκτη δέντρου (block) p leaf * (Pr + V) + P B p leaf * (Pr + V) B - P p leaf (B - P) / (Pr + V) Παράδειγµα, V = 9 bytes, B = 512, Pr = 7 bytes, P = 6 bytes, τότε p leaf = 31 Υπολογισµός επιπέδων Παράδειγµα, V = 9 bytes, B = 512, Pr = 7 bytes, P = 6 bytes, τότε p = 34. Έστω ότι κάθε κόµβος είναι γεµάτος κατά 69%. Πόσες καταχωρήσεις (τιµές) χωρά αν 3 επίπεδα Ρίζα 1 κόµβος 22 (33*0,69) καταχωρήσεις 23 δείκτες Επίπεδο 1: 23 κόµβοι 506 (23*22) καταχωρήσεις 529 δείκτες Επίπεδο 2: 529κόµβοι (529*22) καταχωρήσεις δείκτες Επίπεδο φύλλων: κόµβοι ( * 31 * 0.69) δείκτες δεδοµένων Σε 3 επίπεδα εγγραφές έναντι για το Β-δέντρο Σηµείωση: εγγραφές µόνο στα φύλλα 59 60

11 : Αναζήτηση Παρατηρήσεις Τυπική Τάξη: 100. Τυπικός Παράγων Πληρότητας: 67%. Μέση τιµή διακλάδωσης (fan out) = 133 Τυπικές υνατότητες: Ύψος 4: = 312,900,700 εγγραφές Ύψος 3: = 2,352,637 εγγραφές Μπορεί να κρατά τα υψηλότερα επίπεδα στη µνήµη (buffer): Επίπεδο 1 = 1 block = 8 Kbytes Επίπεδο 2 = 133 blocks = 1 Mbyte Επίπεδο 3 = 17,689 blocks = 133 MBytes Nodepointer tree_search(nodepointer P, keyvalue K) if P is a leaf return(p); else if K < K 1 tree_search(p 1, K) else find i such that K i K < K i+1 return tree_search(p i, K) end : Αναζήτηση : Εισαγωγή Αναζήτηση (αναδροµική εκδοχή) nodepointer find(keyvalue K): return tree_search(root, K); end; Εισαγωγή 1. Αναζήτηση του φύλλου για εισαγωγή: έστω φύλλο P 2. Εισαγωγή τιµής Κ στο κόµβο P Αν ο κόµβος-φύλλο δεν είναι γεµάτος εισαγωγή της τιµής : Εισαγωγή : Εισαγωγή Αν ο κόµβος-φύλλο είναι γεµάτος (έχει p leaf εγγραφές) διάσπαση του κόµβου: -- οι πρώτες k = ((p leaf +1)/2) παραµένουν στον κόµβο -- οι υπόλοιπες σε καινούργιο κόµβο -- εισαγωγή (αντιγραφή) της k-οστής τιµής (K k ) στον γονέα Αν ένας εσωτερικός κόµβος είναι γεµάτος (έχει p εγγραφές) διάσπαση του κόµβου: έστω k = ((p+1)/2) -- οι εγγραφές µέχρι το P k (µετά την εισαγωγή) παραµένουν στον κόµβο -- η k-οστή K k τιµή µεταφέρεται (δεν αντιγράφεται) στον πατέρα -- οι υπόλοιπες σε καινούργιο κόµβο 65 66

12 : Εισαγωγή : Εισαγωγή Εισαγωγή της καταχώρησης 8* Οι διασπάσεις κόµβων (εκτός ρίζας) µεγαλώνουν το δέντρο Η διάσπαση της ρίζας υψώνει το δέντρο ΡΙΖΑ * 3* 5* 7* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* : Εισαγωγή : Εισαγωγή 5 Καταχώρηση στον κόµβο γονέα (αντιγραφή) Το 5 ανεβαίνει επάνω, αλλά παραµένει και στο φύλλο ρίζα 17 2* 3* 5* 7* 8* Καταχώρηση στον κόµβο γονέα (µεταφορά) 2* 3* 5* 7* 8* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* Το 17 ανεβαίνει επάνω και παρουσιάζεται µόνο µία φορά στο ευρετήριο (σε αντίθεση µε τα φύλλα) Η ρίζα διασπάστηκε οδηγώντας σε αύξηση του ύψους : ιαγραφή ιαγραφή Όλες οι τιµές εµφανίζονται στα φύλλα και κάποιες επαναλαµβάνονται και σε εσωτερικούς κόµβους (η τιµή Κ σε ένα εσωτερικό κόµβο εµφανίζεται επίσης ως η δεξιότερη τιµή στο φύλλο του υποδέντρου µε ρίζα το δείκτη στα αριστερά του Κ) 1. Αναζήτηση του φύλλου που περιέχει το Κ: έστω φύλλο P 2. Αν υποχείλιση αν είναι δυνατόν ανακατανοµή µε τον αριστερό αδελφό (> (n/2) ) αν όχι, προσπάθεια ανακατανοµής µε το δεξιό αδελφό αν όχι, συγχώνευση και των τριών κόµβων σε δύο κόµβους 71 72

13 2. Αν υποχείλιση (αναλυτικά) <ανακατανοµή εγγραφών> Αν είναι δυνατόν ανακατανοµή µε τον αριστερό αδελφό (> (n/2) ) αν όχι, προσπάθεια ανακατανοµής µε το δεξιό αδελφό ανακατανοµή εγγραφών σε κάθε κόµβο βρείτε την εγγραφή στο γονέα του δεξιού κόµβου Ν αντικατάσταση της τιµής κλειδιού στο γονέα τους µε τη µικρότερη τιµή του κόµβου Ν <συγχώνευση κόµβων> : ιαγραφή Αν δεν είναι δυνατή η ανακατανοµή συγχώνευση κόµβων οδηγεί σε διαγραφή στο παραπάνω επίπεδο, σβήνεται η εγγραφή που δείχνει στον κόµβο (πιθανότητα νέας υποχείλισης) : ιαγραφή Στην περίπτωση συγχώνευσης, πρέπει να διαγραφεί η καταχώρηση (που δείχνει στο P ή τον αδελφό) από τον πατέρα του P. Η συγχώνευση µπορεί να φτάσει στη ρίζα, µειώνοντας το ύψος του δέντρου : ιαγραφή : Παράδειγµα ρίζα Στην περίπτωση συγχώνευσης, πρέπει να διαγραφεί η καταχώρηση (που δείχνει στο P ή τον αδελφό) από τον πατέρα του P Η συγχώνευση µπορεί να φτάσει στη ρίζα, µειώνοντας το ύψος του δέντρου. 2* 3* 5* 7* 8* 14* 16* 19* 20* 22* 24* 27* 29* 33* 34* 38* 39* : ιαγραφή : ιαγραφή ΡΙΖΑ 17 Τέλος, η διαγραφή του 24* (συγχώνευση) * 27* 29* 33* 34* 38* 39* ΡΙΖΑ 2* 3* 5* 7* 8* 14* 16* 22* 24* 27* 29* 33* 34* 38* 39* Το παράδειγµα µετά τη διαγραφή του 19* και του 20* (ανακατανοµή µε δεξί αδελφό) * 3* 5* 7* 8* 14* 16* 22* 27* 29* 33* 34* 38* 39* 77 78

14 Ευρετήρια (ανακεφαλαίωση) Φυσικός Σχεδιασµός Είδη Ευρετηρίων Ευρετήριο ενός επιπέδου ένα διατεταγµένο αρχείο µε εγγραφές (<Κ(i), P(i)> Ευρετήριο πολλών επιπέδων Ευρετήρια δοµής δέντρου Ευρετήρια κατακερµατισµού 79 Ανεξάρτητα του Σ Β. Μικρόκοσµος Συλλογή Απαιτήσεων και Ανάλυση Απαιτήσεις Β (π.χ., µε Σχεσιακό Μοντέλο) Εννοιολογικός Σχεδιασµός Βάσης Εννοιολογικό Μοντέλο ιάγραµµα Ο/Σ (Σχήµα) Εξαρτώµενο του επιλεγµένου Σ Β Λογικός Σχεδιασµός Βάσης Βάση εδοµένων Λογικό Μοντέλο -- Σχήµατα/Όψεις Φυσικός Σχεδιασµός Βάσης Φυσικό Μοντέλο Εσωτερικό Σχήµα Πλήρωση Βάσης 80 Φυσικός Σχεδιασµός Ευρετήρια Μετά τον σχεδιασµό Ο/Σ και το λογικό σχεδιασµό (σχεσιακό µοντέλο), έχουµε τα εννοιολογικά και λογικά (µε τις όψεις) σχήµατα για τη Βάση εδοµένων. Το επόµενο βήµα είναι ο Φυσικός Σχεδιασµός, δηλαδή η επιλογή των δοµών αποθήκευσης των σχέσεων, η επιλογή των ευρετηρίων, οι αποφάσεις για συστάδες - γενικά ότι είναι απαραίτητο για να επιτευχθούν οι προσδοκώµενες επιδόσεις χρήσης της Β. Η υλοποίηση µιας (φυσικής) Σχεσιακής Βάσης εδοµένων περιλαµβάνει τη δηµιουργία ΚΑΤΑΛΟΓΩΝ ΣΥΣΤΗΜΑΤΟΣ (directory system tables) H SQL-92 δεν περιλαµβάνει εντολές για τη δηµιουργία ευρετηρίων. Τα περισσότερα εµπορικά Σ Β το υποστηρίζουν create [unique] index <index_name> on <table_name> (<attr_list>); Η <attr_list> µπορεί να περιέχει παραπάνω από ένα γνωρίσµατα. Προαιρετικό UNIQUE σηµαίνει ότι το <attr_list> είναι κλειδί <table_name>. του drop index <index_name> Ευρετήρια H Oracle δηµιουργεί αυτόµατα ευρετήρια για κάθε UNIQUE ή PRIMARY KEY ορισµό. select <index_name> from user_indexes Κατάλογος Συστήµατος Για κάθε σχέση (Relation): Όνοµα, Όνοµα Αρχείου, οµή Αρχείου (π.χ., Αρχείο Σωρού) Όνοµα Γνωρίσµατος και Τύπος, για κάθε Γνώρισµα Όνοµα Ευρετηρίου, για κάθε Ευρετήριο Περιορισµοί Ακεραιότητας Για κάθε Ευρετήριο: οµή (π.χ. B+ δέντρο) και πεδία για αναζήτηση Για κάθε Όψη (view): Όνοµα Όψης και Ορισµός αυτής Επιπλέον, στατιστικά στοιχεία χρήσης, δικαιοδοσίες, µέγεθος ενδιάµεσης µνήµης, κλπ. Οι κατάλογοι σε ένα σχεσιακό σύστηµα αποθηκεύονται και οι ίδιοι σαν σχέσεις 83 84

15 Φυσικός Σχεδιασµός Φυσικός Σχεδιασµός Για να κάνουµε όσο το δυνατόν καλύτερο τον Φυσικό Σχεδιασµό πρέπει να : Κατανοήσουµε το Φόρτο Εργασίας (workload) Ποιές είναι οι σηµαντικές ερωτήσεις και πόσο συχνά εµφανίζονται. Ποιές είναι οι πιο σηµαντικές τροποποιήσεις και πόσο συχνά εµφανίζονται. Ποια είναι η επιθυµητή επίδοση για την εκτέλεση αυτών των ερωτήσεων και τροποποιήσεων. Για κάθε ερώτηση (query) το φόρτο εργασίας: Σε ποιες σχέσεις έχει πρόσβαση? Ποια γνωρίσµατα ανακαλεί? Ποια γνωρίσµατα υπεισέρχονται στις συνθήκες για selection/join? Πόσο επιλεκτικές είναι αυτές οι συνθήκες? Για κάθε ενηµέρωση (insert/delete/update ): Ποια γνωρίσµατα υπεισέρχονται στις συνθήκες για selection/join? Πόσο επιλεκτικές είναι αυτές οι συνθήκες? Ο τύπος της ενηµέρωσης (INSERT/DELETE/UPDATE), και τα γνωρίσµατα που θα επηρεασθούν Φυσικός Σχεδιασµός Φυσικός Σχεδιασµός Αποφάσεις που Απαιτούνται Τι ευρετήρια πρέπει να δηµιουργηθούν; Ποιες σχέσεις πρέπει να έχουν ευρετήρια; Ποια γνωρίσµατα χρησιµοποιούνται για αναζήτηση; Πρέπει να ορίσουµε πολλαπλά ευρετήρια; Για κάθε ευρετήριο, τι είδους ευρετήριο πρέπει να είναι; Συστάδες; έντρο/κατακερµατισµός; υναµικό/στατικό; Πυκνό/Μη-πυκνό; Χρειάζονται αλλαγές και στο εννοιολογικό/λογικό Σχήµα; ιαφορετικό κανονικοποιηµένο σχήµα; Denormalization (µήπως χρειάζεται από-κανονικοποίηση;) Όψεις, Επανάληψη εδοµένων (replication) Προσέγγιση: Θεώρησε τις πιο σηµαντικές ερωτήσεις στη σειρά. Θεώρησε την καλύτερη εκτέλεση (σχέδιο) µε τα υπάρχοντα ευρετήρια, και δες αν υπάρχει ακόµη καλύτερη εκτέλεση µε ένα επιπλέον ευρετήριο. Αν είναι έτσι, δηµιούργησέ το Πριν δηµιουργήσουµε ένα ευρετήριο, πρέπει να συνυπολογίσουµε και την επίδρασή του σε ενηµερώσεις του φορτίου εργασίας! Η εξισορρόπηση είναι ότι ένα ευρετήριο κάνει τις ερωτήσεις ΠΙΟ ΓΡΗΓΟΡΕΣ και τις ενηµερώσεις ΠΙΟ ΑΡΓΕΣ Επιπλέον, απαιτεί και χώρο στον δίσκο 87 88

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

Ευρετήρια. Το ευρετήριο αρχείου είναι ένα διατεταγµένο αρχείο µε σταθερού µήκους εγγραφές Βάσεις εδοµένων 2003-2004 Ευαγγελία Πιτουρά 1 Ευρετήρια Ένα ευρετήριο (index) είναι µια βοηθητική δοµή αρχείου που κάνει πιο αποδοτική την αναζήτηση µιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται

Διαβάστε περισσότερα

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

Ευρετήρια. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια. Ευρετήρια. Ευρετήρια Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου που καλείται

Διαβάστε περισσότερα

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

Βάσεις εδοµένων Ευαγγελία Πιτουρά 2 Ευρετήρια Βάσεις εδοµένων 2002-2003 Ευαγγελία Πιτουρά 1 Ευρετήρια Ένα ευρετήριο (index) είναι µια βοηθητική δοµή αρχείου που κάνει πιο αποδοτική την αναζήτηση µιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται

Διαβάστε περισσότερα

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

Ευρετήρια. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια. Ευρετήρια. Ευρετήρια Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου που καλείται

Διαβάστε περισσότερα

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

Δεντρικά Ευρετήρια. Δέντρα Αναζήτησης Δεντρικά Ευρετήρια 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόµβος του περιέχει το πολύ p - 1 τιµές αναζήτησης και ρ δείκτες ως εξής P 1 K 1 P

Διαβάστε περισσότερα

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες ως εξής P 1 K 1 P

Διαβάστε περισσότερα

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2017-2018 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ

Διαβάστε περισσότερα

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτες

Διαβάστε περισσότερα

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

Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρα 1. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια. Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου που καλείται

Διαβάστε περισσότερα

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

εντρικά Ευρετήρια έντρα Αναζήτησης εντρικά Ευρετήρια 1 έντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ δείκτεςωςεξής P 1 K 1 P j K

Διαβάστε περισσότερα

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές

Διαβάστε περισσότερα

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

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων 2009-2010: Ευρετήρια 1 Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου

Διαβάστε περισσότερα

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

Ευρετήρια. Ευρετήρια. Βάσεις εδοµένων :ευρετήρια 1 Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου

Διαβάστε περισσότερα

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

Ευρετήρια. Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1 Ευρετήρια 1 Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια Ευαγγελία Πιτουρά 1 τιμή γνωρίσματος Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται

Διαβάστε περισσότερα

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

Ευρετήρια. Βάσεις Δεδομένων : Ευρετήρια 1. Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου. Ευρετήρια. Ευρετήρια Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται (συνήθως) σε ένα γνώρισμα του αρχείου

Διαβάστε περισσότερα

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

Το εσωτερικό ενός Σ Β Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήµατος Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασµός) Προγραµµατισµός (Σχεσιακή Άλγεβρα, SQL) ηµιουργία/κατασκευή Εισαγωγή εδοµένων

Διαβάστε περισσότερα

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

Κεφάλαιο 14. οµές Ευρετηρίων για Αρχεία. ιαφάνεια 14-1 ιαφάνεια 14-1 Κεφάλαιο 14 οµές Ευρετηρίων για Αρχεία Copyright 2007 Ramez Elmasri and Shamkant B. NavatheΕλληνικήΈκδοση, ιαβλος, Επιµέλεια Μ.Χατζόπουλος 1 Θα µιλήσουµε για Τύποι Ταξινοµηµένων Ευρετηρίων

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Επεξεργασία Ερωτήσεων Εισαγωγή Επεξεργασία Ερωτήσεων Σ Β Βάση εδομένων Η ομή ενός ΣΒ Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 1 Βάσεις Δεδομένων 2006-2007 Ευαγγελία Πιτουρά 2 Εισαγωγή Εισαγωγή ΜΕΡΟΣ 1 (Χρήση Σ Β ) Γενική

Διαβάστε περισσότερα

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

Επεξεργασία Ερωτήσεων Εισαγωγή Επεξεργασία Ερωτήσεων ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήματος 1. Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασμός) 2. Προγραμματισμός (Σχεσιακή Άλγεβρα, SQL) ημιουργία/κατασκευή Εισαγωγή εδομένων

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΑΚΑ. ΕΤΟΣ 2012-13 Ι ΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής, Τοµέας Τεχνολογίας

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων Βάσεις εδοµένων 2003-2004 Ευαγγελία Πιτουρά 1 ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήµατος Επεξεργασία Ερωτήσεων Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασµός) Προγραµµατισµός (Σχεσιακή Άλγεβρα, SQL)

Διαβάστε περισσότερα

Κεφάλαιο 7. ISAM και B- έντρα Φυσικός Σχεδιασµός για Βάσεις εδοµένων. ΙΒ οµές Ευρετηρίων Φυσικός Σχεδιασµός Β Σελίδα 3.53

Κεφάλαιο 7. ISAM και B- έντρα Φυσικός Σχεδιασµός για Βάσεις εδοµένων. ΙΒ οµές Ευρετηρίων Φυσικός Σχεδιασµός Β Σελίδα 3.53 Κεφάλαιο 7 ISAM και B- έντρα Φυσικός Σχεδιασµός για Βάσεις εδοµένων ΙΒ οµές Ευρετηρίων Φυσικός Σχεδιασµός Β Σελίδα 3.53 ιαχείριση Μνήµης.. SET-ORIENTED DBMS Εφαρµογή Προγράµµατα οσοληψιών Database Access

Διαβάστε περισσότερα

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

Φροντιστήριο Αποθήκευση σε δίσκο, βασικές οργανώσεις αρχείων κατακερματισμός και δομές ευρετηρίων για αρχεία ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Φροντιστήριο 17-1-2011 Αποθήκευση σε δίσκο, βασικές οργανώσεις αρχείων κατακερματισμός και δομές ευρετηρίων για αρχεία Θεωρία Άτρακτος/αυλάκι : ομόκεντροι κύκλοι στον δίσκο Κύλινδρος:

Διαβάστε περισσότερα

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

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα Βάσεις

Διαβάστε περισσότερα

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

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα 2 Βήματα Επεξεργασίας Τα βασικά βήματα στην επεξεργασία

Διαβάστε περισσότερα

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

Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Κατακερματισμός 1 Αποθήκευση εδομένων (σύνοψη) Τα δεδομένα (περιεχόμενο) μιας βάσης δεδομένων αποθηκεύεται στο δίσκο Παραδοσιακά, μία σχέση (πίνακας/στιγμιότυπο) αποθηκεύεται σε ένα αρχείο Αρχείο δεδομένων

Διαβάστε περισσότερα

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

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο Κατακερµατισµός 1 Οργάνωση Αρχείων (σύνοψη) Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο 1. Αρχεία Σωρού 2. Ταξινοµηµένα Αρχεία Φυσική διάταξη των εγγραφών

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων. Αποθήκευση σε δίσκο, βασικές οργανώσεις αρχείων, κατακερματισμός και δομές ευρετηρίων για αρχεία. Φροντιστήριο 7 o Βάσεις Δεδομένων Αποθήκευση σε δίσκο, βασικές οργανώσεις αρχείων, κατακερματισμός και δομές ευρετηρίων για αρχεία Φροντιστήριο 7 o 2-2-2008 Θεωρία Άτρακτος/αυλάκι : ομόκεντροι κύκλοι στον δίσκο Κύλινδρος:

Διαβάστε περισσότερα

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

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ.Χατζόπουλος 2 Δένδρο αναζήτησης είναι ένας ειδικός τύπος δένδρου που χρησιμοποιείται για να καθοδηγήσει την αναζήτηση μιας

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Κεφ.11: Ευρετήρια και Κατακερματισμός Κεφ.11: Ευρετήρια και Κατακερματισμός Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Κεφ. 11: Ευρετήρια-Βασική θεωρία Μηχανισμοί ευρετηρίου χρησιμοποιούνται για την επιτάχυνση

Διαβάστε περισσότερα

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

ΛΥΣΗ ΤΗΣ ΔΕΥΤΕΡΗΣ ΑΣΚΗΣΗΣ Όλγα Γκουντούνα ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΜΑΘΗΜΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΚΑΔ. ΕΤΟΣ 2011-12 ΔΙΔΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής Τιμολέων Σελλής Καθηγητής Άσκηση 1

Διαβάστε περισσότερα

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

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή (ως τρόπος οργάνωσης αρχείου) μέγεθος

Διαβάστε περισσότερα

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Επίπεδα Αφαίρεσης Σ Β. Αποθήκευση Εγγραφών - Ευρετήρια. ρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, Επίπεδο Όψεων.

ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ. Επίπεδα Αφαίρεσης Σ Β. Αποθήκευση Εγγραφών - Ευρετήρια. ρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, Επίπεδο Όψεων. ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ Χειµερινό Εξάµηνο 2002 Αποθήκευση Εγγραφών - Ευρετήρια ρ Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ Επίπεδα Αφαίρεσης Σ Β Επίπεδο Όψεων Όψη Όψη

Διαβάστε περισσότερα

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

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2017-2018 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)

Διαβάστε περισσότερα

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

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Κατακερματισμός Τι αποθηκεύουμε στους κάδους; Στα παραδείγματα δείχνουμε μόνο την τιμή του πεδίου κατακερματισμού Την ίδια την εγγραφή

Διαβάστε περισσότερα

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

Δυναμικός Κατακερματισμός. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δυναμικός Κατακερματισμός Βάσεις Δεδομένων 2018-2019 1 Κατακερματισμός Πρόβλημα στατικού κατακερματισμού: Έστω Μ κάδους και r εγγραφές ανά κάδο - το πολύ Μ * r εγγραφές (αλλιώς μεγάλες αλυσίδες υπερχείλισης)

Διαβάστε περισσότερα

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

Ευρετήρια και Κατακερµατισµός Ευρετήρια και Κατακερµατισµός Α µέρος Ευρετήρια και Κατακερµατισµός Σελίδα 1 ΣΥΝΟΨΗ ΕΝΟΤΗΤΑΣ Ορισµοί - Βασικές έννοιες ιατεταγµένα Ευρετήρια B+-Tree οµές Ευρετηρίων Ευρετήρια και Κατακερµατισµός Σελίδα

Διαβάστε περισσότερα

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

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων Βάσεις Δεδομένων 2018-2019 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα 2 Βήματα Επεξεργασίας

Διαβάστε περισσότερα

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

Τα δεδομένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Οργάνωση Αρχείων 1 Αρχεία Τα δεδομένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Η μεταφορά δεδομένων από το δίσκο στη μνήμη και από τη μνήμη στο δίσκο γίνεται σε μονάδες blocks Βασικός στόχος η ελαχιστοποίηση

Διαβάστε περισσότερα

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

Οργάνωση Αρχείων. Βάσεις Δεδομένων : Οργάνωση Αρχείων 1. Blobs Αρχεία Τα δεδομένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Οργάνωση Αρχείων Η μεταφορά δεδομένων από το δίσκο στη μνήμη και από τη μνήμη στο δίσκο γίνεται σε μονάδες blocks Βασικός στόχος η ελαχιστοποίηση

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Οργάνωση Αρχείων. Βάσεις Δεδομένων : Οργάνωση Αρχείων 1. Blobs Αρχεία Τα δεδομένα συνήθως αποθηκεύονται σε αρχεία στο δίσκο Οργάνωση Αρχείων Η μεταφορά δεδομένων από το δίσκο στη μνήμη και από τη μνήμη στο δίσκο γίνεται σε μονάδες blocks Βασικός στόχος η ελαχιστοποίηση

Διαβάστε περισσότερα

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

Ευρετήρια και Κατακερματισμός Ευρετήρια και Κατακερματισμός B μέρος Ευρετήρια και Κατακερματισμός Σελίδα 1 ΣΥΝΟΨΗ ΕΝΟΤΗΤΑΣ Συναρτήσεις κατακερματισμού Κατακερματισμός στις βάσεις δεδομένων Στατικός vs. Δυναμικός Κατακερματισμός Bitmaps

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι Β. Μεγαλοοικονόμου, Δ. Χριστοδουλάκης Δομές Ευρετηρίων και Κατακερματισμός Αρχείων I Ακ.Έτος 2008-09 (Βασισμένες στις σημειώσεις των Silberchatz,Korth και

Διαβάστε περισσότερα

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ Συστήματα Διαχείρισης Βάσεων Δεδομένων Άσκηση 1 Δημήτρης Πλεξουσάκης Τμήμα Επιστήμης Υπολογιστών HY460 Συστήματα Διαχείρισης Βάσεων Δεδομένων Διδάσκοντες: Δημήτρης

Διαβάστε περισσότερα

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων

Δομές Δεδομένων. Ενότητα 13: B-Δέντρα/AVL-Δέντρα. Καθηγήτρια Μαρία Σατρατζέμη. Τμήμα Εφαρμοσμένης Πληροφορικής. Δομές Δεδομένων Ενότητα 13: B-Δέντρα/AVL-Δέντρα Καθηγήτρια Μαρία Σατρατζέμη Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI Δομές Ευρετηρίων και Κατακερματισμός Αρχείων I Β. Μεγαλοοικονόμου Δ. Χριστοδουλάκης (παρουσίαση βασισμένη εν μέρη σε σημειώσεις των Silberchatz, Korth και

Διαβάστε περισσότερα

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

ΗΥ360 Αρχεία και Βάσεις εδοµένων ΗΥ360 Αρχεία και Βάσεις εδοµένων ιδάσκων:. Πλεξουσάκης Tutorial B-Trees, B+Trees Μπαριτάκης Παύλος 2018-2019 Ιδιότητες B-trees Χρήση για μείωση των προσπελάσεων στον δίσκο Επέκταση των Binary Search Trees

Διαβάστε περισσότερα

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

Βάσεις δεδομένων. (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Βάσεις δεδομένων (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα Ευρετήρια Σκανδάλες PL/SQL Δείκτες/Δρομείς 2 Αποθήκευση δεδομένων Πρωτεύουσα αποθήκευση Κύρια μνήμη (main memory) ή κρυφή μνήμη

Διαβάστε περισσότερα

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

Αποθήκευση Δεδομένων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Αποθήκευση Δεδομένων Βάσεις Δεδομένων 2017-2018 1 ΣΔΒΔ SQL ΣΔΒΔ ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Τυπικά, Κάθε σχέση (το στιγμιότυπο της) αποθηκεύεται σε ένα αρχείο Βάσεις Δεδομένων 2017-2018 2 Δομή ενός ΣΔΒΔ (πιο αναλυτικά)

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων ΙΙ Ενότητα 6 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Βάσεις Δεδομένων ΙΙ Ενότητα 6: Δομές Ευρετηρίων - B-tree Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

έντρα Πολλαπλής ιακλάδωσης και (a, b)- έντρα

έντρα Πολλαπλής ιακλάδωσης και (a, b)- έντρα έντρα Πολλαπλής ιακλάδωσης και (a, b)- έντρα ηµήτρης Φωτάκης Τµήµα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστηµάτων έντρα Αναζήτησης Πολλαπλής ιακλάδωσης ( ΑΠ ) ΑΠ ή έντρα m-δρόµων: Σ Βάσεων εδοµένων.

Διαβάστε περισσότερα

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

Οργάνωση Αρχείων. Ευρετήρια. Ταξινοµηµένα ευρετήρια B + -δένδρα Ευρετήρια κατακερµατισµού. Αρχεία σωρού ιατεταγµένα αρχεία Αρχεία κατακερµατισµού Οργάνωση Αρχείων & Ευρετήρια Οργάνωση Αρχείων Αρχεία σωρού ιατεταγµένα αρχεία Αρχεία κατακερµατισµού Ευρετήρια Ταξινοµηµένα ευρετήρια B + -δένδρα Ευρετήρια κατακερµατισµού Βασική πηγή διαφανειών: Silberschatz

Διαβάστε περισσότερα

έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη

έντρα ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη έντρα 2-3-4 ομές εδομένων 3ο εξάμηνο ιδάσκων: Χρήστος ουλκερίδης ιαφάνειες προσαρμοσμένες από το υλικό της Μαρίας Χαλκίδη Σημερινό Μάθημα 2-3-4 έντρα Ισοζυγισμένα δέντρα αναζήτησης έντρα αναζήτησης πολλαπλών

Διαβάστε περισσότερα

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

Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Ορισµοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις εδοµένων 2011-2012 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούµενα µαθήµατα: Εννοιολογικός Σχεδιασµός Βάσεων Δεδοµένων (µε

Διαβάστε περισσότερα

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

Βάσεις Δεδομένων ΙΙ Ενότητα 5 Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Βάσεις Δεδομένων ΙΙ Ενότητα 5: Δομές Ευρετηρίων - ISAM Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά

Διαβάστε περισσότερα

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

Κατακερματισμός. 4/3/2009 Μ.Χατζόπουλος 1 Κατακερματισμός 4/3/2009 Μ.Χατζόπουλος 1 H ιδέα που βρίσκεται πίσω από την τεχνική του κατακερματισμού είναι να δίνεται μια συνάρτησης h, που λέγεται συνάρτηση κατακερματισμού ή παραγωγής τυχαίων τιμών

Διαβάστε περισσότερα

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

Αποθήκευση εδοµένων. Μαγνητικοί ίσκοι. Μαγνητικές ταινίες για. Εισαγωγή Εισαγωγή Στο µέρος Α του µαθήµατος, είδαµε το σχεδιασµό και υλοποίηση µιας βάσης δεδοµένων χρησιµοποιώντας ένα Σ Β Αποθήκευση εδοµένων ΜΕΡΟΣ Β : Το «εσωτερικό» ενός Σ Β -- αποθήκευση δεδοµένων -- ευρετήρια

Διαβάστε περισσότερα

ΠΛΗ111. Ανοιξη 2005. Μάθηµα 7 ο. έντρο. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης

ΠΛΗ111. Ανοιξη 2005. Μάθηµα 7 ο. έντρο. Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης ΠΛΗ111 οµηµένος Προγραµµατισµός Ανοιξη 2005 Μάθηµα 7 ο έντρο Τµήµα Ηλεκτρονικών Μηχανικών και Μηχανικών Υπολογιστών Πολυτεχνείο Κρήτης έντρο Ορισµός Υλοποίηση µε Πίνακα Υλοποίηση µε είκτες υαδικό έντρο

Διαβάστε περισσότερα

Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης

Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης Δένδρα Αναζήτησης Πολλαπλής Διακλάδωσης Δένδρα στα οποία κάθε κόμβος μπορεί να αποθηκεύει ένα ή περισσότερα κλειδιά. Κόμβος με d διακλαδώσεις : k 1 k 2 k 3 k 4 d-1 διατεταγμένα κλειδιά d διατεταγμένα παιδιά

Διαβάστε περισσότερα

9. Φυσική Οργάνωση Αρχείων στο Δίσκο & Ευρετήρια

9. Φυσική Οργάνωση Αρχείων στο Δίσκο & Ευρετήρια Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 9. Φυσική Οργάνωση Αρχείων στο Δίσκο & Ευρετήρια Σχεδιασμός Βάσεων Δεδομένων Χρήστος 2017-18 Φυσική Οργάνωση

Διαβάστε περισσότερα

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων

Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων ομές εδομένων Πανεπιστήμιο Πειραιώς Σχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών Τμήμα Ψηφιακών Συστημάτων 6. Δυαδικά Δέντρα 2 ομές εδομένων 4 5 Χρήστος ουλκερίδης Τμήμα Ψηφιακών Συστημάτων 18/11/2016 Εισαγωγή Τα

Διαβάστε περισσότερα

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

ΗΥ460 Συστήµατα Διαχείρισης Βάσεων Δεδοµένων Χειµερινό Εξάµηνο 2016 Διδάσκοντες: Βασίλης Χριστοφίδης ΗΥ460 Συστήµατα Διαχείρισης Βάσεων Δεδοµένων Χειµερινό Εξάµηνο 2016 Διδάσκοντες: Βασίλης Χριστοφίδης 2 η Σειρά Ασκήσεων Ηµεροµηνία Παράδοσης: 14/11/2016 Άσκηση 1 (10 µονάδες) Εξωτερική Ταξινόµηση Θεωρείστε

Διαβάστε περισσότερα

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Δέντρα Αναζήτησης. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Δέντρα Αναζήτησης. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Δέντρα Αναζήτησης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Το πρόβλημα Αναζήτηση Θέλουμε να διατηρήσουμε αντικείμενα με κλειδιά και να μπορούμε εκτός από

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΑΣΚΗΣΗ ΔΕΥΤΕΡΗ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΑΣΚΗΣΗ ΔΕΥΤΕΡΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΑΚΑΔ. ΕΤΟΣ 2007-2008 14.02.2008 EΠΙΣΤΡΕΦΕΤΑΙ ΔΙΔΑΣΚΩΝ Ιωάννης Βασιλείου, Καθηγητής,

Διαβάστε περισσότερα

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

µπιτ Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E Άρα το δεκαεξαδικό ισοδύναµο είναι CE2 ! Βρείτε το δεκαεξαδικό ισοδύναµο του σχήµατος µπιτ 110011100010 Λύση: Κάθε οµάδα των τεσσάρων µπιτ µεταφράζεται σε ένα δεκαεξαδικό ψηφίο 1100 C 1110 E 0010 2 Άρα το δεκαεξαδικό ισοδύναµο είναι CE2 2 !

Διαβάστε περισσότερα

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

Δυναμικός Κατακερματισμός Δυναμικός Κατακερματισμός Καλό για βάση δεδομένων που μεγαλώνει και συρρικνώνεται σε μέγεθος Επιτρέπει τη δυναμική τροποποίηση της συνάρτησης κατακερματισμού Επεκτάσιμος κατακερματισμός μια μορφή δυναμικού

Διαβάστε περισσότερα

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ

ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΠΑΡΑΡΤΗΜΑ: QUIZ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ (Οι ερωτήσεις µε κίτρινη υπογράµµιση είναι εκτός ύλης για φέτος) ΕΙΣΑΓΩΓΗ Q1. Οι Πρωταρχικοί τύποι (primitive types) στη Java 1. Είναι όλοι οι ακέραιοι και όλοι οι πραγµατικοί

Διαβάστε περισσότερα

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

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων) Λογικός

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Ν. Μ. Μισυρλής Τµήµα Πληροφορικής και Τηλεπικοινωνιών, Πανεπιστήµιο Αθηνών Καθηγητής: Ν. Μ. Μισυρλής () Αλγόριθµοι και Πολυπλοκότητα Φεβρουαρίου 0 / ένδρα Ενα δένδρο είναι

Διαβάστε περισσότερα

#2 Αλγόριθµοι, οµές εδοµένων και Πολυπλοκότητα

#2 Αλγόριθµοι, οµές εδοµένων και Πολυπλοκότητα #2 Αλγόριθµοι, οµές εδοµένων και Πολυπλοκότητα ηµήτρης Ν. Σερπάνος Εργαστήριο Συστηµάτων Υπολογιστών Τµήµα Ηλεκτρολόγων Μηχ. & Τεχνολογίας Υπολογιστών Αλγόριθµοι, οµές εδοµένων και Πολυπλοκότητα Αλγόριθµοι:

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL Βάσεις Δεδομένων 2009-2010 Ευαγγελία Πιτουρά 1 Εισαγωγή Μοντελοποίηση Στα προηγούμενα μαθήματα: Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Ονοµατεπώνυµο: Αριθµός Μητρώου: Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία:

Διαβάστε περισσότερα

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

Πληροφορική 2. Δομές δεδομένων και αρχείων Πληροφορική 2 Δομές δεδομένων και αρχείων 1 2 Δομή Δεδομένων (data structure) Δομή δεδομένων είναι μια συλλογή δεδομένων που έχουν μεταξύ τους μια συγκεκριμένη σχέση Παραδείγματα δομών δεδομένων Πίνακες

Διαβάστε περισσότερα

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 20: Δυαδικό Δέντρο Αναζήτησης Δυαδικό δέντρο Κάθε κόμβος «γονέας» περιέχει δύο δείκτες που δείχνουν σε δύο κόμβους «παιδιά» του ιδίου τύπου. Αν οι δείκτες προς αυτούς

Διαβάστε περισσότερα

Δοµές Δεδοµένων. 18η Διάλεξη Ισορροπηµένα δέντρα. Ε. Μαρκάκης

Δοµές Δεδοµένων. 18η Διάλεξη Ισορροπηµένα δέντρα. Ε. Μαρκάκης Δοµές Δεδοµένων 18η Διάλεξη Ισορροπηµένα δέντρα Ε. Μαρκάκης Περίληψη Επανάληψη των Τυχαιοποιηµένων ΔΔΑ, Στρεβλών ΔΔΑ, Δέντρων 2-3-4 Δέντρα κόκκινου-µαύρου Λίστες Παράλειψης Χαρακτηριστικά επιδόσεων - συµπεράσµατα

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΟΜΕΣ Ε ΟΜΕΝΩΝ T. Σελλής ΑΝΟΙΞΗ 2003 ΑΣΚΗΣΗ #3 Ηµερ. Παράδοσης: 09/05/03

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Πανεπιστήμιο Πειραιώς Τμήμα Ψηφιακών Συστημάτων Μανουσόπουλος Χρήστος cman@unipi.gr Το ευρετήριο (index) είναι ένα αντικείμενο δεδομένων μέσα στη βάση δεδομένων που καταγράφει τις γραμμές

Διαβάστε περισσότερα

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

Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών. ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-460 Συστήµατα ιαχείρισης Βάσεων εδοµένων ηµήτρης Πλεξουσάκης Βασίλης Χριστοφίδης Ονοµατεπώνυµο: Αριθµός Μητρώου: Τελική Εξέταση (3 ώρες) Ηµεροµηνία: 7

Διαβάστε περισσότερα

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI Δομές Ευρετηρίων και Κατακερματισμός Αρχείων II Β. Μεγαλοοικονόμου Δ. Χριστοδουλάκης (παρουσίαση βασισμένη εν μέρη σε σημειώσεις των Silberchatz, Korth και

Διαβάστε περισσότερα

Προγραµµατισµός Ι (ΗΥ120)

Προγραµµατισµός Ι (ΗΥ120) Προγραµµατισµός Ι (ΗΥ120) Διάλεξη 15: Διασυνδεµένες Δοµές - Λίστες Δοµές δεδοµένων! Ένα τυπικό πρόγραµµα επεξεργάζεται δεδοµένα Πώς θα τα διατάξουµε? 2 Τι λειτουργίες θέλουµε να εκτελέσουµε? Πώς θα υλοποιήσουµε

Διαβάστε περισσότερα

Λεξικό, Union Find. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Λεξικό, Union Find. ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Λεξικό, Union Find ιδάσκοντες: Σ. Ζάχος,. Φωτάκης Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Πρόβλημα (ADT) Λεξικού υναμικά μεταβαλλόμενη

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Κεφάλαιο 13. Αποθήκευση σε ίσκους, Βασικές οµέςαρχείων, και Κατακερµατισµός. ιαφάνεια 13-1

Κεφάλαιο 13. Αποθήκευση σε ίσκους, Βασικές οµέςαρχείων, και Κατακερµατισµός. ιαφάνεια 13-1 ιαφάνεια 13-1 Κεφάλαιο 13 Αποθήκευση σε ίσκους, Βασικές οµέςαρχείων, και Κατακερµατισµός ίαβλος, Επιµ.Μ.Χατζόπουλος 1 Γιατί θα µιλήσουµε Μονάδες Αποθήκευσης ίσκων Αρχεία Εγγραφών Πράξεις σε αρχεία Αρχεία

Διαβάστε περισσότερα