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

Σχετικά έγγραφα
Διοικητική Λογιστική

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

Βάσεις Περιβαλλοντικών Δεδομένων

Ασφάλεια Πληροφοριακών Συστημάτων

Διοικητική Λογιστική

Βάσεις Περιβαλλοντικών Δεδομένων

Διδακτική Πληροφορικής

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

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

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

Βάσεις Περιβαλλοντικών Δεδομένων

Τεχνικό Σχέδιο - CAD

Διδακτική Πληροφορικής

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

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 3: Έλεγχοι στατιστικών υποθέσεων

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 1: Καταχώρηση δεδομένων

Διδακτική Πληροφορικής

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

Τεχνικό Σχέδιο - CAD

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

Τεχνικό Σχέδιο - CAD

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Αθήνας. Βιοστατιστική (Ε) Ενότητα 2: Περιγραφική στατιστική

Διδακτική Πληροφορικής

Βάσεις Περιβαλλοντικών Δεδομένων

Προγραμματισμός Η/Υ. 6 η ενότητα: Συναρτήσεις. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

Δομή διαδικτυακών Πολυμέσων

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

Τεχνικό Σχέδιο - CAD

Διδακτική Πληροφορικής

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

Ενότητα. Εισαγωγή στις βάσεις δεδομένων

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Διοικητική Λογιστική

Διδακτική Πληροφορικής

Προγραμματισμός Η/Υ. Αναζήτηση & Ταξινόμηση. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Προγραμματισμός Η/Υ. Βασικές Προγραμματιστικές Δομές. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Διδακτική Πληροφορικής

Τεχνικό Σχέδιο - CAD. Τόξο Κύκλου. Τόξο Κύκλου - Έλλειψη. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

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

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

Τεχνικό Σχέδιο - CAD

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

Εννοιες και Παράγοντες της Ψηφιακής Επεξεργασίας Εικόνας

Βάσεις Περιβαλλοντικών Δεδομένων

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Διδακτική Πληροφορικής

Διοικητική Λογιστική

Ψηφιοποίηση και Ψηφιακή Επεξεργασία Εικόνας

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

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

ΟΡΓΑΝΩΣΗ & ΔΙΟΙΚΗΣΗ ΕΠΙΣΙΤΙΣΤΙΚΩΝ ΜΟΝΑΔΩΝ

Βάσεις Περιβαλλοντικών Δεδομένων

Διδακτική Πληροφορικής

Εισαγωγή στους Αλγορίθμους

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

ΔΙΟΙΚΗΣΗ ΔΙΕΘΝΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ

Διοικητική Λογιστική

Ασφάλεια Πληροφοριακών Συστημάτων

Εισαγωγή στους Αλγορίθμους

Διοικητική Λογιστική

Διοικητική Λογιστική

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

Βάσεις Περιβαλλοντικών Δεδομένων

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

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

Τεχνικό Σχέδιο - CAD

Προγραμματισμός Η/Υ. 7 η ενότητα: Αρχεία. Τμήμα. Τεχνολόγων Περιβάλλοντος. ΤΕΙ Ιονίων Νήσων. Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

Οργάνωση και Λειτουργία Ταξιδιωτικής Βιομηχανίας Ι

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

Θερμοδυναμική. Ανοικτά Ακαδημαϊκά Μαθήματα. Πίνακες Νερού σε κατάσταση Κορεσμού. Γεώργιος Κ. Χατζηκωνσταντής Επίκουρος Καθηγητής

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

Τεχνικό Σχέδιο - CAD. Εισαγωγή στα Προγράμματα CAD. ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Τεχνολογιών Φυσικού Περιβάλλοντος

Τεχνικό Σχέδιο - CAD

Ασφάλεια Πληροφοριακών Συστημάτων

ΔΙΟΙΚΗΣΗ ΔΙΕΘΝΩΝ ΕΠΙΧΕΙΡΗΣΕΩΝ

Λογιστική Κόστους Ενότητα 12: Λογισμός Κόστους (2)

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

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

ΧΡΗΜΑΤΟΟΙΚΟΝΟΜΙΚΗ ΛΟΓΙΣΤΙΚΗ

ΠΕΡΙΒΑΛΛΟΝΤΙΚΗ ΠΟΛΙΤΙΚΗ & ΝΟΜΟΘΕΣΙΑ ΜΑΘΗΜΑ 1

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Διδακτική Πληροφορικής

Τεχνικό Σχέδιο - CAD

Εισαγωγή στους Αλγορίθμους Ενότητα 10η Άσκηση Αλγόριθμος Dijkstra

Ασφάλεια Πληροφοριακών Συστημάτων

ΔΙΑΧΕΙΡΙΣΗ ΕΦΟΔΙΑΣΤΙΚΗΣ ΑΛΥΣΙΔΑΣ

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

Εισαγωγή στους Αλγορίθμους Ενότητα 9η Άσκηση - Αλγόριθμος Prim

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

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

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

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

ΟΡΓΑΝΩΣΗ & ΔΙΟΙΚΗΣΗ ΕΠΙΣΙΤΙΣΤΙΚΩΝ ΜΟΝΑΔΩΝ

ΟΙΚΟΝΟΜΙΚΑ ΜΑΘΗΜΑΤΙΚΑ

Μηχανές Πλοίου ΙΙ (Ε)

Transcript:

Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων Βάσεις Δεδομένων ΙΙ Ενότητα 6: Δομές Ευρετηρίων - B-tree Το περιεχόμενο του μαθήματος διατίθεται με άδεια Creative Commons εκτός και αν αναφέρεται διαφορετικά Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.

B-trees Μειονεκτήματα ευρετηριοποιημένων σειριακών αρχείων : Η απόδοση μειώνεται καθώς το αρχείο μεγαλώνει Δημιουργία πολλών Block υπερχείλισης Απαιτείται περιοδική αναδιοργάνωση ολόκληρου του αρχείου Πλεονεκτήματα των B + -tree ευρετηρίων αρχείων : Αυτόματη αναδιοργάνωση με μικρές τοπικές αλλαγές μετά από εισαγωγές και διαγραφές Δεν απαιτείται αναδιοργάνωση ολόκληρου του αρχείου Μειονεκτήματα των B + -tree ευρετηρίων αρχείων : Επιπλέον επιβάρυνση χώρου για εισαγωγές και διαγραφές Τα πλεονεκτήματα των B + trees υπερκεράζουν τα μειονεκτήματά τους, Τα B + trees χρησιμοποιούνται ευρέως

B-trees Π.χ., B-tree τάξης 3 (δηλ: το πολύ 3 δείκτες από κάθε κόμβο): 6 >6 < 1 3 7

B-tree ιδιότητες: Κάθε κόμβος, σε ένα B-tree τάξης n : Ταξινομημένα με βάση το κλειδί Το πολύ n δείκτες Το ελάχιστο n/2 δείχτες (εκτός από την ρίζα) Όλα τα φύλλα στο ίδιο επίπεδο Εάν ο αριθμός των δεικτών είναι k τότε ο κάθε κόμβος έχει ακριβώς k-1 κλειδιά p1 pn v1 v2 v n-1

ιδιότητες Κόμβοι block aware : κάθε κόμβος σελίδα δίσκου O(log (N)) γιαταπάντα! (ins/del/search) Τυπικά, εάν N = 50-100, τότε 2 3 επίπεδα Χρησιμοποίηση >= 50%, εγγυημένα, κατά μέσο όρο 6%

Ερωτήματα- Queries Αλγόριθμος για ερώτημα ακριβούς ταιριάσματος (exact match query); (Π.χ., ssn=8?) 6 >6 < 1 3 7

Ερωτήματα- Queries Αλγόριθμος για ερώτημα ακριβούς ταιριάσματος (exact match query); (Π.χ., ssn=8?) 6 >6 < 1 3 7

Ερωτήματα- Queries Αλγόριθμος για ερώτημα ακριβούς ταιριάσματος (exact match query); (Π.χ., ssn=8?) 6 >6 < 1 3 7

Ερωτήματα- Queries Αλγόριθμος για ερώτημα ακριβούς ταιριάσματος (exact match query); (Π.χ., ssn=8?) 6 >6 < 1 3 7

Queries Αλγόριθμος για ερώτημα ακριβούς ταιριάσματος (exact match query); (Π.χ., ssn=8?) 6 >6 < Height βήματα (= προσπελάσεις στο δίσκο) 1 3 7

Ερωτήματα- Queries Τι γίνεται για ερωτήματα διαστήματος (range queries); (Π.χ., 5<salary<8) Εγγύτητα/ αναζητήσεις κοντινότερου γείτονα; (Π.χ., salary ~ 8 )

Ερωτήματα- Queries Τι γίνεται για ερωτήματα διαστήματος (Π.χ., 5<salary<8) 6 >6 < 1 3 7

Ερωτήματα- Queries Τι γίνεται για ερωτήματα διαστήματος ;(Π.χ., 5<salary<8) Εγγύτητα/ αναζητήσεις κοντινότερου γείτονα; (Π.χ., salary ~ 8 ) 6 >6 < 1 3 7

B-trees: Εισαγωγές Εισαγωγή σε Φύλλο(leaf); σε περίπτωση υπερχείλισης προώθησε την μέση τιμή προς τα πάνω (περιοδικά) Διέσπασε : ώστε να διατηρούνται οι ιδιότητες ενός B-tree

B-trees Εύκολη περίπτωση: Tree T0; Εισαγωγή του 8 6 >6 < 1 3 7

B-trees Tree T0; Εισαγωγή του 8 6 >6 < 1 3 7 8

B-trees Η δυσκολότερη περίπτωση : Tree T0; Εισαγωγή του 2 6 >6 < 1 3 7 2

B-trees Η δυσκολότερη περίπτωση : Tree T0; Εισαγωγή του 2 6 1 2 3 7 Προώθησε την μέση τιμή προς τα πάνω

B-trees Η δυσκολότερη περίπτωση : Tree T0; Εισαγωγή του 2 Υπερχείλιση, προώθησε τη μέση τιμή 22 6 1 3 7

B-trees Η δυσκολότερη περίπτωση : Tree T0; Εισαγωγή του 2 Τελικό στάδιο 2 6 1 3 7

B-trees - Εισαγωγή Ερώτηση: τι θα γίνει εάν υπάρχουν μέσες τιμές; (Π.χ., τάξη 4) Απάντηση: λειτουργεί οτιδήποτε από τα δύο

B-trees - Εισαγωγή Εισαγωγή σε φύλλο, σε υπερχείλιση, προώθησε το μέσο πάνω (περιοδικά διέδωσε την διάσπαση ) Διάσπαση: για την διατήρηση όλων των ιδιοτήτων των ενός B-tree (!!) Παρατηρήστε πως αναπτύσσεται :το ύψος αυξάνεται όταν υπάρξει υπερχείλιση και διασπαστεί η ρίζα Αυτόματη αύξηση και αναδιοργάνωση (συγκριτικά με ISAM!)

Ευρετηριοποίηση (Indexing)- Περιληπτικά Πρωτεύοντα / δευτερεύοντα ευρετήρια Σειριακή μέθοδος προσπέλασης (ISAM) B - trees, Ορισμός, αναζήτηση, εισαγωγή, διαγραφή B+ - trees Κατακερματισμός Στατικός κατακερματισμός Δυναμικός κατακερματισμός

Διαγραφή Ο αλγόριθμος συνοπτικά : Διέγραψε κλειδί Σε περίπτωση υπερχείλισης μπορεί να προκληθεί συγχώνευση Στην πράξη κάποιοι σχεδιαστές απλά αφήνουν να συμβεί υπερχείλιση...

B-trees Διαγραφή 1 η Περίπτωση: διαγραφή κλειδιού από κόμβο φύλο - χωρίς υπερχείλιση 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος

B-trees Διαγραφή 1 η Περίπτωση: διαγραφή κλειδιού από κόμβο φύλο - χωρίς υπερχείλιση Π.χ.(Διέγραψε το 3 απότοδέντροfrom T0) 6 >6 < 1 3 7

B-trees Διαγραφή Η ευκολότερη περίπτωση: Tree T0; Διαγραφή του 3 6 >6 < 1 7

B-trees Διαγραφή Η ευκολότερη περίπτωση: Tree T0; Διαγραφή του 3 ΤΕΛΙΚΟ ΔΕΝΤΡΟ 6 >6 < 1 7

B-trees Διαγραφή 1 η Περίπτωση: διαγραφή κλειδιού από κόμβο φύλο - χωρίς υπερχείλιση 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος

B-trees Διαγραφή 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση (Π.χ., διέγραψε το 6 από το T0) 6 >6 < Διέγραψε & προώθησε: 1 3 7

B-trees Διαγραφή 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση (Π.χ., διέγραψε το 6 από το T0) >6 < Διέγραψε & προώθησε: 1 3 7

B-trees Διαγραφή 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση (Π.χ., διέγραψε το 6 από το T0) 3 >6 < Διέγραψε & προώθησε: 1 7

B-trees Διαγραφή 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση (Π.χ., διέγραψε το 6 από το T0) ΤΕΛΙΚΟ ΔΕΝΤΡΟ <3 3 >3 < 1 7

B-trees Διαγραφή 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση (Π.χ., διέγραψε το 6 από το T0) Ερώτηση: Πως προωθούμε? Απάντηση: επέλεξε το μεγαλύτερο κλειδί από το αριστερότερο υποδέντρο (ή το μικρότερο από το δεξί υπόδεντρο) Παρατήρηση: Κάθε διαγραφή οδηγεί τελικά σε διαγραφή κλειδιού από κάποιο κόμβο φύλλο

B-trees Διαγραφή 1 η Περίπτωση: διαγραφή κλειδιού από κόμβο φύλο - χωρίς υπερχείλιση 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος

B-trees Διαγραφή 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος (Π.χ., διέγραψε το 7 από το T0) 6 >6 < Διέγραψε & δάνεισε: 1 3 7

B-trees Διαγραφή 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος (Π.χ., διέγραψε το 7 από το T0) Πλούσιος γείτονας >6 < 6 Διέγραψε & δάνεισε: 1 3

3 η B-trees Διαγραφή Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος Πλούσιος γείτονας = μπορεί να δώσει ένα κλειδί χωρίς υπερχείλιση Δανείζει ένα κλειδί : πάντα ΔΙΑΜΕΣΟΥ του ΜΗΤΡΙΚΟΥ ΚΟΜΒΟΥ!

B-trees Διαγραφή 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος (Π.χ., διέγραψε το 7 από το T0) Πλούσιος Γείτονας >6 < 6 Διέγραψε & δάνεισε: 1 3 OXI!

B-trees Διαγραφή 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος (Π.χ., διέγραψε το 7 από το T0) >6 < 6 Διέγραψε & δάνεισε: 1 3

B-trees Διαγραφή 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος (Π.χ., διέγραψε το 7 από το T0) >6 < 3 Διέγραψε & δάνεισε: 1 6

B-trees Διαγραφή 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος (Π.χ., διέγραψε το 7 από το T0) ΤΕΛΙΚΟ ΔΕΝΤΡΟ <3 >3 < 3 Διέγραψε & δάνεισε διαμέσου του μητρικού κόμβου: 1 6

B-trees Διαγραφή 1 η Περίπτωση: διαγραφή κλειδιού από κόμβο φύλο - χωρίς υπερχείλιση 2 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - χωρίς υπερχείλιση 3 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και πλούσιος γειτονικός κόμβος 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος

B-trees Διαγραφή 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος (Π.χ., διέγραψε το από το T0) 6 >6 < 1 3 7

B-trees Διαγραφή 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος (Π.χ., διέγραψε το από το T0) 6 >6 < 1 3 7

B-trees Διαγραφή 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος (Π.χ., διέγραψε το από το T0) Συγχώνευσε φτωχό 6 γείτονα >6 < 1 3 7

B-trees Διαγραφή 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος (Π.χ., διέγραψε το από το T0) Συγχώνευσε, αποσπώντας ένα κλειδί από τον πατέρα Ακριβώςτοαντίθετοαπότηνεισαγωγή: διέσπασε και προώθησε προς τα επάνω, vs. Συγχώνευσε και προώθησε προς τα κάτω Παράδειγμα:...

B-trees Διαγραφή 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος (Π.χ., διέγραψε το από το T0) Συγχώνευσε φτωχό 6 γείτονα 1 3 >6 7

B-trees Διαγραφή 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος (Π.χ., διέγραψε το από το T0) ΤΕΛΙΚΟ ΔΕΝΤΡΟ 6 1 3 >6 7

B-trees Διαγραφή 4 η Περίπτωση: διαγραφή κλειδιού από εσωτερικό κόμβο - υπερχείλιση και φτωχός γειτονικός κόμβος (Π.χ., διέγραψε το από το T0) απέσπασε κλειδί από τον μητρικό κόμβο και συγχώνευσε Ερώτηση: Τι θα συμβεί αν συμβεί υπερχείλιση στον μητρικό κόμβο; Απάντηση: επανέλαβε αναδρομικά

B-trees πρακτικά: Πρακτικά: Όχι κενά φύλλα Θεωρία 6 >6 < Δείκτες προς τις εγγραφές 1 3 7

B-trees πρακτικά: Πρακτικά: Όχι κενά φύλλα πράξη 6 >6 < Δείκτες προς τις εγγραφές 1 3 7

B-trees πρακτικά: Πρακτικά: 6 >6 < 1 3 7 ΑΦΜ 3 7 6 1

B-trees πρακτικά: Πρακτικά τα πρότυπα είναι: - Κόμβοι φύλλα: (v1, rp1, v2, rp2, vn, rpn) - Εσωτερικοί κόμβοι: (p1, v1, rp1, p2, v2, rp2, ) 6 >6 < 1 3 7

Συμπεράσματα Όλες οι παραλλαγές ενός B-tree μπορούν να χρησιμοποιηθούν για κάθε είδους ευρετήριο Πρωτεύον/ Δευτερεύον Αραιό/ Πυκνό Όλα έχουν εξαιρετική απόδοση χειρότερης περίπτωσης O(logN) για εισαγωγές/διαγραφές/αναζήτηση Είναι η δομή ευρετηρίου που συνήθως χρησιμοποιείται

Σημείωμα Αδειοδότησης Το παρόν υλικό διατίθεται με τους όρους της άδειας χρήσης Creative Commons Αναφορά, Μη Εμπορική Χρήση Παρόμοια Διανομή 4.0 [1] ή μεταγενέστερη, Διεθνής Έκδοση. Εξαιρούνται τα αυτοτελή έργα τρίτων π.χ. φωτογραφίες, διαγράμματα κ.λ.π., τα οποία εμπεριέχονται σε αυτό. Οι όροι χρήσης των έργων τρίτων επεξηγούνται στη διαφάνεια «Επεξήγηση όρων χρήσης έργων τρίτων». Τα έργα για τα οποία έχει ζητηθεί άδεια αναφέρονται στο «Σημείωμα Χρήσης Έργων Τρίτων». [1] http://creativecommons.org/licenses/από-nc-sa/4.0/ Ως Μη Εμπορική ορίζεται η χρήση: που δεν περιλαμβάνει άμεσο ή έμμεσο οικονομικό όφελος από την χρήση του έργου, για το διανομέα του έργου και αδειοδόχο που δεν περιλαμβάνει οικονομική συναλλαγή ως προϋπόθεση για τη χρήση ή πρόσβαση στο έργο που δεν προσπορίζει στο διανομέα του έργου και αδειοδόχο έμμεσο οικονομικό όφελος (π.χ. διαφημίσεις) από την προβολή του έργου σε διαδικτυακό τόπο Ο δικαιούχος μπορεί να παρέχει στον αδειοδόχο ξεχωριστή άδεια να χρησιμοποιεί το έργο για εμπορική χρήση, εφόσον αυτό του ζητηθεί.

Επεξήγηση όρων χρήσης έργων τρίτων διαθέσιμο με άδεια CC-BY διαθέσιμο με άδεια CC-BY-SA διαθέσιμο με άδεια CC-BY-ND διαθέσιμο με άδεια CC-BY-NC διαθέσιμο με άδεια CC-BY-NC-SA διαθέσιμο με άδεια CC-BY-NC-ND διαθέσιμο με άδεια CC0 Public Domain διαθέσιμο ως κοινό κτήμα χωρίς σήμανση Δεν επιτρέπεται η επαναχρησιμοποίηση του έργου, παρά μόνο εάν ζητηθεί εκ νέου άδεια από το δημιουργό. Επιτρέπεται η επαναχρησιμοποίηση του έργου και η δημιουργία παραγώγων αυτού με απλή αναφορά του δημιουργού. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού, και διάθεση του έργου ή του παράγωγου αυτού με την ίδια άδεια. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η δημιουργία παραγώγων του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η εμπορική χρήση του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού και διάθεση του έργου ή του παράγωγου αυτού με την ίδια άδεια. Δεν επιτρέπεται η εμπορική χρήση του έργου. Επιτρέπεται η επαναχρησιμοποίηση του έργου με αναφορά του δημιουργού. Δεν επιτρέπεται η εμπορική χρήση του έργου και η δημιουργία παραγώγων του. Επιτρέπεται η επαναχρησιμοποίηση του έργου, η δημιουργία παραγώγων αυτού και η εμπορική του χρήση, χωρίς αναφορά του δημιουργού. Επιτρέπεται η επαναχρησιμοποίηση του έργου, η δημιουργία παραγώγων αυτού και η εμπορική του χρήση, χωρίς αναφορά του δημιουργού. Συνήθως δεν επιτρέπεται η επαναχρησιμοποίηση του έργου.

Διατήρηση Σημειωμάτων Οποιαδήποτε αναπαραγωγή ή διασκευή του υλικού θα πρέπει να συμπεριλαμβάνει: το Σημείωμα Αναφοράς το Σημείωμα Αδειοδότησης τη δήλωση Διατήρησης Σημειωμάτων το Σημείωμα Χρήσης Έργων Τρίτων (εφόσον υπάρχει) μαζί με τους συνοδευόμενους υπερσυνδέσμους.

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ιονίων Νήσων» έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του εκπαιδευτικού υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.