ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Τεχνικές Προσπέλασης σε Πολυδιάστατες Βάσεις εδοµένων µε χρήση ένδρων (R-trees, GiST) Κ. Πατρούµπας 28 Μαΐου 2004 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 1
Το R-δένδρο: Κίνητρα Συµβατικές µέθοδοι δεικτοδότησης στις βάσεις δεδοµένων: Κατακερµατισµός (hashing): χρήσιµος κυρίως για ισότητα τιµών B-δένδρα: υποθέτουν ολική διάταξη των στοιχείων (λ.χ. ακέραιοι) Είναι όµως ανεπαρκείς: Για πολυδιάστατα δεδοµένα (λ.χ. σχήµατα στο χώρο), Όταν τα ερωτήµατα καλύπτουν ένα εύρος (range) µιας περιοχής. Παλαιότερες πολυδιάστατες δοµές: Quad-trees k-d trees K-D-B trees Grid files, R-δένδρο (1984): Προσαρµογή του Β-δένδρου για πολυδιάστατα δεδοµένα. Αναπαράσταση αντικειµένων από διαστήµατα τιµών σε κάθε διάσταση. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 2
Η δοµή του R-δένδρου Φύλλα Περιέχουν στοιχεία της µορφής (I, tuple-id), όπου: Ι το n-διάστατο ελάχιστο περιβάλλον παραλληλόγραµµο του χωρικού αντικειµένου, tuple-id ο δείκτης στην αντίστοιχη πλειάδα της βάσης δεδοµένων. Εσωτερικοί κόµβοι Περιέχουν στοιχεία της µορφής (I, child-pointer), όπου : Ι το n-διάστατο ελάχιστο περιβάλλον παραλληλόγραµµο που καλύπτει όλους τους απογόνους στο υποδένδρο του κόµβου, child-pointer ο δείκτης σε ένα παιδί του κόµβου. Μ ο µέγιστος αριθµός στοιχείων σε κάθε κόµβο. m M/2, ο ελάχιστος αριθμός στοιχείων ανά κόμβο. Ιδιότητες Ο αριθμός των στοιχείων κάθε φύλλου ή εσωτερικού κόμβου κυμαίνεται μεταξύ m και M, εκτός αν είναι η ρίζα. Η ρίζα έχει τουλάχιστον δύο παιδιά, εκτός κι αν είναι φύλλο. Όλα τα φύλλα βρίσκονται στο ίδιο επίπεδο. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 3
Ιδιότητες του R-δένδρου Ρίζα m=2 M=4 Φύλλα: δείχνουν στα περιεχόµενα της βάσης δεδοµένων Τα παραλληλόγραµµα του ίδιου επιπέδου µπορεί να επικαλύπτονται. Το παραλληλόγραµµο ενός κόµβου καλύπτει πλήρως όλα τα παραλληλόγραµµα των κόµβων του υποδένδρου του. Το ύψος του δένδρου είναι το πολύ log m N -1, όπου m ο ελάχιστος αριθµός στοιχείων σε κάθε κόµβο και Ν ο συνολικός αριθµός πλειάδων. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 4
Αναζητήσεις στο R-δένδρο Ερωτήµατα σηµείου ή περιοχής Η αναζήτηση µπορεί να ακολουθήσει πολλαπλά µονοπάτια µέχρι τα φύλλα. Η αναζήτηση ξεκινά από τη ρίζα και εντοπίζει τους σχετικούς κόµβους. ιασχίζει τα αντίστοιχα υποδένδρα των κόµβων και συνεχίζει αναδροµικά µέχρι να φτάσει στο επίπεδο των φύλλων. Ψάχνει στα φύλλα, επιστρέφοντας εκείνα των οποίων τα παραλληλόγραµµα περιέχουν το σηµείο ή επικαλύπτουν την περιοχή. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 5
Εισαγωγές στοιχείων στο R-δένδρο ιάσχιση του δένδρου από τη ρίζα προς τα φύλλα, επιλέγοντας τους κόµβους που τα παραλληλόγραµµά τους περιλαµβάνουν το αντικείµενο. Επιλέγεται ο κόµβος που το παραλληλόγραµµό του χρειάζεται τη µικρότερη επέκταση ώστε να χωρέσει το νέο αντικείµενο Συνέχισε µέχρι τα φύλλα. Αν υπάρχει ελεύθερη θέση, το στοιχείο προστίθεται (µε πιθανή ανακατάταξη του δένδρου προς τα πάνω). Αν όχι, πρέπει να δηµιουργηθεί νέο φύλλο, και να γίνει διάσπαση. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 6
Εισαγωγές στοιχείων στο R-δένδρο (συνέχεια), (a) R S (b) (a) ηµιουργία νέου φύλλου και ανακατανοµή των στοιχείων µε τον αριστερό αδελφό του. (b) Αυξάνει ο αριθµός των επιπέδων και ανακατανέµονται τα στοιχεία της ρίζας 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 7
ιάσπαση κόµβων στο R-δένδρο Το πρόβληµα: Πρέπει να µοιραστούν Μ+1 στοιχεία µεταξύ δύο κόµβων, ώστε να ελαχιστοποιηθεί ο αριθµός των κόµβων που θα χρειαστεί να ελεγχθούν σε προσεχείς αναζητήσεις. Το κριτήριο: Η συνολική επιφάνεια των παραλληλογράµµων των δύο κόµβων µετά τη διάσπαση θα πρέπει να είναι η ελάχιστη δυνατή. Αλγόριθµοι διάσπασης κόµβων: Εξαντλητικός (έλεγξε όλους τους O(2 M-1 ) συνδυασµούς): Εκθετικός! Τετραγωνικού κόστους O(M 2 ). Επιλογή δύο στοιχείων-σπόρων: δηλ. εκείνο το ζεύγος που αν περιληφθεί στην ίδια οµάδα, τότε θα σπαταληθεί ο περισσότερος «νεκρός χώρος». Για κάθε επόµενο στοιχείο, διάλεξε για εισαγωγή εκείνο που επιφέρει τη µικρότερη επιβάρυνση στο µέγεθος του παραλληλογράµµου κάθε οµάδας. Γραµµικού κόστους O(M). Βρες τα πιο ακραία παραλληλόγραµµα κάθε διάστασης και διάλεξε εκείνο µε τη µεγαλύτερη απόσταση. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 8
ιαγραφές στοιχείων από το R-δένδρο Αναζήτηση του φύλλου που περιέχει το αντικείµενο. Έλεγχος σε όλα τα υποδένδρα που έχουν επικάλυψη. Το στοιχείο θα υπάρχει µόνο σε ένα φύλλο (αν όντως υπάρχει). Αν το στοιχείο βρεθεί, διάγραψέ το από το φύλλο όπου περιέχεται. Αναδιοργάνωση του δένδρου από τα φύλλα προς τη ρίζα: Αν κάποιος κόµβος ή φύλλο βρεθεί µε λιγότερα από m στοιχεία, τότε διάγραψέ τον και κράτησε τα στοιχεία του σε µια λίστα. Προσαρµογή των παραλληλογράµµων στους κόµβους. Προώθηση των αλλαγών προς τα ανώτερα επίπεδα. Ανατοποθέτηση των «ορφανών» στοιχείων (µε εισαγωγές). Αν τελικά η ρίζα βρεθεί µε ένα µόνο παιδί, τότε διάγραψέ την και κάνε ρίζα το µοναδικό της παιδί (µείωση επιπέδων του δένδρου). ιαφορά σε σχέση µε το Β-δένδρο: ΕΝ γίνεται συγχώνευση γειτονικών κόµβων, αλλά επανεισαγωγές. Τα στοιχεία υπάρχουν στη µνήµη (προγενέστερη αναζήτηση). υναµική «εξυγίανση» της δενδρικής δοµής. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 9
Ενηµερώσεις στοιχείων στο R-δένδρο Ενηµέρωση ενός αντικειµένου συνεπάγεται αλλαγή του ελάχιστου περιβάλλοντος παραλληλογράµµου του. Το αντίστοιχο στοιχείο πρέπει να βρεθεί στα φύλλα και να διαγραφεί. Το νέο ενηµερωµένο στοιχείο θα πρέπει να επανεισαχθεί στην κατάλληλη θέση στο δένδρο. Το πρόβληµα µε τις επανεισαγωγές: Η ποιότητα εξαρτάται από τη σειρά εισαγωγής των στοιχείων. Μπορεί να παρατηρηθεί πολύς «νεκρός χώρος» (dead space). 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 10
Επιδόσεις του R-δένδρου Εισαγωγές: λίγες διασπάσεις µε τον γραµµικό αλγόριθµο. Αναζητήσεις: πολύ λίγο επηρεάζονται από τον αλγόριθµο διάσπασης. Χώρος: πρακτικά καταλαµβάνεται κυρίως από τα φύλλα (το ύψος του δένδρου παραµένει σχετικά µικρό). 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 11
Παραλλαγές: R + -δένδρο ιπλότυπα εν υπάρχουν επικαλύψεις µεταξύ παραλληλογράµµων για τους κόµβους του ίδιου επιπέδου. Ι ΕΑ: Επιτρέπεται ο διαµελισµός παραλληλογράµµων σε στοιχεία εσωτερικών κόµβων, ώστε να µην υπάρχει επικάλυψη. Άρα, στοιχεία µπορεί να αποθηκευτούν σε >1 φύλλα (διπλότυπα). Στα φύλλα επιτρέπονται επικαλύψεις παραλληλογράµµων. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 12
Παραλλαγές: R + -δένδρο (συνέχεια) Στόχος: Να περιοριστεί το κόστος αναζητήσεων. Η περιοχή του ερωτήµατος διασπάται σε υποπεριοχές και ακολουθούνται λιγότερα µονοπάτια µέχρι τα φύλλα. Απαιτείται περισσότερος χώρος και το δένδρο αυξάνει σε ύψος. ιάσπαση κόµβων: Πιο πολύπλοκη από το R-tree, γιατί µπορεί να διαδίδεται αναδροµικά τόσο σε ανώτερα όσο και σε κατώτερα επίπεδα του δένδρου (εξαιρούνται τα φύλλα). Επιδόσεις: Καλύτερη συµπεριφορά σε σχέση µε το R-tree, όσον αφορά ερωτήµατα σηµείου (αλλά µε περισσότερες απαιτήσεις σε χώρο). Χειρίζεται αποτελεσµατικότερα µεγάλα αντικείµενα. Τεχνική συµπύκνωσης για διευκόλυνση των αναζητήσεων. Αν δεν υπάρχουν συχνές αλλαγές, συµφέρει οι κόµβοι να είναι πλήρεις. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 13
Παραλλαγές: R * -δένδρο ιαπίστωση: Ο τρόπος εισαγωγής είναι κρίσιµος για τις αναζητήσεις. Να περιοριστούν οι επικαλύψεις µεταξύ κόµβων. Να ελαχιστοποιηθεί η περιοχή που καλύπτεται από τους κόµβους. Εισαγωγή στοιχείων: ελαχιστοποίηση της περιµέτρου των παραλληλογράµµων, όχι της επιφάνειάς τους (όπως στα R, R+-δένδρα). Αλγόριθµος διάσπασης: Επιλογή του άξονα µε τη µικρότερη συνολική επικάλυψη. Επιλογή του παραλληλογράµµου που θα χρειαστεί µικρότερη επέκταση. Προβληµατικός κόµβος ιάσπαση σε R-δένδρο ιάσπαση σε R*-δένδρο 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 14
Παραλλαγές: R * -δένδρο (συνέχεια) Ι ΕΑ: Αναγκαστικές επανεισαγωγές στοιχείων. Όταν ένας κόµβος υπερχειλίζει, αντί να διασπαστεί, του αφαιρείται ένα ποσοστό των στοιχείων του (γύρω στο 30%) που σπαταλούν περισσότερο χώρο. Αυτά τα στοιχεία επανεισάγονται. Αποτέλεσµα: τα στοιχεία µπορεί να χωρέσουν σε υπάρχοντες κόµβους και να µην χρειαστούν καθόλου διασπάσεις. Προβληµατικός κόµβος Επανεισαγωγή στοιχείου 3 Επανεισαγωγή στοιχείου 8 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 15
Οικογένεια R-δένδρων: Αξιολόγηση Η αναζήτηση µε το R-δένδρο επιστρέφει υποψήφιες απαντήσεις, που θα πρέπει να ελεγχθούν για την ακρίβειά τους. => Πρόσθετο κόστος. Ερωτήµατα περιοχής: πολλαπλά µονοπάτια στα R-δένδρα. εν υπάρχει εγγύηση για τον αριθµό των κόµβων (σελίδων) που πρέπει να εξεταστούν στην χειρότερη περίπτωση. Ερωτήµατα χωρικής σύνδεσης: συγχρονισµένη (depth-first) διάσχιση των δένδρων (συχνά τα quad-trees είναι αποτελεσµατικότερα). Ερωτήµατα εγγύτερου γείτονα σε πολλαπλές διαστάσεις: η απόσταση από το πιο αποµακρυσµένο σηµείο µικραίνει όσο αυξάνουν οι διαστάσεις. Σειραϊκή σάρωση: ίσως αποτελεσµατικότερη από το R-δένδρο, για δεδοµένα µε πάνω από 10 διαστάσεις. Έλεγχος ταυτόχρονων δοσοληψιών. Εισαγωγές: κάθε κόµβος κλειδώνεται και απελευθερώνεται όταν το παιδί του έχει θέση και το παραλληλόγραµµό του περιέχει το νέο αντικείµενο. => Πολλοί κόµβοι σε πολλαπλά µονοπάτια µπορεί να κλειδωθούν! ιαθέσιµα από εµπορικά συστήµατα: Oracle, Informix, PostgreSQL, 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 16
Γενικευµένα δένδρα αναζήτησης (GiST): Κίνητρα Επεκτασιµότητα γνωστών τεχνικών (B-δένδρα, R-δένδρα) σε πρόσθετους τύπους δεδοµένων (λ.χ. σύνολα τιµών). Επεκτασιµότητα στους τύπους ερωτηµάτων που µπορεί να υποστηριχθούν (ανάλογα µε τα δεδοµένα). Ευκολία κατασκευής δεικτών για νέους τύπους δεδοµένων. Γενικευµένη δενδρική δοµή για βάσεις δεδοµένων: τα B-δένδρα ή τα R-δένδρα υλοποιήσιµα ως επεκτάσεις του GiST. Κάθε κλειδί θα πρέπει να ικανοποιεί τις πλειάδες των υποδένδρων του: τα δεδοµένα µπορούν να οργανωθούν σε ένθετες υποκατηγορίες κάθε υποκατηγορία υπακούει σε ένα κατηγόρηµα (predicate) που ισχύει για όλα τα στοιχεία του υποδένδρου ιεραρχία διαµερίσεων για κάθε υποκατηγορία. Οµαδοποίηση σε κατηγορίες: αλγόριθµος διάσπασης (split). Χαρακτηρισµός των κατηγοριών: ορισµός κλειδιών αναζήτησης. => GiST (1995): Έξι τυποποιηµένες αντικειµενοστρεφείς µέθοδοι που υλοποιούν την αφηρηµένη λειτουργία των κλειδιών του δένδρου. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 17
Γενικευµένα δένδρα αναζήτησης: οµή Ισοζυγισµένο δένδρο. Τα φύλλα σε διασυνδεδεµένη λίστα. k ο παράγοντας ελάχιστης κατάληψης ανά κόµβο. Υψηλός παράγοντας διακλάδωσης (fanout) µεταξύ km και M. Σε κάθε κόµβο, κλειδιά και κατηγορήµατα (predicates). Τα κατηγορήµατα περιέχουν έναν αριθµό από ελεύθερες µεταβλητές, αρκεί να ικανοποιούν οποιαδήποτε πλειάδα σε κάθε υποδένδρο. Η ρίζα έχει τουλάχιστον δύο παιδιά, εκτός κι αν είναι φύλλο. Όλα τα φύλλα υπάρχουν στο ίδιο επίπεδο. ιαφορά µε R-δένδρο: εν είναι απαραίτητη ιεραρχική διατύπωση των κλειδιών κάθε κόµβου σε σχέση µε τους προγόνους του (orthogonal classification). 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 18
Γενικευµένα δένδρα αναζήτησης: Κλειδιά Συνάφεια : Consistent (entry, predicate) αποφασίζει τα υποδένδρα όπου θα συνεχιστεί η αναζήτηση (όσα ικανοποιούν το κατηγόρηµα, έλεγχος σε πολλαπλά µονοπάτια) Ένωση : Union (entry []) Συνένωση κατηγορηµάτων κόµβων σε ένα γενικό κατηγόρηµα Συµπίεση : Compress (entry E) των κατηγορηµάτων για µείωση χώρου στα κλειδιά Αποσυµπίεση : Decompress (entry E) αλλά πιθανόν µε απώλειες (lossy) Ποινή : Penalty (entry E1, entry E2) πόσο κοστίζει η εισαγωγή του Ε1 στο υποδένδρο µε ρίζα το Ε2. π.χ. στο R-δένδρο: ελάχιστη αύξηση των παραλληλογράµµων. ιάσπαση : PickSplit (entry E[]) αν ο κόµβος υπερβεί τα Μ στοιχεία, µοίρασε τα Μ+1 στοιχεία του σε δύο άλλους κόµβους, ο καθένας µε τουλάχιστον km στοιχεία. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 19
Γενικευµένα δένδρα αναζήτησης: Αλγόριθµοι Τυποποιηµένες λειτουργίες δένδρων: αναζήτηση, εισαγωγή, διαγραφή. γενικοί αλγόριθµοι ενηµέρωσης και προσπέλασης του GiST στα κλειδιά χρησιµοποιείται πληροφορία ανάλογα µε την εφαρµογή (λ.χ. παραλληλόγραµµα για R-δένδρα, διαστήµατα για B-δένδρα). Αναζήτηση: Ξεκίνα πάντα από τη ρίζα. ιάσχισε όλα τα µονοπάτια των οποίων τα κατηγορήµατα εµφανίζουν συνάφεια µε το ζητούµενο αντικείµενο. Στα φύλλα, κάνε τον τελικό έλεγχο στα πραγµατικά στοιχεία. Αν το πεδίο τιµών είναι γραµµικά διατεταγµένο (λ.χ. ακέραιοι σε Β-δένδρο), τότε τα στοιχεία εισάγονται διατεταγµένα στους κόµβους. => διάσχιση ενός µόνο µονοπατιού στο δένδρο: του αριστερότερου που εµφανίζει συνάφεια µε το αντικείµενο. Λειτουργία Next για την προσκόµιση του επόµενου στοιχείου στον κόµβο (αλλά ισχύει πάντα για τα φύλλα σε διασυνδεδεµένη λίστα) 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 20
Γενικευµένα δένδρα αναζήτησης: Αλγόριθµοι Εισαγωγή: Λογική παραπλήσια µε εκείνη των R-δένδρων: Ξεκίνα από τη ρίζα. Εντόπισε το φύλλο όπου πρέπει να γίνει η εισαγωγή. Σε κάθε επίπεδο του δένδρου, µπορεί να χρειαστεί να επιλεγεί το καταλληλότερο υποδένδρο: αυτό µε το µικρότερο κόστος (Penalty). Το κόστος εκτιµάται τοπικά σε επίπεδο κόµβου (όπως στα R-δένδρα). Βάλε το στοιχείο στο φύλλο. Αν χρειαστεί, διάσπασε το φύλλο και αναδιοργάνωσε το δένδρο διαδίδοντας τις αλλαγές προς τα πάνω. Προσάρµοσε τα κλειδιά των προγόνων, ώστε να αντιπροσωπεύουν ακριβώς τα σύνολα τιµών που περιέχονται στο υποδένδρο τους. ιαγραφή: Όπως στα R-δένδρα: µε επανεισαγωγές στοιχείων. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 21
Γενικευµένα δένδρα αναζήτησης: Εφαρµογές Το GiST χειρίζεται αναζητήσεις, εισαγωγές και διαγραφές. Οι υλοποιήσεις των µεθόδων για τα κλειδιά ορίζονται βάσει της εφαρµογής και των δεδοµένων που θα δεικτοδοτηθούν. Τρεις υλοποιήσεις: Β + -δένδρο για ακέραιες τιµές: ερωτήµατα ισότητας, εύρους τιµών. R-δένδρο για 2-διάστατα πολύγωνα: ερωτήµατα ισότητας, επικάλυψης, εγκλεισµού. µπορεί να εκφράσει τοπολογικές σχέσεις και άπειρες περιοχές. µπορεί να µιµηθεί και το R*-δένδρο, αλλά ΟΧΙ το R + -δένδρο. το R + -δένδρο παραβιάζει την ιεραρχία των διαµερίσεων των στοιχείων, αφού επιτρέπει διπλότυπα στα φύλλα. RD-δένδρο ( Russian Doll tree ) για χειρισµό πλειότιµων στοιχείων: ερωτήµατα ισότητας, επικάλυψης, εγκλεισµού. σύνολα ακεραίων τιµών στα κλειδιά κάθε κλειδί συµπεριλαµβάνει τα κλειδιά των παιδιών του. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 22
Γενικευµένα δένδρα αναζήτησης: Αξιολόγηση Επιδόσεις: Ποικίλουν ανάλογα µε το βαθµό επικάλυψης των κλειδιών στους κόµβους: Επικάλυψη δεδοµένων => επικάλυψη κλειδιών. Απώλεια πληροφορίας λόγω συµπίεσης στα κλειδιά. Λιγότερος κώδικας: µόνο οι µέθοδοι των κλειδιών χρειάζονται υλοποίηση. Ενιαίο πλαίσιο για τη δεικτοδότηση στοιχείων σε βάσεις δεδοµένων. Προεκτάσεις: Επέκταση για ερωτήµατα συνάθροισης και εγγύτερου γείτονα. Αντιµετώπιση ταυτόχρονων δοσοληψιών, ανάνηψη. ΤΕΛΙΚΑ: Πόσο αποτελεσµατικό µπορεί να είναι ένα δένδρο αναζήτησης για ερωτήµατα σε µη τυποποιηµένα πεδία τιµών; Θεωρία «δεικτοδοσιµότητας» (?!) (Indexability Theory). 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 23
Τεχνικές προσπέλασης σε πολυδιάστατες βάσεις δεδοµένων µε χρήση δένδρων Αναφορές [BKSS90]N. Beckman, H.-P. Kriegel, R. Schneider, and B. Seeger. The R*-tree: an Efficient and Robust Access Method for Points and Rectangles. In Proceedings of the 9th ACM SIGMOD International Conference on Management of Data, pp. 322-331, Atlantic City, May 1990. [GG98] V. Gaede, and O. Günther. Multidimensional Access Methods. ACM Computing Surveys, 30 (2): 170-231, 1998. [Gut84] A. Guttman. R-Trees: A Dynamic Index Structure for Spatial Searching. In Proceedings of the 3rd ACM SIGMOD International Conference on Management of Data, pp. 47-57, Boston, Massachusetts, June 1984. [HNP95] J. M. Hellerstein, J. F. Naugton, and A. Pfeffer. Generalized Search Trees for Database Systems. In Proceedings of the 21st International Conference on Very Large Data Bases, pp. 562-573, Zurich, 1995. [SRF87] T. Sellis, N. Roussopoulos, and C. Faloutsos. The R + -Τree: a Dynamic Index for Multidimensional Objects. In Proceedings of the 13th International Conference on Very Large Data Bases, pp. 507-518, Brighton, England, 1987. 28/5/2004 Προχωρηµένα Ερευνητικά Θέµατα Βάσεων εδοµένων 24