Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Approximative Queryevaluierung

Ähnliche Präsentationen


Präsentation zum Thema: "Approximative Queryevaluierung"—  Präsentation transkript:

1 Approximative Queryevaluierung
Fachseminar “Data Warehousing and Mining” November 1999 Ein Vortrag von Christoph Hauzenberger

2 Approximative Queryevaluierung in Data Warehouses
Inhalt 1.Einleitung s 3 2. Die zwei wichtigsten Ansätze s 5 3. Verfahren mit Synopsen s 7 4. Join Synopsen s 13 5. Das Aqua-System s 16

3 Approximative Queryevaluierung in Data Warehouses
1. Einleitung 1.1 Weshalb approximative Antworten? Exakte Abfragen über grosse Data Cubes können Stunden dauern, da meist mehrere Gigabytes an Daten im Spiel sind Antworten sollen auch möglich sein, wenn gewisse Daten nicht verfügbar sind (z.B. bei Ausfall eines Teils der Datenspeicher) Ergebnisse von Aggregatsfunktionen wie avg, sum und count erfordern nicht immer volle Präzision, sind also ideale Kandidaten für Approximation 1.2 Was ist überhaupt eine approximative Antwort? Ungefährer Wert mit Vertrauensintervall Obere resp. untere Schranke Durchschnittliche Verkäufe 1999: 4000, +/- 200 Anzahl Einbrüche Januar: <=1000

4 Beispiel-Relationen für Prüfungen der an ETH

5 Approximative Queryevaluierung in Data Warehouses
2. Die zwei wichtigsten Ansätze 2.1 Adaptive Verfahren Vertrauensintervall wird angezeigt und ständig verbessert Fragesteller kann Berechnung abbrechen, sobald zufrieden Beliebig genaue Annäherungen möglich Noch immer direkter Zugriff auf alle Datenquellen nötig Approximativer Wert: Vertrauensintervall: Verstrichene Zeit: Abbrechen ±0.75 12h15m28s Neustart

6 Approximative Queryevaluierung in Data Warehouses
2.2 Stichproben Einige für die gesamten Daten repräsentative Tupel werden in Query Engine (zusätzliches Modul) gespeichert Anfragen erfolgen nicht an die Daten des Warehouse sondern an die Stichproben in der Query Engine Sehr schnell, da Abfrage nur über kleine Datenmengen Kein Zugriff auf unterliegende Datenquellen Genauigkeit des Resultats von der Qualität der Stichproben abhängig Stichproben müssen aktuell gehalten werden neue Daten Queries Query Engine Warehouse Ergebnisse

7 Approximative Queryevaluierung in Data Warehouses
3. Verfahren mit Synopsen 3.1 Was sind Synopsen? 3.2 Grundsätzliche Fragen zu Stichproben Wie werden die Stichproben erstellt? Wieviel Platz wird für das Speichern der Proben benötigt? Wie genau sind die Aussagen? Wie aufwendig sind Updates der Stichproben beim Einfügen und Löschen von Daten? Synopsen sind vorberechnete Informationen, die Aussagen über die gesamten Daten liefern (üblicherweise Histogramme oder ausgewählte Tupel)

8 Approximative Queryevaluierung in Data Warehouses
3.3 uniform samples Gleichverteilung der Daten wird angenommen Zufällige Tupel jeder Relation werden den Daten entnommen Bei Inserts in das Warehouse wird ein neues Tupel mit festgelegter Wahrscheinlichkeit in die Stichprobe aufgenommen, bei Deletes aus den Daten und gegebenenfalls aus der Stichprobe entfernt Stichproben sind einfach zu unterhalten Entweder hoher Platzverbrauch (grosse Proben) oder kleine Präzision (kleine Probengrösse) Sind die Daten nicht gleichverteilt, sinkt die Präzision

9 Approximative Queryevaluierung in Data Warehouses
3.4 concise samples (komprimierte Stichproben) Ziel: bessere Präzision, ohne Probe zu vergrössern Datensätze mit gleichen Werten der grsuchten Attribute werden in den Proben nur einfach gespeichert, in der Form (Werte, Anzahl) concise samples entsprechen Histogramm der Stichprobe Bei Inserts wird das sample mit der kleinsten Anzahl ersetzt Bei gleichem Speicherverbrauch wie bei random samples ist eine viel grössere Probe möglich

10 Stichproben aus der Noten-Relation
Beispiel Stichproben aus der Noten-Relation uniform samples concise samples

11 Approximative Queryevaluierung in Data Warehouses
3.4 Probleme bei zufälligen Stichproben Data Warehouses meist im Star-Schema aufgebaut, Abfragen beinhalten also häufig Joins über Fremdschlüssel Ein Join von Stichproben liefert im Normalfall kleine Ergebnismengen, folglich sind in diesem Fall riesige Stichproben für annehmbare Präzision nötig Die Verteilung der Attribute ist nach dem Join verändert, die Annahme der Gleichverteilung gilt nicht mehr

12 Join zweier Stichproben
Beispiel Join zweier Stichproben S(NOTEN) S(FACH) S(NOTEN) S(FACH)

13 Approximative Queryevaluierung in Data Warehouses
4. Join Synopsen 4.1 Abhängigkeitsgraph der Relationen Die Relationen dienen als Knoten, Fremdschlüssel-Attribute als Kanten A B meint: ID ist ein Fremdschlüssel für B.ID in A Ein Join der Relationen A und B über eine solche Kante im Graphen heisst Fremdschlüssel-Join. Die Relation A heisst dann Basisrelation des Join Zwischen einem Tupel einer Relation r und einem eines Fremdschlüssel-Joins mit r als Basis besteht 1:1-Relation ID

14 Abhängigkeitsgraph Beispielrelationen
•F •D •T Fremdschlüssel-Joins sind z.B.: N P N P D N F T N P D F N P F T N P D F T Keine Fremdschlüssel-Joins sind z.B.: N D P N P D T P F T

15 Approximative Queryevaluierung in Data Warehouses
4.2 Join-Synopsen Aus den Stichproben werden alle möglichen Join-Synopsen berechnet und anstatt der Proben in der Query-Engine gespeichert Die Join-Synopse hat genau gleich viele Tupel wie die Basisrelation. Bei Anfragen müssen keine Joins mehr berechnet werden Für jede Relation ri kann man man einen maximalen Fremdschlüssel-Join J(ri) mit ri als Basis bestimmen. Sei Si eine Stichprobe der Relation ri. Dann nennt man J(Si) eine Join-Synopse.

16 Approximative Queryevaluierung in Data Warehouses
5. Das Aqua-System Besteht aus Query Engine und Testumgebung Aqua steht für Approximate Query Answering 1998 an den Bell Labs entwickelt um Join-Synopsen zu erforschen Ermöglicht Vergleich zwischen genäherter und exakter Lösung neue Daten Queries Query Engine Testdaten Ergebnisse exakte Antwort

17 Approximative Queryevaluierung in Data Warehouses
Die Aqua Query Engine SQL Query Approximation exakteLösung

18 Approximative Queryevaluierung in Data Warehouses
Beim Einfügen von Daten in eine Relation werden Tupel mit gewisser Wahrscheinlichkeit zu den Synopsen hinzugefügt. Zuerst müssen jedoch noch die benötigten Joins berechnet werden Bei Änderungen der Warehousedaten wird ein eventueller Eintrag aus den Synopsen entfernt Nicht relevante Spalten werden entfernt um Speicherplatz zu sparen Gute Präzision und schnelle Ergebnisse bei Abfragen mit Joins Erhöhter Verwaltungsaufwand

19 Approximative Queryevaluierung in Data Warehouses
Leistungsanalyse des Aqua Systems Testfrage: Frage nach Durchschnittswert (avg) bei Query mit vierfachem Join über insgesamt 300 MB Daten. Präzision: Synopsengrösse von 0.1% der Daten (300KB) liefert Abweichung von 15% Stichproben grösser 2% (6MB) liefern beinahe exakte Lösung Unterhalt: Bei 2% Stichproben beträgt die Wahrscheinlichkeit, dass ein Tupel neu in die Synopsen aufgenommen wird typischerweise auch 2%. Die Anzahl zusätzlicher Joins bei neuen Tupeln ist also 1000*Anzahl Relationen

20 Approximative Queryevaluierung in Data Warehouses
Quellen “New Sampling-Based Summary Statistics for Improving Approximate Query Answers” (P. B. Gibbons, Y. Matias, SIGMOD 1998) “Join Synopses for Approximate Query Answering” (S.Acharya, P.B.Gibbons, V.Poosala, S.Ramaswamy, SIGMOD1999) “The Aqua ApproximateQuery Answering System” (S.Acharya, P.B.Gibbons, V.Poosala, S.Ramaswamy, SIGMOD1999) “AQUA: System and Techniques for Approximate Query Answering” (P.B.Gibbons, V.Poosla, S.Acharya, Y.Bartal, Y.Matias, S.Muthukrishnan, S.Ramaswamy, Torsten Suel, Bell Labs 1998)


Herunterladen ppt "Approximative Queryevaluierung"

Ähnliche Präsentationen


Google-Anzeigen