Indexing.

Slides:



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

Βάσεις Δεδομένων ΕΙΣΑΓΩΓΗ.
ΤΑΞΗ Γ ΓΥΜΝΑΣΙΟΥ Βασικές Έννοιες Επανάληψη (2).
Το υλικο του Υπολογιστη
Κατανομή με ευρετήριο.
Συνάφεια Κρυφής Μνήμης σε Επεκτάσιμα Μηχανήματα. Συστήματα με Κοινή ή Κατανεμημένη Μνήμη  Σύστημα μοιραζόμενης μνήμης  Σύστημα κατανεμημένης μνήμης.
Βάσεις Δεδομένων 1 T.Manavis– N.Kyritsis.
Κατακερματισμός Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Δυναμικός Κατακερματισμός.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Εργασία Η υλοποίηση του αλγορίθμου συγχώνευσης θα πρέπει να χρησιμοποιεί την ιδέα των ροών (streams). Θα πρέπει να υπάρχουν δύο διαφορετικά είδη.
ΣΧΕΣΙΑΚΟ ΜΟΝΤΕΛΟ ΜΑΘΗΜΑ 3.
Βάσεις Δεδομένων Μάθημα 4.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια.
Ευρετήρια. 2 Πρωτεύον ευρετήριο (primary index): ορισμένο στο κλειδί διάταξης του αρχείου Δευτερεύον ευρετήριο (secondary index): ορισμένο σε πεδία διαφορετικά.
Βάσεις Δεδομένων II Διαχείριση Δοσοληψιών Πάνος Βασιλειάδης Σεπτέμβρης 2002
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Ευρετήρια.
Ευρετήρια.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Ευρετήρια.
Διαχείριση μνήμης Υπόβαθρο Εναλλαγή Συνεχής κατανομή Σελιδοποίηση
ΕΝΟΤΗΤΑ 3 – MS Windows – Περιβάλλον εργασίας
Πετρογεωργάκης Μανούσος Σπυρόπουλος Σταύρος
ΟΡΓΑΝΩΣΗ ΣΥΣΤΗΜΑΤΟΣ ΑΡΧΕΙΩΝ A’ μέρος
ΙΒ – Δομές Ευρετηρίων – Φυσικός Σχεδιασμός ΒΔΣελίδα 3.58 Κεφάλαιο 7 ISAM και B-Δέντρα Φυσικός Σχεδιασμός για Βάσεις Δεδομένων.
Δομές Δεδομένων.
Προχωρημένα Θέματα Τεχνολογίας και Εφαρμογών Βάσεων Δεδομένων Διαχείριση Συναλλαγών Πάνος Βασιλειάδης Μάρτιος 2014
CHORD A Scalable Peer-to-peer Lookup Service for Internet Applications Μαρίνα Δρόσου Νικόλαος Μπουντουρόπουλος Οδυσσέας Πετρόχειλος Παναγιώτης Δομουχτσίδης.
Λεξικό, Union – Find Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Advanced Data Indexing (Προηγμένη ευρετηρίαση δεδομένων) Κατακερματισμός – Hashing (1 ο Μέρος)
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Οργάνωση Αρχείων.
A Scalable Content-Addressable Network Μυρτώ Ντέτσικα Παναγιώτα Νικολαΐδου Ελένη Γεώργα Λαμπρινή Κώνστα Βαγγέλης Λάππας Γρηγόρης Τζώρτζης Γιώργος Καρπάθιος.
Παράδειγμα B + -Tree Υποθέτουμε B + -Tree τάξης 3 (α=2, b=3)  Κάθε φύλλο θα έχει 2 ως 3 το πολύ στοιχεία  Κάθε εσωτερικός κόμβος θα έχει 2 ως 3 το πολύ.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Οργάνωση Αρχείων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Επεξεργασία Ερωτήσεων.
ΜΝΗΜΗ RAM Εισαγωγή Μια μονάδα μνήμης στην ουσία είναι ένα σύνολο από δυαδικά κύτταρα αποθήκευσης (τα δυαδικά κύτταρα μπορούν να αποθηκεύσουν είτε την.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Επεξεργασία Ερωτήσεων.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά1 Επεξεργασία Ερωτήσεων.
Κρυφή μνήμη (cache memory) (1/2) Εισαγωγή στην Πληροφορκή1 Η κρυφή μνήμη είναι μία πολύ γρήγορη μνήμη – πιο γρήγορη από την κύρια μνήμη – αλλά πιο αργή.
Κύρια Μνήμη Διάφοροι τύποι μνήμης RAM Από πάνω προς τα κάτω, DIP, SIPP, SIMM (30-pin), SIMM (72-pin), DIMM (168-pin), DDR DIMM (184-pin). Μνήμη RΟM.
Καταχωρητές (Registers) (1/3) Εισαγωγή στην Πληροφορκή1 Οι Καταχωρητές (Registers) είναι ειδικές θέσεις μνήμης υψηλής ταχύτητας που χρησιμοποιούνται για.
1 Είδη μέσων αποθήκευσης Πρωτεύοντα μέσα αποθήκευσης κεντρική μνήμη και όλες οι υπόλοιπες μνήμες (π.χ καταχωρητές, cache memory) Δευτερεύοντα μέσα αποθήκευσης.
ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Κ.ΑΛΑΦΟΔΗΜΟΣ καθηγητής Δ.Παπαχρήστος μέλος ΕΔΙΠ ΑΕΙ ΠΕΙΡΑΙΑ ΤΤ ΠΑΝΕΠΙΣΤΗΜΙΟ Α ΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ.
Λειτουργικά Συστήματα
Ευρετήρια.
ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ανδρέου Βασίλης.
Ευρετήρια Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Δυναμικός Κατακερματισμός
Θερινό Σχολείο, 14 – 20 Ιουλίου 2014
Δεντρικά Ευρετήρια Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Ευρετήρια Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Οργάνωση αρχείων & φακέλων
ΤΑΞΗ Γ ΓΥΜΝΑΣΙΟΥ Βασικές Έννοιες Επανάληψη (2).
Δεντρικά Ευρετήρια Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
Αποθήκευση Δεδομένων Βάσεις Δεδομένων Ευαγγελία Πιτουρά.
Εισαγωγή στα Ευρετήρια
19η Διάλεξη Εξωτερική Αναζήτηση και Β-δέντρα Ε. Μαρκάκης
Φόρμες Φόρμες χρησιμοποιούνται για να δημιουργήσουμε ένα φιλικό περιβάλλον για την διαχείριση των δεδομένων της βάσης. Επίσης δίνεται η δυνατότητα δημιουργίας.
Εξωτερική Αναζήτηση Ιεραρχία Μνήμης Υπολογιστή Εξωτερική Μνήμη
Δυναμικός Κατακερματισμός
Μεταγράφημα παρουσίασης:

Indexing

Σκοπός του Indexing Τι είναι το Data Indexing? Έχει σημασία?

Η ιδέα των File Systems Αποθήκευση και οργάνωση δεδομένων σε αρχεία Ευκολότερη εύρεση και πρόσβαση δεδομένων κάθε στιγμή

Database Management Systems Το σύστημα αρχείων μιας βάσης δεδομένων ΒΔ: οργανωμένη συλλογή δεδομένων που έχουν λογική συσχέτιση (πρωτ. Και ξένα κλειδιά, τύποι δεδομένων, περιορισμοί)

Πρόσβαση σε Δεδομένα από ΒΔ read, modify, update, delete Το DBMS μεταφέρει τα δεδομένα σε buffer στην κύρια μνήμη Μεταφορά σε blocks μεταξύ δίσκου και μνήμης

Χρόνος? Η μεταφορά των δεδομένων σε blocks: αργή διαδικασία Η πρόσβαση εξαρτάται από το μέσο που χρησιμοποιείται

Γιατί? Πολλές γραμμές, 20 bytes η κάθε μία Θέλουμε την εγγραφή 100

Συσκευές φυσικής αποθήκευσης Random Access Memory (RAM): η πιο γρήγορη, αλλά και η πιο ακριβή Direct Access Memory: λίγο αργότερη, λίγο φτηνότερη Sequential Access Memory: η πιο αργή, η πιο φτηνή

Άλλοι παράγοντες Το query χρειάζεται πολύ χρόνο Το DBMS πρέπει να ψάξει τα blocks για να βρει δεδομένα που ταιριάζουν ery

Data Indexing Δομή δεδομένων που «επισυνάπτεται» στο αρχείο για ταχύτερη πρόσβαση Βασικός στόχος: μείωση των blocks που πρέπει να ψάξει το DBMS

Ιδιότητες Κλειδί αναζήτησης και pointer Κλειδί αναζήτησης: χαρακτηριστικό (-ά) που χρησιμοποιούνται για αναζήτηση εγγραφών Pointer: διεύθυνση μνήμης όπου είναι αποθηκευμένα τα δεδομένα Περίπου όπως το καταλογογραφικό σύστημα στις βιβλιοθήκες

Ευρετήρια δύο τύπων Ordered index (Πρωτεύον ευρετήριο ή ευρετήριο συστάδων): πρόσβαση δεδομένων με διάταξη Hash index (δευτερεύον ευρετήριο ή ευρετήριο χωρίς συστάδες): πρόσβαση δεδομένων κατανεμημένων ομοιόμορφα σε μια σειρά δεξαμενών

Τύποι Ordered Index Πυκνό ευρετήριο: μια εγγραφή για κάθε τιμή του κλειδιού Μη πυκνό ευρετήριο: μια εγγραφή για μερικές μόνο τιμές του κλειδιού

Πυκνό Ευρετήριο

Πυκνό ευρετήριο

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

Διαγραφή σε πυκνό ευρετήριο Αν η εγγραφή που διαγράφεται ήταν η μοναδική με αυτή την τιμή, απλώς διαγράφουμε την τιμή Αν το ευρετήριο κρατάει pointer για όλες τις εγγραφές με αυτή την τιμή, διαγράφεται ο pointer για τη διαγραφείσα εγγραφή Αν το ευρετήριο κρατάει μόνο τον pointer για την πρώτη τιμή, ενημερώνουμε τον pointer μόνο αν ήταν η πρώτη εγγραφή αυτή που διαγράφηκε

Μη πυκνό ευρετήριο

Μη πυκνό ευρετήριο

Εισαγωγή σε μη πυκνό ευρετήριο Υποθέτουμε ότι κρατάμε μια εγγραφή για κάθε block Αν δεν δημιουργείται καινούριο block, καμιά αλλαγή Αν δημιουργείται καινούριο block, η πρώτη τιμή του κλειδιού στο νέο block προστίθεται στο ευρετήριο

Διαγραφή σε μη πυκνό ευρετήριο Αν η εγγραφή που διαγράφεται ήταν η μοναδική με αυτή την τιμή, στο ευρετήριο μπαίνει η επόμενη τιμή Αν η επόμενη τιμή υπάρχει στο ευρετήριο, τότε απλά διαγράφεται η διαγραφείσα Αν η τιμή κλειδιού της εγγραφής που διαγράφεται υπάρχει και αλλού, τότε είτε δε γίνεται καμία αλλαγή (αν ο δείκτης δεν δείχνει σε αυτή) είτε ο δείκτης ενημερώνεται για να δείχνει στην επόμενη εγγραφή

Ποιο ευρετήριο διαλέγουμε? Πυκνό: περισσότερο αποθηκευτικό χώρο και μεγαλύτερη μνήμη Ο χρόνος αναζήτησης είναι μικρότερος με το πυκνό Προτιμάμε πυκνό, αν το αρχείο του ευρετηρίου είναι μικρό σε σχέση με τη μνήμη που έχουμε Πρέπει να κάνουμε και μια πρόβλεψη για το πόσο μεγάλο μπορεί να γίνει το αρχείο στο μέλλον

Πολυεπίπεδο ευρετήριο Μπορεί το ευρετήριο να γίνει πολύ μεγάλο για να μπορεί να γίνει αποτελεσματικά αναζήτηση Λύση: indexing πολλών επιπέδων Το κύριο index γίνεται «ενδιάμεσο αρχείο» και δημιουργούμε ένα μη πυκνό index για αυτό The outer index is a sparse index of the primary index whereas the inner index is the primary index.

Πολυεπίπεδο ευρετήριο

Πολυεπίπεδο ευρετήριο

Συγκροτημένο Ευρετήριο (clustering index) Πχ. Τμήμα, σε έναν πίνακα υπαλλήλων

Συγκροτημένο Ευρετήριο (clustering index)

Συγκροτημένο Ευρετήριο (clustering index) Pointer στην κορυφη του block Overflow pointer αν η τιμη παει και σε άλλο block

Ευρετήριο B-Tree Η πιο συχνή δομή δεδομένων για indexing. Δυναμική δομή, μπορεί να μεγαλώσει και να μικρύνει

Τρεις τύποι κόμβων Βασικός κόμβος: δείκτες κόμβων σε κόμβους κλάδων Κόμβος κλάδου: δείκτες σε κόμβους φύλλων ή άλλους κόμβους κλάδων Κόμβος φύλλου: δείκτες σε άλλους κόμβους φύλλων ή αντικείμενα δεικτών

Full B-Tree Structure