1 P. - Lehrgebiet Informationssysteme

Werbung
Datenbankanwendung WS 2014/15
Prof. Dr.-Ing. Sebastian Michel
MSc. Johannes Schildgen
TU Kaiserslautern, FB Informatik – Lehrgebiet Informationssysteme http://wwwlgis.informatik.uni-kl.de
Übungsblatt 5: Ausgabe 25.11.2014, Präsentation 04.12.2014
Aufgabe 1: Selektivitätsschätzung
(1 P.)
Gegeben folgender Anfrageplan:
o
n
σT itel=Inf oSys
o
n
hören
σSemester>10
Vorlesungen
Studenten
Bestimmen Sie die Kardinalitäten sämtlicher Zwischenergebnisse. Berechnen Sie die Kosten des Plans
für die Kostenmodelle Cout , Cnlj , Chj , Csmj . Schätzen Sie die Selektivitäten. Benutzen Sie dazu folgende
Angaben. Falls keine Angabe verfügbar, gehen Sie von den default Schätzungen aus.
hören
• |hören| = 4314
Statistiken
Studenten
Vorlesungen
• |Studenten| = 20000
• |Vorlesungen| = 25
• V (Studenten,
Semester)= 20
• V (Vorlesungen,
Titel)= 20
• Verteilung der Semester
folgt
relativ
gesehen
dem Plot in Aufgabe
2 auf Übungsblatt 4.
Berücksichtigen Sie, dass
es dort nur 150 Werte
gab, hier aber 20000.
Aufgabe 2: Flajolet-Martin Sketch
(1 P.)
1. Die Flajolet-Martin-Methode soll verwendet werden, um die Anzahl der distinkten Werte einer
Tabellenspalte preis zu schätzen. Die Hash-Funktion sei wie folgt definiert:
h(x) = 100 · x mod 2097152
Der Bit-Vektor sei zu Beginn 000000000000000000000 und es werden Datensätze mit den folgenden
Werten in der Spalte preis eingetragen:
2.15, 2.40, 0.60, 2.15, 3.95, 2.40, 2.15, 2.15, 2.40, 0.60
1
Datenbankanwendung WS 2014/15
Prof. Dr.-Ing. Sebastian Michel
MSc. Johannes Schildgen
TU Kaiserslautern, FB Informatik – Lehrgebiet Informationssysteme http://wwwlgis.informatik.uni-kl.de
Übungsblatt 5: Ausgabe 25.11.2014, Präsentation 04.12.2014
Wie sieht der Bit-Vektor nach diesen Einfügungen aus und welchen Schätzwert liefert er?
2. Interpretieren Sie die folgenden Bit-Vektoren als Teil der Flajolet-Martin Methode. Geben Sie jeweils
(für jeden Bit-Vektor einzeln) den aus dem Bit-Vektor folgenden Schätzwert an und ebenso den
gemeinsamen Schätzwert anhand aller Bit-Vektoren.
(i)
(ii)
(iii)
(iv)
111111111011010101000
111111110001010101010
111111011011010101000
111111011111110111001
Aufgabe 3: Anfrageoptimierung: Join-Ordering
3.1
(1 P.)
Links-tiefe Bäume vs. Buschige Bäume
Gegeben seien die Relationen R1 , R2 , R3 und R4 , mit |R1 | = 10, |R2 | = 100, |R3 | = 20, |R4 | = 40 sowie
die Join-Selektivitäten j1,2 = 0.10, j2,3 = 0.20, j2,4 = 0.10.
(i) Zeichnen Sie den Anfragegraphen
(ii) Bestimmen Sie alle links-tiefen Join-Bäume ohne Kreuzprodukte
(iii) Bestimmen Sie die Kosten Cout für die in (ii) bestimmten Join-Bäume, in denen R4 als letztes (d.h.
oben) “gejoint” wird.
(iv) Gibt es einen buschigen Join-Baum, auch ohne Kreuzprodukte, der kein linearer Baum ist und
geringere Kosten hat?
3.2
Greedy Heuristiken
• Geben Sie ein Beispiel mit 3 Relationen an, für das der Greedy-Algorithmus-1 weit neben der
optimalen Lösung liegt, Greedy-Algorithmus-3 die optimale Lösung hingegen findet.
2
Herunterladen