Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

R-tree, R*-tree und R + -tree Seminar Geoinformation WS 01/02 Zugriffstruktur auf mehrdimensionale räumliche Objekte Institut für Kartographie und Geoinformation.

Ähnliche Präsentationen


Präsentation zum Thema: "R-tree, R*-tree und R + -tree Seminar Geoinformation WS 01/02 Zugriffstruktur auf mehrdimensionale räumliche Objekte Institut für Kartographie und Geoinformation."—  Präsentation transkript:

1 R-tree, R*-tree und R + -tree Seminar Geoinformation WS 01/02 Zugriffstruktur auf mehrdimensionale räumliche Objekte Institut für Kartographie und Geoinformation der Universität Bonn Betreuer:Dipl.-Inform. Ingo Petzold Verfasser:Andreas Joisten

2 Inhaltsverzeichnis 1.Einleitung 2.Der R-tree 2.1Struktur und Eigenschaft des R-tree 2.2Algorithmen des R-tree 2.2.1Such 2.2.2Einfüge 2.2.3Spalt 2.2.4Lösch 3.R*-tree und R + -tree - Algorithmus

3 Einleitung Anforderung an Zugriffstruktur:multidimensionaler Suchbereich Versagen des B-Baumes, da eindim. Ordnung der Indexwerte Multidimensionale Indexmethode: –Approximation räumlicher Objekte durch kleinste umgebene bounding box –bounding box: im 3-D = Quader ; im 2-D = Rechtecke Lage und Flächeninhalt/Volumen bekannt –Implementierung: Zugriff auf Datenobjekte über Pointer Speicherung der bounding boxen in Zugriffstruktur oder in Datenobjekten

4 Struktur des r-tree R 1 R 2 R4R4 R 3 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Wurzel: bounding box, Pointer auf Söhne

5 Struktur des r-tree R 1 R 2 R4R4 R 3 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Wurzel: bounding box, Pointer auf Söhne Innere Knoten: bounding box, Pointer auf Söhne

6 Struktur des r-tree R 1 R 2 R4R4 R 3 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Wurzel: bounding box, Pointer auf Söhne Innere Knoten: bounding box, Pointer auf Söhne Blätter: bounding box, Pointer auf Datenobjekt R 1 R 2 R 3 R4R4

7 Festlegungen des r-tree R 1 R 2 R4R4 R 3 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Einträgen pro Knoten -mindest Anzahl m = 2 -maximale Anzahl M = 4

8 Eigenschaften des r-tree R 1 R 2 R4R4 R 3 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Die Wurzel hat mind. 2 Söhne außer sie ist ein Blatt Jeder Knoten außer der Wurzel besitzt zw. m und M Einträge Alle Blätter befinden sich auf derselbe Höhe

9 Such-Algorithmus R 1 R 2 R4R4 R 3 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Frage: Liegt innerhalb des Suchgebiets eine Stadt? Definiere: bounding box des Suchgebiets

10 Such-Algorithmus R 1 R 2 R4R4 R 3 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Suchgebiet innerhalb aktuellem Knoten ? Suchgebiet innerhalb Wurzel

11 Such-Algorithmus R 3 R 4 R6R6 R 5 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Suchgebiet innerhalb aktuellem Knoten ? Suchgebiet innerhalb R 1 Suchgebiet außerhalb R 2 Suche im linken Teilbaum

12 Such-Algorithmus R 3 R 4 R6R6 R 5 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Suchgebiet innerhalb aktuellem Knoten ? Suchgebiet innerhalb R 3 R 3 Suchgebiet innerhalb R 4 R 4

13 Such-Algorithmus R 3 R 4 R6R6 R 5 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Suchgebiet innerhalb aktuellem Knoten ? A B Suchgebiet innerhalb C C D Suchgebiet innerhalb E E F G

14 Such-Algorithmus Wurzel R 5 R 6 R 3 R 4 ABCDEFGHIJKLMNO R7R7 R1R1 R2R2 E C Keine Information in C Stadt in E Welches Datenobjekt liegt innerhalb des Suchgebiets?

15 Einfüge-Algorithmus R 3 R 4 R6R6 R 5 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Zuordnung nach geringstem Flächenzuwachs bzw geringster Fläche der bounding boxen Z Zuordnung R 1

16 Einfüge-Algorithmus R 3 R 4 R6R6 R 5 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCDEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Zuordnung nach geringstem Flächenzuwachs bzw geringster Fläche Z Zuordnung R 3 überlauf des Blattes

17 Spalt-Algorithmus Aufgabe:Verteilung der M + 1 Einträge auf zwei neue Knoten Wichtig:Struktur des r-tree von der Gestaltung der neuen Knoten abhängig worse case:zufällige Zuordnung der Einträge Überlagerung der bounding boxen schlechte Suche Systematische Zuordnung:entfernungsabhängiges Einfügen der Einträge

18 Aufspalten eines Knotens/Blattes R 3 B D C A Wurzel R 5 R 6 R 3 R 4 ABDEFGHIJKLMNO R7R7 R1R1 R2R2 Z Z Suche: 2 Einträge, die die neuen Blätter festlegen Forderung: 2 Einträge mit max. Abstand C CB B C A A Z Z R 3 := A und R 3 := Z

19 C Aufspalten eines Knotens/Blattes R 3 D C A Wurzel R 5 R 6 R 3 R 4 ABDEFGHIJKLMNO R7R7 R1R1 R2R2 Z Z A A Z Z F_A B und F_Z B Ziel: Flächenzuwachs der verbleibenden Einträgen zu A, Z B B B

20 C Aufspalten eines Knotens/Blattes R 3 C A Wurzel R 5 R 6 R 3 R 4 ABDEFGHIJKLMNO R7R7 R1R1 R2R2 Z Z A A Z Z Ziel: Flächenzuwachs der verbleibenden Einträgen zu A, Z B C C D

21 C Aufspalten eines Knotens/Blattes R 3 C A Wurzel R 5 R 6 R 3 R 4 ABDEFGHIJKLMNO R7R7 R1R1 R2R2 Z Z A A Z Z Ziel: Flächenzuwachs der verbleibenden Einträgen zu A, Z B D D D

22 C Aufspalten eines Knotens/Blattes R 3 C A Wurzel R 5 R 6 R 3 R 4 ABDEFGHIJKLMNO R7R7 R1R1 R2R2 Z Z A A Z Z B D Ziel: je geringer der Abstand eines Daten- objekts zu den Ursprungselementen, desto eher das Einfügen Ansatz: Flächendifferenzen F_A B – F_Z B = D B Reihenfolge des Einfügens nach größter Flächendifferenz

23 Neue Struktur des R-tree R 4 R6R6 R 5 B D E F G C A L M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCZEFGHIJKLMNO N O R7R7 R7R7 R1R1 R2R2 Z D R3R3 R3R3 R3R3

24 R 4 R6R6 R 5 B D E F G C A M H I K J Wurzel R 5 R 6 R 3 R 4 Wurzel ABCZEFGHIJKMNO N O R7R7 R7R7 R1R1 R2R2 Z D R3R3 R3R3 R3R3 Lösch-Algorithmus Lösche: L L LM R6R6 R 6 kann nicht existieren bounding box verkleinern Such-Algorithmus L Datenobjekt löschen L

25 R 4 R 5 B D E F G C A M H I K J Wurzel R 5 R 7 R 3 R 4 Wurzel ABCZEFGHIJKMNO N O R7R7 R1R1 R2R2 Z D R3R3 R3R3 R3R3 Lösch-Algorithmus Löschen u. wiedereinfügen von M kleinerer Flächenzuwachs zu R 7

26 R 4 R 5 B D E F G C A M H I K J Wurzel R 5 R 7 R 3 R 4 Wurzel ABCZEFGHIJKMNO N O R7R7 R1R1 R2R2 Z D R3R3 R3R3 R3R3 Neue Struktur des R-tree

27 Optimierungen bei dem R-tree Reduktion der Überlappungen weniger Suchpfade Überlappung Freifläche der bounding box minimieren bessere Approximation durch bounding box Feifläche Maximierung der Anzahl der Einträge Reduzierung der Höhe

28 R*-tree R*-tree als Fortführung des R-tree –Kriterium des R-tree:geringster Flächenzuwachs –Kriterien des R*-tree: Innere Knoten nach geringsten Flächenzuwachs Blätter nach geringster Überlappung der bounding boxen Verbesserung der Suchperformance: –Änderung der Einfüge- u. Teilungsstrategien –Einführung des erzwungenen Wiedereinfügens

29 R + -tree D F K J D F H K J H BA FDGJHK CA FDGHG B JK Keine Überlappung der Inneren Knoten R-tree R + -tree G GG GGG AA B B C


Herunterladen ppt "R-tree, R*-tree und R + -tree Seminar Geoinformation WS 01/02 Zugriffstruktur auf mehrdimensionale räumliche Objekte Institut für Kartographie und Geoinformation."

Ähnliche Präsentationen


Google-Anzeigen