Γεωγραφικά Πληροφοριακά Συστήµατα (Geographical Information Systems - GIS)

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

MBR Ελάχιστο Περιβάλλον Ορθογώνιο (Minimum Bounding Rectangle) Το µικρότερο ορθογώνιο που περιβάλλει πλήρως το αντικείµενο 7 Παραδείγµατα MBR 8 6.

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

ΠΡΟΧΩΡΗΜΕΝΑ ΘΕΜΑΤΑ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ

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

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

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

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

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

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

Multimedia IR. εικτοδότηση και Αναζήτηση. Ανάκτηση Πληροφορίας

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

Αποθήκες εδοµένων και Εξόρυξη Γνώσης (Data Warehousing & Data Mining)

Multimedia IR. Εισαγωγή. Εισαγωγή. εικτοδότηση και Αναζήτηση

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

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

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

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

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

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

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

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

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

Διάλεξη 14: Δέντρα IV - B-Δένδρα

R-Trees, kd-trees, QuadTrees. Εαρινό Εξάμηνο Τμήμα Μηχανικών Η/Υ και Πληροϕορικής Πολυτεχνική Σχολή, Πανεπιστήμιο Πατρών

Χωρικές και Πολυμεσικές Βάσεις Δεδομένων (ΠΜΣ) Ενδεικτικές ερωτήσεις-θέματα για την εξέταση της θεωρίας

Διάλεξη 14: Δέντρα IV B Δένδρα. Διδάσκων: Παναγιώτης Ανδρέου

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

Εισαγωγή στην PostgreSQL Spatial 8.1

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

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

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

Αλγόριθμοι και Δομές Δεδομένων (IΙ) (γράφοι και δένδρα)

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

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

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

Εισαγωγή στην Oracle Spatial 10g

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

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

Ανάκτηση Πληροφορίας

Αναλυτικές λειτουργίες ΣΓΠ

Οι διαθέσιμες μέθοδοι σε γενικές γραμμές είναι:

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

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

Μεθοδολογίες παρεµβολής σε DTM.

Θέμα: Ανάπτυξη Βασικής Πλατφόρμας για Υπηρεσίες με Βάση το Προφίλ και τη Θέση (Profile & Location Based Services)

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

ΜΟΝΑΔΕΣ ΑΡΙΣΤΕΙΑΣ ΑΝΟΙΧΤΟΥ ΛΟΓΙΣΜΙΚΟΥ

Γεωγραφικά Πληροφοριακά Συστήµατα (Geographical Information Systems GIS)

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

Γενικό ποσοστό απασχόλησης ισοδύναμου πλήρως απασχολούμενου πληθυσμού - σύνολο

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

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΟΝΤΕΛΟΠΟΙΗΣΗ-ΨΗΦΙΑΚΗ ΣΥΝΘΕΣΗ ΕΙΚΟΝΩΝ Διδάσκων: Ν. ΝΙΚΟΛΑΙΔΗΣ

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

Εισαγωγή στη χρήση των Συστηµάτων Γεωγραφικής Πληροφορίας

Σχεδίαση Βάσεων Δεδομένων. Χωρικές Βάσεις Δεδομένων και Μέθοδοι Προσπέλασης Μανώλης Μαραγκουδάκης

Αφηρημένες Δομές Δεδομένων. Στοίβα (Stack) Υλοποίηση στοίβας

Βάσεις Δεδομένων (Databases)

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

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

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

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

Μοντελοποίηση Γεωγραφικών Δεδομένων

Ανάκτηση Πληροφορίας

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

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

Μερίδιο εργοδοτουμένων με μερική ή / και προσωρινή απασχόληση στον εργοδοτούμενο πληθυσμό 15+ χρονών - σύνολο

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

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

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

Διάλεξη 18: B-Δένδρα

Κεφάλαιο 2 ο Βασικές Έννοιες Αλγορίθμων (σελ )

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

Γενικό ποσοστό συμμετοχής στην αγορά εργασίας πληθυσμού χρονών - σύνολο

Γιάννης Θεοδωρίδης Εργαστήριο Πληροφοριακών Συστηµάτων (

9. Κόκκινα-Μαύρα Δέντρα

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

Θεματολογία. Χωρικά στοιχεία σε βάσεις δεδομένων;

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών

Ονοματεπώνυμο: Αριθμός Μητρώου:

Γενικός ρυθμός μεταβολής οικονομικά ενεργού πληθυσμού χρονών - σύνολο

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

Πανεπιστήµιο Πειραιώς Τµήµα Πληροφορικής. Εξόρυξη Γνώσης από εδοµένα (Data Mining) Συσταδοποίηση. Γιάννης Θεοδωρίδης

PostgreSQL. Oracle. Εαρινό Εξάμηνο

Ποσοστό απασχόλησης στον τριτογενή τομέα του πληθυσμού χρονών - σύνολο

Δομές δεδομένων και ψηφιακή αναπαράσταση χωρικών φαινομένων

Αναλυτικές λειτουργίες ΓΠΣ

ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ ΓΕΩΓΡΑΦΙΚΑ ΣΥΣΤΗΜΑΤΑ ΠΛΗΡΟΦΟΡΙΩΝ - ΕΝΟΤΗΤΑ 1 7/4/2013 ΕΝΟΤΗΤΕΣ ΜΑΘΗΜΑΤΟΣ. Ορισμός

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός

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

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

Ποσοστό μακροχρόνιας ανεργίας (διάρκεια 12+ μήνες) οικονομικά ενεργού πληθυσμού 15+ χρονών - σύνολο

Geographic Information System(GIS)

Δομές Δεδομένων (Εργ.) Ακ. Έτος Διδάσκων: Ευάγγελος Σπύρου. Εργαστήριο 10 Δυαδικά Δένδρα Αναζήτησης

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

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

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

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

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

Transcript:

Πανεπιστήµιο Πειραιώς, Τµήµα Πληροφορικής Γεωγραφικά Πληροφοριακά Συστήµατα (Geographical Information Systems - GIS) Χωρικά Σ Β φυσικό επίπεδο (ευρετήρια, επεξεργασία χωρικών ερωτήσεων) Γιάννης Θεοδωρίδης, Νίκος Πελέκης, Ηλίας Φρέντζος Εργαστήριο Πληροφοριακών Συστηµάτων (InfoLab) http://infolab.cs.unipi.gr/ Πειραιάς, 7/5/09 Φυσικό µοντέλο σχεδιασµού 3 επίπεδα σχεδιασµού Β Εννοιολογικό µοντέλο: υψηλού επιπέδου αφαιρετική περιγραφή Λογικό µοντέλο: πραγµατοποιήσιµη περιγραφή Φυσικό µοντέλο: υλοποίηση Τι είναι ένα φυσικό µοντέλο Β ; Πώς θα υλοποιηθεί αυτό που περιγράφεται στο λογικό µοντέλο Με χρήση βασικών στοιχείων, π.χ. hardware Η/Υ, λειτουργικό σύστηµα Με αποτελεσµατικό και χωρίς σφάλµατα τρόπο 4.1

Τι είναι ένα φυσικό µοντέλο Β ; Λόγοι µάθησης εννοιών φυσικών µοντέλων Σωστή επιλογή εµπορικών Σ Β Μερικά Σ Β δεν υποστηρίζουν ευρετήρια πάνω σε χωρικά δεδοµένα! Σωστή διαχείριση δυνατοτήτων Σ Β µε στόχο τον καλύτερο συντονισµό της απόδοσης του (performance tuning) Παράδειγµα: µία ερώτηση εκτελείται αργά, Ίσως χρειάζεται να δηµιουργηθεί ένα ευρετήριο Παράδειγµα: δεν µπορεί να φορτωθεί µεγάλος αριθµός εγγραφών Θα µπορούσαν να καταργηθούν τα ευρετήρια πριν τη φόρτωση και να ξαναδηµιουργηθούν µετά τη φόρτωση των δεδοµένων! Φυσικό µοντέλο δεδοµένων για ΧΣ Β Είναι το σχεσιακό µοντέλο των Σ Β κατάλληλο για τα χωρικά δεδοµένα; Τα σχεσιακά Σ Β παρέχουν απλούς τύπους τιµών, όπως αριθµοί και συµβολοσειρές Έννοια της ολικής διάταξης τα δένδρα αναζήτησης είναι αποτελεσµατικά για αριθµούς Οι έννοιες αυτές δεν έχουν ιδιαίτερο νόηµα για τα χωρικά δεδοµένα (π.χ. σηµεία στο επίπεδο) Εναλλακτικές λύσεις: Επαναχρησιµοποίηση εννοιών σχεσιακού µοντέλου Καινοτόµες χωρικές τεχνικές 4.2

Υποθέσεις για το φυσικό µοντέλο ΧΣ Β Χωρικά δεδοµένα Οαριθµός διαστάσεων του χώρου είναι µικρός π.χ. 2 ή 3 Τύποι δεδοµένων: συµβατοί µε τοopengis πρότυπο Προσεγγίσεις αντικειµένων µε έκταση(π.χ. γραµµές, πολύγωνα) Minimum (Orthogonal) Bounding Rectangle (MOBR ή MBR) MBR(obj) είναι το µικρότερο ορθογώνιο παραλληλόγραµµο (παραλληλεπίπεδο κλπ.) που περιβάλλει το αντικείµενο obj Ανάγκη φιλτραρίσµατος και εκλέπτυνσης (filter and refinement) France Χωρικές λειτουργίες Λειτουργίες OpenGIS προτύπου π.χ. τοπολογικές, χωρικής ανάλυσης Απλές χωρικές ερωτήσεις επόµενη διαφάνεια Απλές χωρικές ερωτήσεις και λειτουργίες Το φυσικό µοντέλο παρέχει απλές λειτουργίες που χρειάζονται στην επίλυση χωρικών ερωτήσεων! Συνηθισµένες ερωτήσεις Point query: Βρες όλα τα αντικείµενα που περικλείουν ένα δοθέν σηµείο Range query: Βρες όλα τα αντικείµενα που κείνται µέσα σε µια (συνήθως ορθογώνια) περιοχή Nearest neighbor query: Βρες το πλησιέστερο αντικείµενο σε σχέση µε ένασηµείο Spatial Join (µεταξύ δύο συνόλων αντικειµένων): Βρες όλα τα ζεύγη αντικειµένων (ένα από κάθε σύνολο) που ικανοποιούν µια χωρική συνθήκη (συνήθως, overlap) 4.3

Ηδιαδικασία«Filter-Refinement» Επεξεργασία µίας χωρικής ερώτησης Q βήµα φιλτραρίσµατος (Filter): βρες ένα σύνολο S που σίγουρα περιέχει και τις απαντήσεις του Q Με χρήση προσεγγιστικών χωρικών τύπων και λειτουργιών βήµα εκλέπτυνσης(refinement): βρες τις ακριβείς απαντήσεις του Q κάνοντας χρήση ενός GIS για την επεξεργασία του S Με χρήση επακριβών χωρικών τύπων και λειτουργιών Filter step Query Refinement step Load object geometry Spatial index Test on exact geometry Candidate set False hits Hits Query result Προσεγγιστικοί χωρικοί τύποι Minimum (orthogonal) bounding rectangle (MBR) προσεγγίζει γραµµές, πολύγωνα, Τα MBRs χρησιµοποιούνται κατά κόρον από χωρικά ευρετήρια, π.χ. R-tree Οι αλγόριθµοι για χωρικές λειτουργίες σε MBRs είναι απλοί Τα Χωρικά Σ Β επεξεργάζονται MBRs στο βήµα filter (για λόγους επίδοσης) 4.4

Παράδειγµα εφαρµογής MBR NO FI IC SW UK DE IR GE NL PL FR BE LU CH U HU CZ RO BU YU PO L SP IT GR Παράδειγµα filter refinement (1) Οι τοπολογικοί τελεστές του Egenhofer προσεγγίζονται µέσω του τελεστή Overlap Παράδειγµα: inside(, B) η συνθήκη overlap(mbr(), MBR(B)) είναι αναγκαία (αλλά όχι ικανή) γιαναισχύειinside(, B) οπότε στο filter βήµα εκτελείται ο (προσεγγιστικός και πιο φθηνός) τελεστής overlap(mbr(), MBR(B)) και στο refinement βήµα εκτελείται ο (ακριβής αλλά και χρονοβόρος) τελεστής inside(, B) 4.5

Παράδειγµα filter refinement (2) Ερώτηση: Βρες τα αντικείµενα που βρίσκονται µπροστάαπότοθεατήv Ισοδύναµο µεερώτησηεπικάλυψης (overlap query) Η περιοχή κατεύθυνσης είναι ένα πολύγωνο Η απάντηση περιλαµβάνει τα αντικείµενα που έχουν επικάλυψη µε τοπολύγωνο( front(v) ) Προσεγγιστική ερώτηση Βρες τα αντικείµενα που έχουν επικάλυψη µε το MBR(polygon (front (V))) Οργάνωση αρχείων & ευρετήρια Επαναχρησιµοποίηση εννοιών σχεσιακού φυσικού µοντέλου η έννοια της διάταξης (ordering) Οι καµπύλες διάσχισης χώρου (space filling curves) ορίζουν µία ολική διάταξη για τα σηµεία Αυτή η ολική διάταξη βοηθάει στη χρήση διατεταγµένων αρχείων (ordered files) ή δένδρων αναζήτησης (search trees) π.χ. B-trees Αλλά µπορεί να οδηγήσει σε αναποτελεσµατικούς υπολογισµούς! Καινοτόµες τεχνικές Χωρικά ευρετήρια, π.χ. δένδρα περιοχών (R-trees), δένδρα τεταρτηµορίων (Quadtree), αρχεία πλέγµατος (Gridfile) Παρέχουν καλύτερες αποδόσεις στους υπολογισµούς 4.6

ιατεταγµένα αρχεία Γενικά ένα διατεταγµένο αρχείο οµαδοποιεί τις εγγραφές που προσπελαύνονται από πολλές ερωτήσεις σε κοινούς τοµείς δίσκου για τη µείωση του I/O κόστους για επιλεγµένες ερωτήσεις Πρόβληµα: Ηδιάταξηδενέχεικάποιοφυσικόνόηµα σταχωρικάδεδοµένα Πιθανή λύση: Οµαδοποίηση των εγγραφών µε χρήση µιας «καµπύλης διάσχισης χώρου» (space filling curve) Παραδείγµατα: Z-curve, Hilbert-curve ιάσχιση Z Τι είναι µία Z-curve? Μία καµπύλη διάσχισης χώρου Παραγόµενη από διαπλεκόµενα (interleaved) bits x, y συντεταγµένες Εναλλακτική µέθοδος δηµιουργίας: συνδέοντας σηµεία µε z-order Μοιάζει µε N ή Z x 0 0 1 0 y 0 1 0 0 (2,4) 0 0 0 1 1 0 0 0 (24) n 0 n 1 n 2 n 3 4.7

Παράδειγµα Z-τιµών Το αριστερό µέρος δείχνει ένα χάρτη µε τα χωρικά αντικείµενα, B, C Το δεξί και κάτω αριστερό µέρος Z-τιµές στα, B και C Παρατηρήστε ότι το C παίρνει z-values 2 και 8, οι οποίες δεν είναι κοντά Άσκηση: Υπολογίστε τις z-τιµές για το B Y Object Points x y interleave z-value 11 B 1 00 11 0101 5 10 B 1 01 00 C 2 3 4 00 01 10 11 X C 1 01 00 0010 2 2 10 00 1000 8 0 4 7 8 12 16 ιάσχιση Hilbert Τι είναι µία Hilbert curve? Μία καµπύλη διάσχισης χώρου Πιο πολύπλοκη στη δηµιουργία της από τη Z Λόγω περιστροφών (στα 2 κάτω τεταρτηµόρια) n 0 n 1 n 2 n 3 11 10 01 00 00 01 10 11 4.8

Χωρικά ευρετήρια Η δοµή ενός index εξαρτάται από τον τύπο δεδοµένων του δεικτοδοτούµενου χαρακτηριστικού (attribute) Χαρακτηριστικά µε ολική διάταξη αριθµοί, συµβολοσειρές, σηµεία ταξινοµηµένα µε καµπύλες διάσχισης χώρου Το B-tree είναι µία δηµοφιλής δοµή οργάνωσης τέτοιων τύπων Χωρικά αντικείµενα (π.χ. πολύγωνα) Η χωρική οργάνωση είναι πιο αποτελεσµατική Εκατοντάδες προτάσεις στη βιβλιογραφία ύο βασικές οικογένειες: Τετραδικά δέντρα (Quadtrees) και R-δέντρα (R-trees) Παράδειγµα Quadtree 4.9

Ιδιότητες Quadtree Ιεραρχική αποσύνθεση του χώρου σε τεταρτηµόρια (quadrants) Κάθε επίπεδο στο Quadtree αναπαριστά το αντικείµενο ως σύνολο MBRs µε βάση τα τεταρτηµόρια ανάλυσης του χώρου. Κάθε επίπεδο είναι µια πιο ακριβής αναπαράσταση του αντικειµένου. Ο αριθµός των απαιτούµενων επιπέδων εξαρτάται από την επιθυµητή ακρίβεια. Παράδειγµα R-tree 4.10

Ιδιότητες R-tree Βασική ιδέα Γενίκευση B-tree σε χωρικά δεδοµένα Ιδιότητες των R-trees Ισοζυγισµένα / Οι κόµβοι είναι ορθογώνια / Το ορθογώνιο-παιδί περιέχεται εντός του ορθογωνίου-πατέρα Η αναζήτηση γίνεται µε κατάβαση στο δένδρο Μπορεί να προκύψει χωρική επικάλυψη µεταξύ των κόµβων! K-D tree Παραλλαγή του δυαδικού δένδρου αναζήτησης (BST). Κάθε επίπεδο χρησιµοποιείται για να δεικτοδοτήσει µια από τις διαστάσεις του χωρικού αντικειµένου. Κάθε κελί του κατώτατου επιπέδου έχει ένα µόνο αντικείµενο εντός του. Οι διαιρέσεις δεν γίνονται µε χρήση MBR αλλά µε διαδοχικές διαιρέσεις του χώρου της διάστασης. 4.11

Grid File Βασική ιδέα ιαίρεση του χώρου σε κελιά µέσω ενός πλέγµατος Παράδειγµα: συντεταγµένες lat/lon Αποθήκευση δεδοµένων κάθε κελιού σε χωριστό τοµέα δίσκου Πρόβληµα: Ανοµοιόµορφη κατανοµή δεδοµένων στο χώρο 200 150 100 50 D C B 50 100 150 200 Βελτίωση αρχικής ιδέας Χρήση ανοµοιόµορφων πλεγµάτων Επιτρέπουµε διαµοιρασµό τωντοµέων δίσκου µεταξύ κελιών του πλέγµατος Επεξεργασία & βελτιστοποίηση ερωτήσεων Query Processing and Optimization (QPO) Βασική ιδέα QPO Στην SQL, οι ερωτήσεις εκφράζονται σε µία υψηλού επιπέδου δηλωτική µορφή Η διαδικασία QPO µεταφράζει µία SQL ερώτηση σε ένα «σχέδιο εκτέλεσης» (execution plan) Πάνω στο φυσικό µοντέλο δεδοµένων Χρησιµοποιώντας λειτουργίες σε δοµές αρχείων, ευρετήρια κτλ. Ένα ιδανικό σχέδιο εκτέλεσης απαντά στην ερώτηση Q στο συντοµότεροδυνατόχρόνο Περιορισµοί: Το κόστος της διαδικασίας QPO πρέπει να είναι µικρό Υπολογιστικός χρόνος του QPO << χρόνος εκτέλεσης της Q 4.12

Τρεις έννοιες-κλειδιά για QPO οµικά συστατικά (building blocks) Τα σχεσιακά Σ Β έχουν λίγα δοµικά συστατικά: select (match query, interval query), join, sorting,... Μία ερώτηση SQL αναλύεται σε δοµικά συστατικά Στρατηγικές επεξεργασίας ερωτήσεων για δοµικά συστατικά Τα Σ Β διατηρούν ένα µικρό αριθµό στρατηγικών για κάθε δοµικό συστατικό Π.χ. ένα match query (δηλ. µια συνθήκη ισότητας στο Where clause) µπορεί να απαντηθεί µέσω ενός index (αν υπάρχει) ή διατρέχοντας όλο το αρχείο δεδοµένων (αν δεν υπάρχει index) Βελτιστοποίηση ερωτήσεων Για κάθε δοµικό συστατικό ενός ερωτήµατος, το Σ Β προσπαθεί να επιλέξει Την πιο αποτελεσµατική στρατηγική, δεδοµένων κάποιων παραµέτρων Παραδείγµατα παραµέτρων: µέγεθος πίνακα, διαθέσιµα ευρετήρια, Προκλήσεις της διαδικασίας QPO Επιλογή δοµικών συστατικών Οι ερωτήσεις SQL βασίζονται στη σχεσιακή άλγεβρα Τα δοµικά συστατικά της ΣΑ είναι τα select / project / join Επιλογή στρατηγικών επεξεργασίας δοµικών συστατικών Περιορισµοί: Πολλές στρατηγικές µεγαλύτερη πολυπλοκότητα Τα εµπορικά Σ Β διαθέτουν 10-30 στρατηγικές 2-4 στρατηγικές για κάθε δοµικό συστατικό Πώς επιλέγεται η καλύτερη στρατηγική Χρήση προκαθορισµένου πλάνου προτεραιότητας Χρήση απλού µοντέλου κόστους (cost model) βασισµένου στις παραµέτρους της Β 4.13

Προκλήσεις QPO σε ΧΣ Β Επιλογή δοµικών συστατικών Πλούσιο σύνολο χωρικών τύπων δεδοµένων, λειτουργιών Έλλειψη κοινά αποδεκτών δοµικών συστατικών Ποικίλουν ανάλογα µε τον κατασκευαστή και το προϊόν Ενδεικτικά: spatial selection (point / range / nearest neighbor query), spatial join (overlap / distance join) Επιλογή στρατηγικών εν υπάρχουν πολλές επιλογές! Πώς επιλέγεται η καλύτερη στρατηγική Τα µοντέλα κόστους είναι πιο πολύπλοκα καθώς Οι χωρικές ερωτήσεις έχουν υψηλές απαιτήσεις, τόσο σε CPU όσο και σε I/O Σε αντίθεση µε την παραδοσιακή QPO που έχει µόνο I/O απαιτήσεις Στρατηγικές βάσει µοντέλων κόστους είναι ακόµα σε ερευνητικό επίπεδο Επιλογή δοµικών συστατικών Αντιπροσωπευτικά δοµικά συστατικά (µε παραδείγµατα από χάρτη Ευρώπης) Point Query π.χ. να βρεθεί σε ποιο κράτος ανήκει ένα τονισµένο σηµείο στο χάρτη Range Query π.χ. να βρεθούν όλα τα κράτη που εµφανίζονται στο παράθυρο Nearest Neighbor Query π.χ. να βρεθεί το κράτος που βρίσκεται πλησιέστερα σε ένα τονισµένο σηµείο Spatial Join Query π.χ. να βρεθούν τα ζεύγη των κρατών που συνορεύουν µεταξύ τους NO IC SW FI UK DE IR GE NL PL FR BE LU CH U HU CZ RO BU YU PO L SP IT GR 4.14

Στρατηγικές για Point Queries Point Query π.χ. να βρεθεί σε ποιο κράτος ανήκει ένα τονισµένο σηµείο στο χάρτη Είσοδος: ένα σύνολο χωρικών αντικειµένων D και ένα σηµείο Q Έξοδος: ένα ή περισσότερα αντικείµενα στα οποία ανήκει το σηµείο IC NO SW FI Στρατηγικές: DE Αν οι εγγραφές του D είναι διατεταγµένες IR GE PL (π.χ. σε Z-order) NL Χρησιµοποίησε δυαδική αναζήτηση στη Z- CZ BE LU order FR U RO Κόστος = log 2 B τοµέων δίσκου HU CH Αν υπάρχει χωρικό ευρετήριο πάνω στο D BU YU Χρησιµοποίησε τη λειτουργία point query L του ευρετηρίου PO SP Κόστος = ύψος ευρετηρίου (τυπικές τιµές, IT 4 µε 5) GR UK Στρατηγικές για Range Queries Range Query - π.χ. να βρεθούν όλα τα κράτη που εµφανίζονται στο παράθυρο Είσοδος: ένα σύνολο χωρικών αντικειµένων D και ένα παράθυρο Q Έξοδος: τα αντικείµενα που έχουν επικάλυψη µε το παράθυρο Στρατηγικές: Αν οι εγγραφές του D είναι διατεταγµένες (π.χ. σε Z-order) Προσδιόρισε το εύρος των τιµών του Z- order που ικανοποιούν την ερώτηση Χρησιµοποίησε δυαδική αναζήτηση για την εύρεση της µικρότερης αποδεκτής τιµής Z Συνέχισε µεγραµµική αναζήτηση µέχρι τη µεγαλύτερη αποδεκτή τιµή Z Αν υπάρχει χωρικό ευρετήριο πάνω στο D Χρησιµοποίησε τη λειτουργία range query του ευρετηρίου IC PO IR UK FR SP NO FI SW DE GE PL NL CZ BE LU U HU CH YU L IT RO BU GR 4.15

Στρατηγικές για NN Queries NN Query - π.χ. να βρεθεί το κράτος που βρίσκεται πλησιέστερα σε ένα τονισµένο σηµείο Είσοδος: ένα σύνολο χωρικών αντικειµένων D και ένα σηµείο Q Έξοδος: ένα αντικείµενο, αυτό που βρίσκεται πλησιέστερα στο σηµείο Παραλλαγή: k-nn Query Στρατηγικές: Προσέγγιση σε δύο φάσεις Φόρτωσε τις εγγραφές της σελίδας δίσκου του D που περιέχει την τοποθεσία του σηµείου Q (Point Query) M = minimum distance(q, αντικείµενα που φορτώθηκαν) Έλεγξε όλα τα αντικείµενα σε απόσταση M από το Q (Range Query) Αν υπάρχει χωρικό ευρετήριο πάνω στο D Χρησιµοποίησε τη λειτουργία NN query του ευρετηρίου IC PO IR UK FR SP NO FI SW DE GE PL NL CZ BE LU U HU CH YU L IT RO BU GR Στρατηγικές για Spatial Joins Spatial Join Query π.χ. να βρεθούν τα ζεύγη των κρατών που συνορεύουν µεταξύ τους Είσοδος: δύο σύνολα χωρικών αντικειµένων D 1 και D 2 και ένας χωρικός τελεστής σύνδεσης τ Έξοδος: ένα σύνολο από ζεύγη αντικειµένων (r, s), r D 1 και s D 2, για τα οποία ικανοποιείται ο τελεστής τ Στρατηγικές: φωλιασµένοι βρόγχοι (nested loops): Έλεγξεόλαταπιθανάζευγάριαβάσειτου τελεστή τ ιαµερισµός χώρου (space partitioning): Έλεγξε ζευγάρια αντικειµένων µόνο από κοινές περιοχές Αν υπάρχει χωρικό ευρετήριο πάνω στο D 1 ή/και το D 2 ιάφορες τεχνικές, µε βάσητοαν υπάρχουν και τα δύο ευρετήρια ή µόνο το ένα. IC PO IR UK FR SP NO FI SW DE GE PL NL CZ BE LU U HU CH YU L IT RO BU GR 4.16

ιεργασία QPO Ηδιαδικασία Αφετηρία : Μία SQL ερώτηση Προορισµός: Ένα «καλό» σχέδιο εκτέλεσης Ενδιάµεσες στάσεις ένδρο ερώτησης Λογικός µετασχηµατισµός δένδρου Επιλογή στρατηγικής QUERY PRSER LOGICL TRNSFORMTION DECOMPOSITION DYNMIC PROGRMMING OPTIMIZER SQL GRMMER BSTRCT DT TYPES HEURISTIC RULES NONSPTIL SPTIL HYBRID RCHITECTURE SPECIFICTION SYSTEM CTLOG Selectivity Index CPU Bfr COST FUNCTION SPTIL NONSPTIL EVLUTION MERGE ένδρα ερωτήσεων Κόµβοι = δοµικά συστατικά χωρικών ερωτήσεων Παιδιά = είσοδος στα δοµικά συστατικά Φύλλα = Πίνακες Παράδειγµα SQL ερώτησης και του δένδρου αυτής: Βρες όλες τις λίµνες µε εµβαδόν µεγαλύτερο από 20 km 2 σε ακτίνα 50 km από το χώρο κατασκήνωσης L.Name rea(l.geometry) 20 Fa.Name Campground Distance(Fa.Geometry, L.Geometry) 50 SELECT L.Name FROM Lake L, Facilities Fa WHERE rea(l.geometry) > 20 ND Fa.Name = Campground Lake L ND Distance(Fa.Geometry, L.Geometry) < 50 Facilities Fa 4.17

Λογικοί µετασχηµατισµοί δένδρων ερώτησης Κίνητρο Ο µετασχηµατισµός δεν αλλάζει την απάντηση στην ερώτηση Αλλά αλλάζει το υπολογιστικό κόστος µε Μειώνοντας τα δεδοµένα που παράγονται από τις υπο-ερωτήσεις Μειώνοντας τις υπολογιστικές ανάγκες του πατρικού κόµβου Παράδειγµα µετασχηµατισµού Εκτέλεσε τη λειτουργία select µετά το join Μειώνει το µέγεθος του πίνακα για τη λειτουργία join Άλλοι κοινοί µετασχηµατισµοί Μετάθεση της λειτουργίας project Επαναδιάταξη λειτουργιών join Lake L L.Name rea(l.geometry) 20 Distance(Fa.Geometry, L.Geometry) 50 Fa.Name Campground Facilities Fa Λογικοί µετασχηµατισµοί και χωρικές ερωτήσεις Παραδοσιακοί κανόνες λογικών µετασχηµατισµών Για σχεσιακές ερωτήσεις µε απλούς τύπους δεδοµένων και λειτουργίες Τα CPU κόστη είναι πολύ µικρότερα από τα I/O κόστη Ανάγκη επαναθεώρησης για τις χωρικές ερωτήσεις Πολύπλοκοι τύποι δεδοµένων, λειτουργίες Το κόστος CPU είναι υψηλότερο Παράδειγµα: Μετάθεσε χωρικό selection κάτω από το join Μπορεί να µη µειώσει το κόστος αν ηλειτουργίαarea() είναι ακριβότερη από την distance() L.Name Distance(Fa.Geometry, L.Geometry) 50 rea(l.geometry) 20 Fa.Name Campground Lake L Facilities Fa 4.18

Σχέδια εκτέλεσης Ένα σχέδιο εκτέλεσης έχει τρία µέρη Ένα δένδρο ερώτησης Μία στρατηγική επιλεγµένη για κάθε µη-τερµατικό κόµβο Μία διάταξη αξιολόγησης των µη-τερµατικών κόµβων Παράδειγµα Ψάξε για rea(l.geometry) > 20 Αναζήτηση Fa.Name = Campground µε χρήσηindex Αναζήτηση Distance(Fa, L) < 50 µε χρήσηspace-partitioning join Προβολή on-the-fly ιάταξη (όπως παραπάνω) rea(l.geometry) 20 L.Name Distance(Fa.Geometry, L.Geometry) 50 Fa.Name Campground Lake L Facilities Fa Επιλογή στρατηγικής Επιλογή βάσει κανόνων (rule-based προσέγγιση) Το σύστηµα έχει ένα σύνολο κανόνων που προβάλλουν περιπτώσεις σε επιλογές στρατηγικών Παράδειγµα: Εξαντλητική αναζήτηση στην περίπτωση range query αν το µέγεθος του αποτελέσµατος > 10 % του αρχείου δεδοµένων Επιλογή βάσει κόστους (cost-based προσέγγιση) Για ένα δοµικό συστατικό Χρήση τύπων για τον υπολογισµό του κόστους κάθε στρατηγικής, δεδοµένου του µεγέθους του πίνακα κτλ. Επιλογή στρατηγικής µε το µικρότερο κόστος Για ένα δένδρο ερώτησης Συνδυασµός στρατηγικών ελάχιστου κόστους για τους µη τερµατικούς κόµβους Χρήση αλγορίθµων δυναµικού προγραµµατισµού Τι κάνουν τα εµπορικά συστήµατα Cost-based προσέγγιση για τα σχεσιακά (µη χωρικά) δοµικά συστατικά Rule-based προσέγγισηγιαταχωρικάδοµικά συστατικά τα cost models για τα χωρικά δοµικά συστατικά δεν είναι ακόµη ώριµα 4.19

ΤΕΛΟΣ ΕΝΟΤΗΤΑΣ! 4.20