Data Warehouse

Teil 1 Einleitung

Wichtig

  • Grundbegriffe
  • Architekturkomponenten
  • OLTP vs OLAP (= op. DB vs. DWH)

Teil 2 Multidimensional

Wichtig

  • Grundbegriffe
  • mUML

Teil 3 Anwendung

Wichtig

  • Arten von Anwendungen
  • Support/Konfidenz

Weniger wichtig

  • Reifegrade (Folien 36/37)

Teil 5 Datenbank

Wichtig

  • Sternschema/Schneeflockenschema
  • Schema erstellen zur Beschreibung
  • Schema überführen (mUML, Stern, Schneeflocke)

Weniger wichtig

  • Multidimensonale Speicherung
  • Archiv

Teil 6 ETL

Wichtig

  • Einzelne Aufgaben des ETL
  • Erweiteres INSERT
  • MERGE

Weniger wichtig

  • Architekturen
  • Externe Tabellen
  • Andere Integrationsansätze

Teil 7 Datenqualität

Wichtig

  • Q-Metriken an gegebenen Daten erkennen

Weniger wichtig

  • CLIQ

Teil 8 SQL-Erweiterung

Wichtig

  • ROLLUP-Operator
  • CUBE-Operator
  • Zusammensetzung Resultat erklären

Teil 9 SQL-Analytisch

Wichtig

  • Fenster beschreiben
  • Rangfunktionen
  • Zugriff auf Zeilen

Weniger wichtig

  • EXCLUDE

Teil 10 Physische Optimierung

Wichtig

  • Bitmap-Index (diverse Variatnen)
  • Mat.Sichten: Auswahlalgorithmus
  • Zugriff auf Zeilen
  • Spaltenorientiert: Anfrage (Folie 84/85)

Weniger wichtig

  • Bitmap bei Verbundanfragen
  • Partitionierung
  • Mat. Sichten: Syntax/SQL-Option

Beispiel Gredy-Algorithmus

  • 6.000 Detaildaten
  • S = 1000
  1. Durchgang
  • M = {(A1, A2, A3)}
  • s = 0
KnotenKostenNutzen
(A1)1211956
(A2)5011900
(A3)1011980
(A1, A2)60021600
(A1, A3)12023520
(A2, A3)50022000
  • Wähle (A1, A3), da größter Nutzen
  • M = {(A1, A2, A3), (A1, A3)}
  • s = 0 + 120 = 120
  1. Durchgang
  • M = {(A1, A2, A3), (A1, A3)}
  • s = 120
KnotenKostenNutzen
(A1)12216
(A2)5011900
(A3)10220
(A1, A2)60010800
(A2, A3)50011000
  • Wähle (A2), da größter Nutzen
  • M = {(A1, A2, A3), (A1, A3), (A2)}
  • s = 0 + 120 + 50 = 170
  1. Durchgang
  • M = {(A1, A2, A3), (A1, A3)}
  • s = 170
KnotenKostenNutzen
(A1)12216
(A3)10220
(A1, A2)6005400
(A2, A3)5005500
  • Wähle (A2), da größter Nutzen
  • M = {(A1, A2, A3), (A1, A3), (A2), (A2, A3)}
  • s = 0 + 120 + 50 + 500 = 670
  1. Durchgang
  • M = {(A1, A2, A3), (A1, A3), (A2), (A2, A3)}
  • s = 670
KnotenKostenNutzen
(A1)12216
(A3)10220
(A1, A2)6005400
  • Wähle (A1, A2), da größter Nutzen
  • M = {(A1, A2, A3), (A1, A3), (A2), (A2, A3), (A1, A2)}
  • s = 0 + 120 + 50 + 500 + 600 = 1270

s = 1270 und somit größer als 1000. Deshalb terminiert es.

Ergebnis

  • M = {(A1, A2, A3), (A1, A3), (A2), (A2, A3)}

Ergebnis enthält der letzte Knote nicht!

Beispiel Gredy-Algorithmus

  • 6.000 Detaildaten
  • S = 1000
  1. Durchgang
  • M = {(A1, A2, A3)}
  • s = 0
KnotenKostenNutzen
(A1)201960
(A3)101860
(A1, A2)6001600
(A1, A3)1201200
(A2, A3)5002000

Angenommen (A1, A2) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()506000
(A1)1000600400
(A2)506000
(A1, A2)1000600400

Nutzen (Gesamt) = 400 + 400 = 800

Angenommen (A2, A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()505000
(A2)505000
(A3)1000500500
(A2, A3)1000500500

Nutzen (Gesamt) = 500 + 500 = 1000

Angenommen (A1, A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()507000
(A1)1000700300
(A3)1000700300
(A1, A3)1000700300

Nutzen (Gesamt) = 300 + 300 + 300 = 900

Angenommen (A1) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()502030
(A1)100020980

Nutzen (Gesamt) = 980 + 30 = 1010

Angenommen (A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()50700
(A3)100070930

Nutzen (Gesamt) = 930 + 0 = 930

Knote (A1) wird materialisiert. s = 20 Verbraucht S = 1000 - 20 = 980 Übrig

Durchgang 2

Angenommen (A2, A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()205000
(A2)505000
(A3)1000500500
(A2, A3)1000500500

Nutzen (Gesamt) = 500 + 500 = 1000

Angenommen (A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()20700
(A3)100070930

Nutzen (Gesamt) = 930 + 0 = 930

Angenommen (A1, A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()207000
(A1)207000
(A3)1000700300
(A1, A3)1000700300

Nutzen (Gesamt) = 300 + 300 = 600

Angenommen (A1, A2) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()206000
(A1)206000
(A2)506000
(A1, A2)1000600400

Nutzen (Gesamt) = 400 = 400

Knote (A3) wird materialisiert. s = 70 Verbraucht S = 980 - 70 = 910 Übrig

Durchgang 3

Angenommen (A1, A2) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()206000
(A1)206000
(A2)506000
(A1, A2)1000600400

Nutzen (Gesamt) = 400 = 400

Angenommen (A1, A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()207000
(A1)207000
(A3)707000
(A1, A3)1000700300

Nutzen (Gesamt) = 300 = 300

Angenommen (A2, A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()205000
(A2)505000
(A3)705000
(A2, A3)1000500500

Nutzen (Gesamt) = 500 = 500

Knote (A2, A3) wird materialisiert. s = 500 Verbraucht S = 910 - 500 = 410 Übrig

Durchgang 4 nicht machen, Begründung unten

Alle mögliche Materalisierung gehen über den verbleibenden Speicherplatz hinaus

4. Durchgang

Angenommen (A1, A2) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()206000
(A1)206000
(A2)506000
(A1, A2)1000600400

Nutzen (Gesamt) = 400 = 400

Angenommen (A1, A3) wird materialisiert: Was bedeutet das für alle noch nicht materialisierten Knoten:

KnotenAktuelle KostenPotenzielle KostenNutzen
()207000
(A1)207000
(A3)707000
(A1, A3)1000700300

Nutzen (Gesamt) = 300 = 300

Knote (A1, A2) wird materialisiert. s = 600 Verbraucht S = 910 - 500 = 410 Übrig