Seminar: - PowerPoint PPT Presentation

1 / 55
About This Presentation
Title:

Seminar:

Description:

Seminar: Data Warehousing Dirk Pogode R-B ume als Indexstruktur zur Anfrageoptimierung in Data Warehouses Friedrich-Schiller-Universit t Jena – PowerPoint PPT presentation

Number of Views:129
Avg rating:3.0/5.0
Slides: 56
Provided by: Dirk153
Category:

less

Transcript and Presenter's Notes

Title: Seminar:


1
Seminar Data WarehousingDirk Pogode
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Friedrich-Schiller-Universität JenaInstitut für
    InformatikLehrstuhl für Datenbanken und
    Informationssysteme
  • Lehrstuhlinhaber Prof. Dr. Küspert
  • Seminarbetreuer David Wiese Thomas Müller

2
Überblick
  • Motivation
  • (Anfrage-) Optimierung im Data Warehouse
  • Anfragetypen (allgemein)
  • Anfragen im multidimensionalen Modell
  • Indexstrukturen (allgemein)
  • Mehrattribut-Zugriff über klassische
    eindimensionale Zugriffspfade
  • mehrdimensionale Indexstrukturen

3
Überblick
  • der R-Baum
  • Eigenschaften
  • Vergleich des R-Baums mit dem B-/B-Baum
  • Anwendungsgebiete des R-Baums
  • Methoden
  • Search
  • Insert
  • Delete

4
Überblick
  • der R-Baum
  • Eigenschaften
  • Vergleich mit dem R-Baum
  • der R-Baum
  • Eigenschaften
  • Vergleich mit dem R-Baum
  • Schlussbemerkungen

5
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Motivation

6
Motivation
  • Ziel eines Data WarehouseVergleiche
    Auswertungen zu Analysezwecken
  • ?(Such-) Anfragen im Data W. von entscheidender
    Bedeutung
  • ?sehr große Datenmengen
  • ?(viele) versch. Kriterien relevant
  • ?Anfrageergebnis (relativ) schnell
    gewünscht(Performance)
  • ?INDIZES ermöglichen schnelle Beantwortung von
    Suchanfragen

7
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • (Anfrage-) Optimierungim Data Warehouse

8
(Anfrage-) Optimierung
Anfragen transaktional analytisch
Fokus Lesen, Schreiben, Modifizieren, Löschen Lesen,periodisches Hinzufügen
Transaktions-dauer und -typ kurze Lese-/Schreibtransaktionen lange Lesetransaktionen
Anfragestruktur einfach strukturiert komplex
Datenvolumeneiner Anfrage wenige Datensätze viele Datensätze
Datenmodell anfrageflexibel analysebezogen

Daten transaktional analytisch
Datenquellen meist eine mehrere
Eigenschaften nicht abgeleitet, zeitaktuell, autonom, dynamisch abgeleitet, konsolidiert, historisiert, integriert, stabil
Datenvolumen Megabyte - Gigabyte Gigabyte - Terabyte
Zugriffe Einzeltupelzugriff Bereichsanfragen
Vgl. von versch. Anwendungen hinsichtlich
Anfrage- und Datencharakteristik
  • Anfrage-eigenschaften

Daten-eigenschaften
Übersichten aus BaGu04, Kap. 1
9
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Anfragetypen(allgemein)

10
Anfragetypen
  • Punktanfrage(point query)
  • Bereichsanfrage (range query)
  • partielle Bereichsanfrage (partial range query)
  • Partial-Match-Anfrage(partial match query)

Abbildungen aus DTW0405, Kap. 5 nach BaGu04,
Kap. 7.1
11
Anfragetypen
  • zus.-gesetzte Anfragebereiche
  • unregelmäßige Anfrageformen
  • Nearest-Neighbor-Anfragen

Abbildungen aus DTW0405, Kap. 5 nach BaGu04,
Kap. 7.1
12
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Anfragen im multi-dimensionalen Modell

13
Anfragen im multidim. Modell
  • Anwender eines Data W. hat Denkweise in
    Dimensionen und Klassifikationshierarchien
  • häufig Anfragen mit Einschränkungen auf mehreren
    Feldern
  • starke Selektivität der Anfragen
  • Schwerpunkt und Kernfunktion heutigerData
    W.-systeme Informationslieferung
  • Berichte mit Kennzahlen über einen großen
    Datenbestand

14
Anfragen im multidim. Modell
  • Beispiel einer Anfrage

Abbildungen aus DTW0405, Kap. 1
die versch. Dimensionen
Ergebnis als Bericht
15
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Indexstrukturen(allgemein)

16
Indexstrukturen
  • Full-Table-Scan zeitaufwändig und meist nicht
    erforderlich
  • Anzahl der zu lesenden Datenseiten möglichst
    gering halten!
  • Kriterien zur Klassifikationvon Indexstrukturen
  • Clustering
  • Dimensionalität
  • Symmetrie
  • Tupelverweise
  • Dynamisches Verhalten

17
Indexstrukturen
Vergleich von Indexstrukturen
Abbildungen aus DTW0405, Kap. 6 nach BaGu04,
Kap. 7.2
18
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Mehrattributzugriffüber klassische
    eindimen-sionale Zugriffspfade

19
Mehrattributzugriff über klassische eindim.
Zugriffspfade
  • mögliche Lösungen
  • zusammengesetzter Index
  • ?Feldinhalte aneinanderhängen u. über diesen
    zus.-gesetzten Schlüssel indizieren
  • jeweils 1 Index pro Feld
  • ?Schnittmenge der gelieferten Ergebnisse
  • ?langsam ?
  • Wahl nur eines Index nach Selektivität
  • ?gelieferte Kandidaten nachfiltern u. ggf. in
    Ergebnismenge aufnehmen

20
Mehrattributzugriff über klassische eindim.
Zugriffspfade
  • Fazit
  • Beschleunigg. von mehrdim. Anfragen durch eindim.
    Indexstrukturen in best. Maße möglich
  • Verwendung spezieller multidim. Indexstrukturen
    aber deutlich besser

21
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • mehrdimensionale Indexstrukturen

22
mehrdim. Indexstrukturen
  • basieren teilweise auf Datenstrukturen für
    eindim. Indizes ? stark generalisiert
  • z.B.
  • Grid-Files (hash-basiert)
  • ?Transformation eines Intervalls auf einen Punkt
    mit zwei Koordinaten
  • Bitmap-Indizes
  • ?kleiner Wertebereich pro Dim.
  • R-Bäume (baum-basiert)
  • ?Bereichsanfragen!!

23
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • der R-Baum

24
der R-Baum
  • Rectangle Tree (A. Guttman, 1984)
  • dynamische Indexstruktur zum Speichern räumlich
    ausgedehnter Objekte als Intervalle in mehreren
    Dimensionen
  • ist als Sekundärspeicherstruktur konzipiert
  • bei Geodaten Approximation der Objekte durch
    umschließende Rechtecke
  • ?Minimum Bounding Box (MBB) bzw. Rectangle
    (MBR)

25
der R-Baum
  • Minimum Bounding Box
  • (hier für n 2 Dimensionen)

26
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Eigenschaftendes R-Baums

27
R-Baum Eigenschaften
  • Datenobjekte Rechtecke/Quader/HyperCubes
  • Seiten verlaufen parallel zu den Achsen
  • je ein Intervall pro Dimension
  • vollständig balancierter Baum
  • nicht deterministische Struktur
  • Knoten auf einer Ebene des Baums müssen nicht
    disjunkt sein ?Überlappungen mögl.

28
R-Baum Eigenschaften
  • Knoten des Baums
  • Blatt
  • enthält Datenobjekt sowie dessen MBB
  • hat Eintrag der Form (MBB, oID)
  • innerer Knoten
  • umschließt die Boxen seiner Sohn-Knoten?
    wiederum eine MBB
  • hat Eintrag der Form (MBB, nodeID)

29
R-Baum Eigenschaften
  • Bedingungen für die Knoten
  • jeder Knoten hat max. M Einträge
  • jeder Knoten (außer Wurzel) hat min. m Einträge
  • Wurzel ist Blatt oder hat min. 2 Einträge
  • alle Blätter auf der gleichen Ebene
  • Höhe des Baums nach oben beschränkt durch logm N
    und nach unten durch logM N

30
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Vergleich des R-Baumsmit dem B-/B-Baum

31
R-Baum ein Beispiel
zweidim. R-Baummit M4 und m2
32
R-Baum reales Beispiel
in Realität M und m sehr groß
Abbildung aus DWT0405, Kap. 6
33
B- und B-Baum Beispiele
B-Baum
B-Baum
34
Vgl. R-Baum ? B-/B-Baum
  • Gemeinsamkeiten
  • Daten/Objekte in den Blättern
  • höhenbalanciert
  • min. sowie max. Anzahl an Einträgen pro Knoten?
    Löschvorgang evtl. bis zur Wurzel
  • Daten nur in den Blattknoten (bei R- und B-Baum)
  • ein konkretes Datenobjekt in genau einem Knoten
    des Baums (nicht mehrfach)

35
Vgl. R-Baum ? B-/B-Baum
  • Unterschiede

B-/B-Baum R-Baum
mögl. Dimensionen mögl. Dimensionen
nur eine beliebig viele
Löschen Anzahl Einträge in einem Knoten ltm Löschen Anzahl Einträge in einem Knoten ltm
Rotieren an der Stelle, wo das Problem auftritt (u. evtl. weiter) Einfügen der restl. Einträge von der Wurzel aus (? Insert)
Art des Indexeintrags Art des Indexeintrags
(eindeutiger!) Punktwert Intervall (pro Dimension)
Söhne eines Knotens disjunkt? Söhne eines Knotens disjunkt?
ja ? keine Überlappungen nein ? Überlappungen möglich
36
Vgl. R-Baum ? B-/B-Baum
  • Unterschiede

B-/B-Baum R-Baum
Eindeutigkeit des Suchpfades? Eindeutigkeit des Suchpfades?
jeweils (max.) ein Knoteneintrag erfüllt das Suchkriterium? EIN Suchpfad von Wurzel zum Blatt? kein oder ein Ergebnis Suchkriterium kann auf mehrere Knoteneinträge zutreffen? mehrere Suchpfade möglich? als Ergebnis mehrere Boxen mögl.? gilt für Bereichs- und Punktanfragen
Worst-Case-Abschätzung für Suche? Worst-Case-Abschätzung für Suche?
möglich ? Höhe des Baums ? also O(log n) nicht (sinnvoll) möglich, da im Worst-Case alle Pfade durchlaufen werden ? also O(n)
37
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Anwendungsgebietedes R-Baums

38
R-Baum Anwendungsgebiete
  • Verarbeitg. Speicherg. von GeoDaten
  • Geografische Informationssysteme (GIS)
  • Computer Aided Design (CAD)
  • Kartografie
  • Molekularbiologie
  • Einsatz im Data Warehouse
  • kostensensitive Ausführung der selektiven
    multidimensionalen Anfragen

39
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Methoden im Umgangmit dem R-Baum
  • Suchen, Einfügen, Löschen

40
R-Baum Methoden ? Suchen
  • wenn Anfrageobjekt nicht achsenparalleler
    HyperCube ? query box
  • ?2-stufige Abarbeitg. der Anfragezuerst
    geeignete Kandidaten suchen,dann Objekt exakt
    vergleichen
  • Überlappungen
  • ?parallele Suche in versch. Ästen des Baums
    nötig
  • ?mehrere Objekt-MBBs als Ergebnis möglich

41
R-Baum Methoden ? Suchen
(1.) Bereichsanfrage
(2.) Punktanfrage
R1
R2
R3
R4
R5
R6
R7
R12
R13
R14
R15
R17
R18
R10
R11
R8
R9
R16
R19
R20
42
R-Baum Methoden ? Einfügen
  • neues Objekt (? MBB) soll eingefügt werden
  • beginnend bei der Wurzel bis zum Blatt
  • Wahl des Sohn-Knotens, dessen MBB am wenigsten
    erweitert werden muss

43
R-Baum Methoden ? Einfügen
Vor dem Einfügen
R1
R2
R3
R4
R5
R6
R7
R12
R13
R14
R15
R17
R18
R10
R11
R8
R9
R16
R19
R20
44
R-Baum Methoden ? Einfügen
R1
R3
R9
R8
Nach dem Einfügen R7 wurde aufgeteilt zu R7 und
R7
R4
R10
R7
R2
R11
R17
R7
R12
R20
R13
R5
R18
R14
R19
R16
R15
R6
45
R-Baum Methoden ? Löschen
R1
R3
R9
R8
Vor dem Löschen
R4
R10
R7
R2
R11
R17
R7
R12
R20
R13
R5
R18
R14
R19
R16
R15
R6
46
R-Baum Methoden ? Löschen
R1
R3
R9
R8
Nach dem Löschen
R4
R10
R7
R2
R11
R17
R7
R20
R13
R18
R14
R19
R16
R15
R6
47
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • der R-Baum

48
der R-Baum
  • Rechtecke der inneren Knoten auf einer Ebene
    dürfen sich nicht überschneiden
  • ? disjunkte Aufteilung des Suchraumes
  • wenn Objekt nicht vollständig in eine
    RegionSpeicherg. in mehreren Blättern
    (redundant)
  • Vorteile des R-Baums
  • schnellere Suche,da nur 1 Suchpfad
  • einfacheres Löschen, da kein m
  • Nachteile des R-Baums
  • langsameres Einfügen,da evtl. mehrfach
  • Baum kann entarten?regelm. Reorganis.!

49
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • der R-Baum

50
der R-Baum
  • Struktur wie R-Baum
  • Verbesserung des Einfügen-Algorithmus durch
    Einführen einer Split-Achse
  • ?dadurch komplexer
  • Vorteile des R-Baums
  • weniger Überlappungen
  • ?weniger Suchpfade
  • ?bessere Such-Performance
  • sehr effizient für Punkt- und Bereichsanfragen
  • Nachteile des R-Baums
  • Implementierg. aufwändiger
  • Wahl der Splitachse nicht immer optimal
  • geringfügig höhere Einfügekosten

51
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Schlussbemerkungen

52
Schlussbemerkungen
  • Performance-Vergleich R ? R ? R

Abbildungen aus ThSe93
53
Schlussbemerkungen
  • Einsatz von R-Bäumen (und seinen Variationen) in
    realen Produkten
  • DB2 von IBM
  • Informix Spatial/Geodetic Datablade Module
  • Oracle (ab 9i)
  • DBMS PostgreSQL

54
R-Bäume als Indexstruktur zur Anfrageoptimierung
in Data Warehouses
  • Literaturangaben

55
Literaturangaben
  • Nicht selbst erstellte Abbildungen stammen aus
    folgenden Literaturquellen
  • BaGu04Bauer, A Günzel, H. Data Warehouse
    Systeme. Architektur, Entwicklung, Anwendung.
    Heidelberg dpunkt.verlag. 2004
  • ThSe93Theodoridis, Y. Sellis, T. Optimization
    issues in R-tree construction. Technical Report
    KDBSLABTR -93-08, National Technical University
    of Athens. 1993
  • DWT0405Vorlesung Data-Warehouse-Technologien WS
    2004/05, Universität Magdeburg, Dozent Gunter
    Saake, Vorlesungsfolien unterhttp//wwwiti.cs.uni
    -magdeburg.de/iti_db/lehre/dw/index.html
Write a Comment
User Comments (0)
About PowerShow.com