4. data warehouses - swl.htwsaar.de · § rdbms sind für diese art von transaktionen optimiert...

72
4. Data Warehouses

Upload: doliem

Post on 15-Aug-2019

232 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

4. Data Warehouses

Page 2: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

2

Inhalt§ 4.1 Motivation

§ 4.2 Datenintegration

§ 4.3 Konzeptuelle Modellierung

§ 4.4 Anfragen an Data Warehouses

§ 4.5 Implementierungsaspekte

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 3: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

3

Literatur

§ V. Köppen, G. Saake und K.-U. Sattler:Data Warehouse Technologien,mitp Professional, 2014http://www.dbis.prakinf.tu-ilmenau.de/biber/biber3.html

§ Andreas Bauer und Holger Günzel:Data Warehouse Systeme,dpunkt.verlag, 2013

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 4: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

4

4.1 Motivation§ Vielzahl von operativen Systemen in Unternehmen

§ Einkauf/Verkauf von Lieferanten/Kunden

§ Kundenverwaltung (Adressen, Beschwerden)

§ Organisation (Mitarbeiter, Abteilungen)

§ Marketing (Management von Kampagnen)

§ Unternehmenssteuerung (management) benötigt ganzheitliche Sicht auf Unternehmensdaten,um analytische Fragen zu beantwortenund Entscheidungen zu treffen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 5: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

5

Online Transaction Processing (OLTP)§ Online Transaction Processing (OLTP) zur raschen

Bearbeitung von Transaktionen aus operativen Systemen

§ Transaktionen betreffen nur einen kleinen Teil der Daten§ Mitarbeiter stoßen Transaktionen im Tagesgeschäft

bei Verwendung der operativen Systeme an

§ Beispiele:

§ Zeige Daten zu Kunde mit KundenNr 1776289 an

§ Füge neue Bestellung mit Bestellpositionen ein

§ RDBMS sind für diese Art von Transaktionen optimiert

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 6: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

6

Online Analytical Processing (OLAP)§ Online Analytical Processing (OLAP) zur raschen

Bearbeitung von analytischen Transaktionen

§ Transaktionen betreffen u.U. einen großen Teil der Daten

§ Ursprung der Transaktionen sind analytische Fragen,die in der Unternehmenssteuerung entstehen

§ Beispiele:

§ Umsatzentwicklung von Produkt B in den letzten 10 Jahren

§ Gewinn nach Bundesland und Produktkategoriein den letzten 6 Quartalen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 7: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

7

Data Warehouses§ Data Warehouses (DWs) haben sich als eigenständige

Systeme zur Unterstützung von OLAP etabliert

§ DWs als eigenständige Systeme, um Beeinträchtigungder operativen Systeme durch Anfragen zu vermeiden

§ DWs müssen Daten aus den verschiedenen operativen Systemen und evtl. externen Datenquellen integrieren

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 8: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

8

Datenquellen§ DWs integrieren Daten aus verschiedenen Quellen

§ operative Systeme (z.B. Einkauf/Verkauf, Organisation)

§ externe Datenquellen (z.B. statistische Daten, Wetterdaten)

§ Datenintegration stößt auf viele Herausforderungen

§ Verknüpfung von Datensätzen (z.B. nach Akquisition)

§ Datenqualität (z.B. Eingabefehler, fehlende Attribute)

§ Duplikate (z.B. doppelte Kundeneinträge)

§ Effizienz (z.B. inkrementelle Integration, Bulk-Loading)

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 9: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

9

Basisdatenbank und Datenwürfel§ Terminologie im Bereich Data Warehouses uneinheitlich;

wir orientieren uns an der in [2] vorgeschlagenen

§ Datenintegration führt zu einer Basisdatenbank (BDB),in der alle relevanten Rohdaten zusammengeführt sind

§ Datenwürfel (data cubes) werden aus BDB abgeleitet; sie stellen betriebswirtschaftliche Fakten (z.B. Umsatz) mehrdimensional (z.B. Produkt, Zeitraum, Region) dar

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 10: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

10

Datenwürfel

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Quelle: Köppen, Saake und Sattler [2, S.46]

Multidimensionales Datenmodell Grundbegriffe

GrundbegriffeDimensionenFakten / Kennzahlen

Produkt

Verkaufsort

Zeit

KennzahlUmsatz

Filiale

Stadt

Bundesland

Gruppe Artikel

JahrQuartal

Monat

Kategorie

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–2

Page 11: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

11

Data Marts und Data Warehouse§ Data Marts sind definierte Sichten (z.B. für eine Sparte

oder ein Vertriebsgebiet) auf Datenwürfeln und/oder BDB

§ Data Warehouse bezeichnet Gesamtheit aus Basisdatenbank, Datenwürfeln sowie Data Marts

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 12: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

12

12 OLAP-Regeln nach Codd§ E. F. Codd hat 1993 einen Katalog von Anforderungen

formuliert, die OLAP-Systeme erfüllen müssen

1. Multidimensionale Sichtauf Kennzahlen (z.B. Umsatz), die in verschiedenenDimension (z.B. Zeit) aggregiert und gruppiert werden

2. TransparenzImplementierung bleibt dem Benutzer verborgen

3. OLAP-ZugriffeZugriffsschnittstelle ist auf OLAP-Analysen zugeschnitten

4. PerformanzLeistung des Data-Warehouse-Systems ist unempfindlich gegenüber Anzahl von Dimensionen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 13: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

13

12 OLAP-Regeln nach Codd5. Skalierbarkeit

Nutzung von verteilten Architekturen zum Umgang mit sehr großen Datenmengen

6. Generische DimensionalitätDimensionen gleich behandelt und organisiert

7. Dünnbesetzte StrukturenEffizienter Umgang mit dünnbesetzten Datenwürfelndurch geeignete Daten- und Indexstrukturen

8. MehrbenutzerbetriebKonfliktfreier Betrieb mit mehreren Benutzern

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 14: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

14

12 OLAP-Regeln nach Codd9. Uneingeschränkte Operationen

Auf Datenwürfel definierte Operatoren werden umgesetzt

10. Intuitive BenutzeroberflächenBenutzeroberfläche soll intuitiv sein und z.B. eine Navigation entlang der Dimensionshierarchien erlauben

11. Flexibles ReportingTabellarische, aber auch zwei- oder mehrdimensionaleReports (Berichte) müssen frei konfigurierbar sein

12. Beliebig viele Dimensionen und AggregationsebenenKeinerlei Einschränkungen bzgl. Anzahl von Dimensionenund Tiefe der Dimensionshierarchien

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 15: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

15

FASMI-Anforderungen§ Pendse und Creeth haben folgende Anforderungen an

Data-Warehouse-Systeme formuliert

§ Fast, d.h. kurze Antwortzeiten, die dem Benutzer ein interaktives Arbeiten ermöglichen (weniger als 5 Sekunden)

§ Analysis, d.h. es muss eine adäquate auf analytische Fragestellungen ausgerichtete Schnittstelle bereitstehen

§ Shared, d.h. das System muss mehrere Benutzer erlauben und ihre heterogenen Anforderungen unterstützen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 16: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

16

FASMI-Anforderungen

§ Multidimensional, d.h. das konzeptionelle Datenmodell muss die inhärente Multidimensionalität der analytischen Fragestellungen berücksichtigen

§ Information, d.h. das System muss alle für die Analysenbenötigten Daten zusammenführen und verwalten

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 17: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

17

4.2 Datenintegration§ Daten werden im Rahmen eines ETL-Prozesses aus

operativen Systemen ins Data Warehouse überführt

§ Extraktionsphase identifiziert regelmäßig zu übernehmende Änderungen in den Datenquellen

§ Transformationsphase behebt Daten- und Schemakonflikte zwischen Datenquelle und Basisdatenbank

§ Ladephase bringt die transformierten Daten effizient(z.B. mittels Bulk-Loading) in die Basisdatenbank ein

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 18: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

18

Datenqualität und Datenbereinigung§ Mangelnde Qualität der Daten aus den verschiedenen

Datenquellen machen eine Bereinigung notwendig

§ Vereinheitlichung von Datentypen und Format (z.B. Name)

§ Erkennen und Zusammenführen von Duplikaten

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Extraktion, Transformation, Laden Datenfehler

Datenfehler

KNr Name Geb.datum Alter Geschl. Telefon PLZ34 Meier, Tom 21.01.1980 35 M 999-999 3910734 Tina Möller 18.04.78 29 W 763-222 3699935 Tom Meier 32.05.1969 27 F 222-231 39107

Person Emailnullnull

[email protected]

PLZ391073699695555

OrtMagdeburg

SpanienIllmenau

Ort

Eindeutigkeitverletzt

Unterschiedliche Repräsentation

WidersprüchlicheWerte

Fehlende Werte(z.B. Default-Werte)

Referentielle Integrität verletzt

Duplikate

Schreib- oder Tippfehler

Falsche oder unzulässige Werte

unvollständig

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 4–54

Quelle: Köppen, Saake und Sattler [2, S.82]

Page 19: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

19

Duplikatenerkennung§ Duplikatenerkennung mittels einer Vergleichsfunktion,

welche die Ähnlichkeit von zwei Datensätzen misst

§ Editierdistanzen für textuelle Attribute§ Numerischen Distanzen für numerische Attribute

§ Paare von Datensätzen deren Ähnlichkeit über einem Schwellwert liegt, werden zusammengefasst

§ Verfahren versuchen durch geschicktes Abschätzen vonÄhnlichkeiten oder Sortieren möglichst weniger als O(n2)Vergleiche durchzuführen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 20: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

20

Editierdistanz nach Levenshtein§ Editierdistanz nach Levenshtein d(s,t) zwischen zwei

Zeichenketten s und t misst die minimale Anzahl vonOperationen (Zeichen löschen, ändern, hinzufügen),die notwendig sind, um s in t umzuwandeln

§ Beispiel: Editierdistanz zwischen cabel und cube

§ lösche l am Ende von cabel

§ ersetzte a durch u

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 21: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

21

Editierdistanz nach Levenshtein§ Editierdistanz lässt sich somit wie folgt rekursiv definieren

§ Berechnung in O(n2) mit dynamischer Programmierung

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

d(s[0..i], t[0..j]) = min

Y___]

___[

d(s[0..i ≠ 1], t[0..j ≠ 1]) + 1(s[i] ”= t[j]) // Andern?

d(s[0..i], t[0..j ≠ 1]) + 1 // Hinzufugen

d(s[0..i ≠ 1], t[0..j]) + 1 // Loschen

Page 22: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

22

Editierdistanz nach Levenshtein§ Beispiel: Editierdistanz von ware und wurst

§ DP-Tabelle beinhaltet d(s[0..i],t[0..j]) in DP[i,j]

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

w a r ewurst

0

1

2

3

4

0 1 2 3

Page 23: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

23

Editierdistanz nach Levenshtein§ Beispiel: Editierdistanz von ware und wurst

§ DP-Tabelle beinhaltet d(s[0..i],t[0..j]) in DP[i,j]

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

w a r ewurst

0 1 2 3

1 1 2 3

2 2 1 2

3 3 2 2

4 4 3 3

0

1

2

3

4

0 1 2 3

Page 24: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

24

q-Gramme§ Menge der q-Gramme zu einer Zeichenkette beinhaltet

alle Zeichenketten der Länge 3, die darin enthalten sind

§ Beispiel: warehouse beinhaltet die 3-Gramme{__w, _wa, war, are, reh, eho, hou, ous, use, se_, e__}

§ Ähnlichkeit von zwei Zeichenketten als Dice-Koeffizientder Mengen ihrer q-Gramme

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

dice(s, t) = 2 · |grams(s, q) fl grams(t, q)||grams(s, q) + grams(t, q)|

Page 25: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

25

q-Gramme§ Zwei Zeichenketten s und t müssen mindestens

gemeinsame q-Gramme haben, um eine Editierdistanzvon höchstens k zu haben

§ Man kann diese Schranke ausnutzen, um die Zahl der Paare von Zeichenketten, für die die Editierdistanzexakt berechnet werden muss, deutlich zu reduzieren

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

max(|s|, |t|) ≠ 1 ≠ (k ≠ 1)

Page 26: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

26

4.3 Konzeptuelle Modellierung§ Werkzeuge zur konzeptuellen Modellierung von Data

Warehouses betrachten Fakten und Dimensionen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Grundbegriffe

GrundbegriffeDimensionenFakten / Kennzahlen

Produkt

Verkaufsort

Zeit

KennzahlUmsatz

Filiale

Stadt

Bundesland

Gruppe Artikel

JahrQuartal

Monat

Kategorie

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–2Quelle: Köppen, Saake und Sattler [3, S.46]

Page 27: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

27

Fakten und Kennzahlen§ Zellen eines Datenwürfels stellen betriebswirtschaftliche

Fakten in Form einer Kennzahl (measure) dar

§ Fakten sind in den Dimensionen des Datenwürfels eingebettet und beziehen sich auf eine Positionim aufgespannten Datenraum

§ Kennzahlen (z.B. Umsatz, Gewinn, verkaufte Stückzahl)sollen Verdichtung entlang der Dimensionen erlauben

§ Beispiel: Umsatz für Produkt B in Filiale X im Mai 2015

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 28: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

28

Dimensionen§ Dimensionen beschreiben mögliche Sichten und

strukturieren den aufgespannten Datenraum

§ Dimensionen beinhalten einfache oder parallele Klassifikationshierarchien, entlang derer sichFakten auf einer höheren Klassifikationsstufeweiter verdichten lassen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 29: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

29

Einfache und parallele Hierarchien§ Einfache Hierarchie für Dimension Verkaufsort

§ Parallele Hierarchien für Dimension Zeitraum

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Grundbegriffe

Einfache HierarchieHöhere Hierarchieebene enthält die aggregierten Werte genaueiner niedrigeren HierarchiestufeOberster Knoten: Top

I Enthält Verdichtung auf einen einzelnen Wert für die Dimension

Top

Bundesland

Stadt

Filiale

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–7

Multidimensionales Datenmodell Grundbegriffe

Parallele HierarchieInnerhalb einer Dimension sind mehrere unabhängige Arten derGruppierung möglichKeine hierarchische Beziehung zwischen parallelen ZweigenParallelhierarchie

I Pfad im KlassifikationsschemaI Konsolidierungspfad

Top

Jahr

Quartal

Monat

Tag

Woche

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–8Quelle: Köppen, Saake und Sattler [2, S.48]

Page 30: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

30

Multidimensional Entity-Relationship-Modell§ Multidimensional Entity-Relationship-Modell (ME/R)

als Erweiterung des ERMs zur konzeptuellenModellierung von Data Warehouses

§ Fakten als ausgezeichnete Beziehungstypen

§ Dimensionen als Gruppen von Entitytypen verbunden durch ausgezeichneten Klassifikationsbeziehungstyp

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Quelle: Köppen, Saake und Sattler [2, S.53]

Multidimensionales Datenmodell Konzeptuelle Modellierung

ME/R: Notationen

Fakten-name Ebene

Faktenbeziehung KlassifikationsstufeKlassifikations-

beziehung

Attribut-bezeichnung

Attribut

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–28

Page 31: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

31

Rückblick§ Unterstützung der Unternehmenssteuerung durch

Data Warehouses mit ganzheitlicher Sichtauf Daten aus operativen Systemen

§ Online Transaction Processing (OLTP) und Online Analytical Processing unterscheiden sich deutlich

§ Datenintegration als eine wichtige Herausforderung

§ Multidimensional Entity-Relationship-Model zur konzeptuellen Modellierung von Data Warehouses

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 32: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

32

Multidimensional Entity-Relationship-Modell

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Konzeptuelle Modellierung

ME/R: Beispiel

Verkauf Filiale

Tag

ArtikelProdukt-gruppe

Produkt-kategorie

Monat Quartal JahrWoche

Stadt Bundes-land

Anzahl Umsatz

KundeKunden-gruppe

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–29

Quelle: Köppen, Saake und Sattler [2, S.54]

Page 33: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

33

Zusammenfassung§ Unterstützung der Unternehmenssteuerung durch

Data Warehouses mit ganzheitlicher Sichtauf Daten aus operativen Systemen

§ Online Transaction Processing (OLTP) und Online Analytical Processing unterscheiden sich deutlich

§ Datenintegration als eine wichtige Herausforderung

§ Multidimensional Entity-Relationship-Model zur konzeptuellen Modellierung von Data Warehouses

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 34: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

34

Literatur[1] A. Kemper und A. Eickler: Datenbanksysteme – Eine

Einführung, De Gruyter Oldenbourg, 2013 (Kapitel 17)

[2] V. Köppen, G. Saake und K.-U. Sattler:Data Warehouse Technologien,mitp Professional, 2014

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 35: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

35

Implementierung von Data Warehouses§ Verschiedene Ansätze zur Speicherung von Datenwürfeln

§ Relationales OLAP (ROLAP) bildet Datenwürfelauf Relationen ab und verwendet RDBMS

§ Multidimensionales OLAP (MOLAP) speichert Datenwürfeldirekt in Form eines mehrdimensionalen Arrays

§ Hybrides OLAP (HOLAP) verwendet eine Kombinationvon ROLAP und MOLAP (z.B. Detaildaten relationalund vorberechnete Aggregate mehrdimensional)

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 36: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

36

Snowflake-Schema§ Snowflake-Schema setzt Fakten in eine Faktentabelle

und jede Dimension in mehrere normalisierte Dimensionstabellen um

§ Faktentabelle enthält Kennzahl sowie Fremdschlüsselder jeweils niedrigsten Klassifikationsstufe

§ Dimensionstabelle enthält eine ID, beschreibende Attribute sowie Fremdschlüssel der jeweilsnächsthöheren Klassifikationsstufe

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 37: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

37

Snowflake-Schema

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Relationale Umsetzung des multidimensionalen Datenmodells

Snowflake-Schema: Beispiel

ZeitZ_IDZ_Datum

1

*

1

11

*

*

*

ProduktP_IDP_BezeichnungP_VerkaufspreisP_EinkaufspreisP_RabattP_SteuernP_PGruppe_IDVerkauf

V_AnzahlV_KanalV_Produkt_IDV_Zeit_IDV_Kunden_IDV_Filial_ID

KundeK_IDK_NameK_WohnortK_StrasseK_GeschlechtK_KGruppe_ID

FilialeF_IDF_FilialeF_Stadt_ID

StadtS_IDS_NameS_BLand_ID

BundeslandB_IDB_NameB_Land_ID

LandL_IDL_Name

KundengruppeKG_IDKG_Bezeichnung

ProduktgruppePG_IDPG_BezeichnungPG_PKategorie_ID

ProduktkategoriePK_IDPK_Bezeichnung

11

*

*

**

*

*

1

11

1

Dimension "Produkt"

Dimension "Zeit"

Dimension "Kunde"

Dimension "Ort"

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–47

Quelle: Köppen, Saake und Sattler [2, S.58]

Page 38: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

38

Star-Schema§ Star-Schema setzt Fakten in eine Faktentabelle

und jede Dimension in eine denormalisierteDimensionstabelle um

§ Faktentabelle enthält Kennzahl sowie Fremdschlüssel der jeweils zugehörigen Einträge in den Dimensionstabellen

§ Dimensionstabelle enthält ID sowie beschreibende Attribute für eine der niedrigsten Klassifikationsstufeund allen höheren Klassifikationsstufen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 39: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

39

Star-Schema

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Relationale Umsetzung des multidimensionalen Datenmodells

Star-Schema: Beispiel

ZeitZ_IDZ_Datum

1

*

1

11

*

*

*

ProduktP_IDP_BezeichnungP_VerkaufspreisP_EinkaufspreisP_RabattP_SteuernP_ProduktgruppeP_Produktkategorie

VerkaufV_AnzahlV_KanalV_Produkt_IDV_Zeit_IDV_Kunden_IDV_Ort_ID

KundeK_IDK_NameK_WohnortK_StrasseK_GeschlechtK_Kundengruppe

OrtO_IDO_FilialeO_StadtO_BundeslandO_Land

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–50

Quelle: Köppen, Saake und Sattler [2, S.59]

Page 40: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

40

Snowflake-Schema vs. Star-Schema§ Snowflake-Schema hält Dimensionstabellen in 3NF

und vermeidet somit redundante Datenspeicherung;beim Star-Schema sind sie nur in 1NF, wodurchRedundanzen und Anomalien entstehen

§ Star-Schema kann, dank seiner Denormalisierung, Anfragen bzgl. höherer Klassifikationsstufen direkt,ohne zusätzliche Joins bearbeiten

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 41: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

41

Snowflake-Schema vs. Star-Schema§ Beispielanfrage im Snowflake-Schema (5 Joins)

§ Beispielanfrage im Star-Schema (3 Joins)

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 SELECT S_Name , YEAR( Z_Datum ), SUM( V_Anzahl )

2 FROM Verkauf , Filiale , Stadt , Produkt , Produktgruppe , Zeit

3 WHERE V_Produkt_ID = P_ID AND P_PGruppe_ID = PG_ID

4 AND V_Filial_ID = F_ID AND F_Stadt_ID = S_ID

5 AND V_Zeit_ID = Z_ID AND PG_Bezeichnung = ’Wein ’

6 GROUP BY S_Name , YEAR( Z_Datum )

1 SELECT O_Stadt , YEAR( Z_Datum ), SUM( V_Anzahl )2 FROM Verkauf , Ort , Produkt , Zeit3 WHERE V_Produkt_ID = P_ID AND V_Zeit_ID = Z_ID4 AND V_Ort_ID = O_ID AND P_Produktgruppe = ’Wein ’5 GROUP BY O_Stadt , YEAR( Z_Datum )

Page 42: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

42

Galaxie-Schema§ Snowflake-Schema und Star-Schema beinhalten eine

Faktentabelle, die Kennzahlen in den gleichen Dimensionen speichert

§ Galaxie-Schema als Erweiterung des Snowflake-Schemas beinhaltet mehrere Faktentabellen, die Kennzahlen inverschiedenen Dimensionen speichern

§ Vorberechnete Aggregate (z.B. über alle Filialen hinweg)als eine Quelle zusätzlicher Faktentabellen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 43: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

43

Galaxie-Schema

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Relationale Umsetzung des multidimensionalen Datenmodells

Galaxie-Schema: Beispiel

1

*

1

11

*

*

*

ProduktP_IDP_BezeichnungP_VerkaufspreisP_EinkaufspreisP_RabattP_SteuernP_PGruppe_ID

VerkaufV_AnzahlV_KanalV_Produkt_IDV_Zeit_IDV_Kunden_IDV_Filial_ID

KundeK_IDK_NameK_WohnortK_StrasseK_GeschlechtK_KGruppe_ID

FilialeF_IDF_FilialeF_Stadt_ID

StadtS_IDS_NameS_BLand_ID

BundeslandB_IDB_NameB_Land_ID

LandL_IDL_Name

KundengruppeKG_IDKG_Bezeichnung

ProduktgruppePG_IDPG_BezeichnungPG_PKategorie_ID

ProduktkategoriePK_IDPK_Bezeichnung 1

1

*

*

**

**

1

1

1

1

*

Summe_VerkaufSV_AnzahlSV_KanalSV_Monat_ID SV_PGruppe_IDSV_BLand_ID

*

*

1

ZeitZ_IDZ_DatumZ_Monat_IDZ_Monat

1

1

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–67Quelle: Köppen, Saake und Sattler [2, S.63]

Page 44: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

44

4.4 Anfragen an Data Warehouses§ Analytische Anfragen an Data Warehouses wählen einen

mehrdimensionalen Teilbereich von Fakten ausund berechnen Aggregationen aufhöheren Klassifikationsstufen

§ Beispiel: Umsatz je Produktkategorie in allen europäischen Filialen in den Monaten seit Januar 2010

§ Beispiel: Verkaufte Einheiten je Produkt über alleFilialen pro Jahr seit 2005

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 45: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

45

Anfragen an Data Warehouses§ Analytische Anfragen betreffen oft eine große Menge von

Daten (z.B. alle Verkäufe seit 2010)

§ Antwortzeiten sollen interaktiv (d.h. kürzer 5 Sekunden) sein, um eine Interaktion mit dem Datenwürfel zu erlauben

§ Betrachtung eines kleineren Teilwürfels§ Verdichtung der Kennzahlen zu höherer Klassifikationsstufe

§ etc.

§ Data Warehouses setzen auf Vorberechnungen,um diese Anforderungen zu erfüllen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 46: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

46

OLAP-Operatoren§ Datenwürfel dient nicht nur der Modellierung, sondern

es lassen sich eine Reihe von Operatoren auf ihm definieren, die dann effizient umgesetzt werden müssen

§ Pivotieren/Rotieren des gesamten Datenwürfels(PIVOT)

§ Navigieren aufwärts/abwärts entlang der Dimensionen(ROLL UP / DRILL DOWN)

§ Betrachten eines Teilwürfels oder einer Scheibe(DICE / SLICE)

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 47: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

47

PIVOT§ Pivotieren/Rotieren des gesamten Datenwürfels

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Operationen zur Datenanalyse

Pivotierung / RotationDrehen des Würfels durch Vertauschen der DimensionenAnalyse der Daten aus verschiedenen Perspektiven

Produkt

OrtZeit

BierWeinSoftdrink

Thüringen

Sachsen

-

Anhalt Ba

yern

2009

2010

2011

ProduktOrt

Zeit

Bier

Wein

2009

Thüringen

Sachsen

-

Anhalt Ba

yern

20112010

Softdrink

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–34Quelle: Köppen, Saake und Sattler [2, S.126]

Page 48: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

48

DRILL DOWN und ROLL UP§ Navigieren aufwärts/abwärts entlang der Dimensionen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Operationen zur Datenanalyse

Roll-Up und Drill-Down

Produkt

OrtZeit

BierWeinSoftdrink

Thüringen

Sachsen

-

Anhalt

Bayern

2009

2010

2011

Produkt

Ort

Zeit

BierWeinSoftdrink

Thüringen

Sachsen

-

Anhalt

Bayern

Q1

Q2

Q3

Q4

2009

2010

2011

...

Drill Down

Roll Up

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–36

Quelle: Köppen, Saake und Sattler [2, S.127]

Page 49: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

49

SLICE§ Betrachten einer Scheibe des Datenwürfels

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Operationen zur Datenanalyse

Slice

Produkt

OrtZeit

BierWeinSoftdrink

Thüringen

Sachsen

-

Anhalt

Bayern

2009

2010

2011

Produkt

OrtZeit

BierWeinSoftdrink

Thüringen

Sachsen

-

Anhalt

Bayern

2009

2010

2011

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–38

Quelle: Köppen, Saake und Sattler [2, S.127]

Page 50: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

50

DICE§ Betrachten eines Teilwürfels des Datenwürfels

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Multidimensionales Datenmodell Operationen zur Datenanalyse

Dice

Produkt

OrtZeit

BierWeinSoftdrink

Thüringen

Sachsen

-

Anhalt

Bayern

2009

2010

2011

Produkt

OrtZeit

BierWeinSoftdrink

Thüringen

Sachsen

-

Anhalt

Bayern

2009

2010

2011

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 3–39

Quelle: Köppen, Saake und Sattler [2, S.128]

Page 51: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

51

Umsetzung in SQL§ Data-Warehouse-Systeme vertrauen meist auf RDBMS

zur Speicherung und zum Anfragen der Daten

§ Bei Verwendung eines Star-Schema ergibt sich folgendes Anfragemuster zum Berechnen eines Datenwürfels

§ (n+1)-Wege-Verbund zwischen n Dimensionstabellenund einer Faktentabelle

§ Restriktionen über den Dimensionstabellen

§ Aggregation und Gruppierung über Kennzahlen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 52: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

52

Umsetzung in SQL§ Beispiel:

§ In den Standards SQL:1999 und SQL:2003 wurden Erweiterungen speziell für OLAP eingeführt

§ zusätzliche (statistische) Aggregatfunktionen§ CUBE und ROLLUP Operatoren

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 SELECT O_Stadt , YEAR( Z_Datum ), SUM( V_Anzahl )2 FROM Verkauf , Ort , Produkt , Zeit3 WHERE V_Produkt_ID = P_ID AND V_Zeit_ID = Z_ID4 AND V_Ort_ID = O_ID AND P_Produktgruppe = ’Wein ’5 GROUP BY O_Stadt , YEAR( Z_Datum )

Page 53: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

53

Aggregatfunktionen§ Zusätzliche statistische Aggregatfunktionen in SQL:2003

§ VAR_POP(A) und VAR_SAMP(A) zum Berechnen der Varianz auf Population oder Stichprobe

§ STDDEV_POP(A) und STDDEV_SAMP(A) zum Berechnen der Standardabweichung auf Population oder Stichprobe

§ COVAR_POP(A,B) und COVAR_SAMP(A,B) zum Berechnender Kovarianz auf Population oder Stichprobe

§ CORR(A,B) zum Berechnen des Korrelationskoeffizienten

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 54: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

54

CUBE§ Analysen benötigen oft Zwischen- und Gesamtsummen

§ Je Zwischen- oder Gesamtsumme ist eine separateUnteranfrage an das RDBMS notwendig

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Anfragen an Data Warehouse Gruppierung und Aggregation

Berechnung von Zwischen- und Gesamtsummen

PGruppe Jahr Bundesland Umsatz Umsatz UmsatzPGruppe- PGruppe- PGruppe

Jahr- JahrBundesland

Wein 2010 Sachsen-Anhalt 45Thüringen 43

882011 Sachsen-Anhalt 47

47135

Bier 2011 Thüringen 4242

42

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 5–13

Quelle: Köppen, Saake und Sattler [2, S.132]

Page 55: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

55

CUBE§ Beispiel: Zwischen- und Gesamtsummen mittels

Vereinigung von Unteranfragen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 -- Zwischensumme (1) ¨uber alle Produktgruppen ,Jahre und Bundesl ¨ander

2 SELECT P_Produktgruppe AS PGruppe , YEAR( Z_Datum ), O_Bundesland ,3 SUM( V_Anzahl * P_Verkaufspreis ) AS Umsatz4 FROM Verkauf , Zeit , Produkt , Ort5 WHERE V_Zeit_ID = Z_ID AND V_Produkt_ID = P_ID AND V_Ort_ID = O_ID6 GROUP BY P_Produktgruppe , YEAR ( Z_Datum ), O_Bundesland7

8 UNION ALL9

10 -- Zwischensumme (2) ¨uber alle Produktgruppen und Jahre

11 SELECT P_Produktgruppe AS PGruppe , YEAR ( Z_Datum ),12 CAST(NULL AS VARCHAR (50)) ,13 SUM( V_Anzahl * P_Verkaufspreis ) AS Umsatz14 FROM Verkauf , Zeit , Produkt , Ort15 WHERE V_Zeit_ID = Z_ID AND V_Produkt_ID = P_ID AND V_Ort_ID = O_ID16 GROUP BY P_Produktgruppe , YEAR( Z_Datum )17

18 UNION ALL19

20 ...

Page 56: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

56

CUBE§ Vollständige Berechnung aller Zwischen- und

Gesamtsummen führt bei n Gruppierattributenzu 2n auszuwertenden Unteranfragen

§ CUBE-Operator berechnet für gegebene Menge von Gruppierattributen {A1, ..., An} Summen füralle Teilmengen der Gruppierattribute

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

{}{A1}, {A2}, {A3}, . . .{A1, A2}, {A1, A3}, . . .

...{A1, . . . An}

Page 57: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

57

CUBE§ Beispiel: Zwischen- und Gesamtsummen mittels

Verwendung des CUBE-Operators

§ CUBE-Operator ist interdimensional, d.h. Gruppierattribute stammen von verschiedenen Klassifikationsstufen unterschiedlicher Dimensionen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 SELECT P_Produktgruppe AS PGruppe , O_Bundesland , YEAR( Z_Datum ),2 SUM( V_Anzahl * P_Verkaufspreis ) AS Umsatz3 FROM Verkauf , Zeit , Produkt , Ort4 WHERE V_Zeit_ID = Z_ID AND V_Produkt_ID = P_ID AND V_Ort_ID = O_ID5 GROUP BY CUBE( P_Produktgruppe , O_Bundesland , YEAR( Z_Datum ))

Page 58: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

58

ROLLUP§ ROLLUP-Operator als intradimensionales Pendant zum CUBE-Operator berechnet Zwischen- und Gesamtsummenentlang verschiedener Klassifikationsstufeneiner Dimension

§ Beispiel: Zwischen- und Gesamtsummen für Bundesländer, Städte und Filialen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 SELECT O_Bundesland , O_Stadt , O_Filiale ,2 SUM( V_Anzahl * P_Verkaufspreis ) AS Umsatz3 FROM Verkauf , Zeit , Produkt , Ort4 WHERE V_Produkt_ID = P_ID AND V_Ort_ID = O_ID5 AND V_Zeit_ID = Z_ID AND YEAR( Z_Datum ) = 20116 AND P_Produktgruppe = Wein7 GROUP BY ROLLUP ( O_Bundesland , O_Stadt , O_Filiale )

Page 59: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

59

MDX§ Multidimensional Expressions (MDX) als von Microsoft

vorgeschlagene Anfragesprache für multidimensionaleDaten, die auch von anderen Herstellern unterstützt wird

§ MDX-Anfrage nach folgendem Muster

zur Spezifikation eines Datenwürfels

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 SELECT <Achsen >2 FROM <Cube>3 WHERE <Slicer >

Page 60: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

60

MDX§ Achsen-Klausel spezifiziert Achsen des Datenwürfels

§ Aufzählung z.B. {ProduktA, ProduktC}

§ Mengenausdruck z.B. Produkte.CHILDREN

§ Kreuzprodukt z.B. CROSSJOIN(Produkte, Regionen)

§ Cube-Klausel spezifiziert Faktentabelle als Datenquelle

§ Slicer-Klausel erlaubt eine Selektion der Daten gemäßDimensionen, die nicht als Achsen verwendet werden(z.B. Measures.[Umsatz] betrachtet nur Umsätze)

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 61: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

61

MDX§ Beispiel ([2], S. 149)

§ Achse 1: Kreuzprodukt aus Produktkategorien Rotwein und Weißwein mit Orten in Sachsen-Anhalt und Thüringen

§ Achse 2: Monate im ersten Quartal von 2011, zweites und drittes Quartal von 2011, Monate im vierten Quartal von 2011

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 SELECT CROSSJOIN (2 { Produkt . Kategorie . Gruppe .[ Rotwein ],3 Produkt . Kategorie . Gruppe .[ Weißwein ]},4 {Ort .[ Sachsen - Anhalt ]. CHILDREN ,5 Ort .[Th u ringen ]})6 ON COLUMNS ,7 {Zeit .[2011].[ Q1 ]. CHILDREN , Zeit .[2011].[ Q2],8 Zeit .[2011].[ Q3], Zeit .[2011].[ Q4]. CHILDREN }9 ON ROWS

10 FROM Verkauf11 WHERE ( Measures .[ Umsatz ])

Page 62: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

62

MDX§ Beispiel ([2], S. 149)

§ Datenquelle: Faktentabelle Verkauf

§ Slicer: Nur Umsätze werden berücksichtigt

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

1 SELECT CROSSJOIN (2 { Produkt . Kategorie . Gruppe .[ Rotwein ],3 Produkt . Kategorie . Gruppe .[ Weißwein ]},4 {Ort .[ Sachsen - Anhalt ]. CHILDREN ,5 Ort .[Th u ringen ]})6 ON COLUMNS ,7 {Zeit .[2011].[ Q1 ]. CHILDREN , Zeit .[2011].[ Q2],8 Zeit .[2011].[ Q3], Zeit .[2011].[ Q4]. CHILDREN }9 ON ROWS

10 FROM Verkauf11 WHERE ( Measures .[ Umsatz ])

Page 63: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

63

MDX§ Beispiel ([2], S. 149)

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Anfragen an Data Warehouse Multidimensionale Erweiterungen: MDX

Beispiel CUBEUmsätze 2011

Rotwein WeißweinS.-A. Thür. S.-A. Thür.

Magdeb. Halle Magdeb. Halle1. Quart. Jan 14 12 25 12 9 22

Feb 13 10 22 11 9 21Mär 15 14 23 11 10 22

2. Quart. 42 40 82 39 37 753. Quart. 44 42 80 37 35 734. Quart. Okt 13 12 23 10 10 22

Nov 14 12 24 9 10 21Dez 16 14 26 12 11 20

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 5–53

Page 64: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

64

4.5 Implementierungsaspekte§ Implementierungsansätze für Data-Warehouse-Systeme

§ ROLAP verwendet RDBMS zum Speichern und Anfragen

§ MOLAP speichert Daten als multidimensionales Array

§ HOLAP verwendet Kombination der beiden Ansätze

§ Bitmap-Indizes als zusätzliche Indexstruktur, die insbesondere für Attribute mit kleiner Anzahl möglicher Attributwerte und relativ statische Daten geeignet ist

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 65: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

65

ROLAP§ Relationales OLAP (ROLAP) verwendet ein RDBMS,

um Datenwürfel in Fakten- und Dimensionstabellenzu speichern

§ Vorteile:

§ RDBMS sind ausgereifte Systeme und weit verfügbar

§ geringer Implementierungsaufwand und Kosten

§ Nachteile:

§ Faktentabellen haben, aufgrund von Dimensionsattributen, einen vergleichsweise hohen Speicherbedarf

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 66: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

66

MOLAP§ Multidimensionales OLAP (MOLAP) verwendet ein

multidimensionales Arrays zur Speicherungdes Datenwürfels

§ Klassifikationsstufen der verschiedenen Dimensionenmüssen intern als ganze Zahlen (0...n) kodiert werden

§ Dimensionsinformation eines Fakts muss dann nicht separat gespeichert werden, sondern ist ausseiner Position im multidimensionalenArray ablesbar

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 67: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

67

MOLAP§ Datenwürfel als multidimensionales Array, welches dann

mittels Linearisierung (wie in Programmiersprachen)als Folge von Fakten (Kennzahlen) gespeichert wird

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Quelle: Köppen, Saake und Sattler [2, S.157/159]

Speicherstrukturen für Data Warehouse Multidimensionale Speicherung

KlassifikationshierarchienDimensionswerte umfassen alle Ausprägungen der Dimension:Elemente (Blätter) und Knoten der höheren KlassifikationsstufenKnoten der höheren Stufen bilden weitere Ebenen

Magdeburg

Halle

Sachsen-Anhalt

Erfurt

Thüringen

Januar

FebruarMärz

1. Quartal

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 6–22

Speicherstrukturen für Data Warehouse Multidimensionale Speicherung

Linearisierungsreihenfolge

D2

D1

D3

c� Sattler / Saake / Köppen Data-Warehouse-Technologien Letzte Änderung: 08.11.2013 6–26

Page 68: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

68

Bitmap-Indizes§ Bitmap-Indizes als zusätzliche Form von Indexstruktur

(neben B+-Bäumen und hashbasierten Indizes),die insbesondere in Data WarehousesAnwendung findet

§ Bitmap-Indizes geeignet für Attribute mit kleiner Anzahlmöglicher Attributwerte (z.B. Geschlecht, Kategorie)

§ Für jeden möglichen Attributwert wird ein Bitvektorgespeichert, der Tupel anzeigt (Bit auf 1 gesetzt),welche diesen Attributwert besitzen

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 69: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

69

Bitmap-Indizes§ Beispiel: Weibliche Kunden in Vertriebsgebieten S und W

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

G:wS

WWWWWWWWU

0101100

T

XXXXXXXXV

V:SS

WWWWWWWWU

1110000

T

XXXXXXXXV

V:WS

WWWWWWWWU

0000101

T

XXXXXXXXV

‚·

V:WQ

cccccccca

S

WWWWWWWWU

0000101

T

XXXXXXXXV

R

ddddddddb

V:WQ

cccccccca

S

WWWWWWWWU

0000101

T

XXXXXXXXV

R

ddddddddb

=

S

WWWWWWWWU

0100100

T

XXXXXXXXV

Page 70: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

70

Bitmap-Indizes§ Bitvektoren lassen sich kompakt speichern und sehr

effizient mittels Boole‘scher Operationen verknüpfen

§ Bitmap-Indizes haben für Attribut mit wenigen möglichen Werten einen geringeren Speicherbedarf alsherkömmliche B+-Bäume

§ Bitmap-Indizes sind insbesondere für statische Datengeeignet; ein Einfügen oder Löschen von Tupelnerfordert eine Neuberechnung aller Bitvektoren

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 71: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

71

Zusammenfassung§ Datenwürfel besteht aus Fakten und Dimensionen,

die sich in Form eines Snowflake-Schemasoder eines Star-Schemas in Relationenabbilden lassen

§ OLAP-Operatoren (ROLL UP, DRILL DOWN, SLICE, etc.)zur Interaktion mit einem Datenwürfel

§ OLAP-Unterstützung in SQL und durch in Form der von Microsoft vorgeschlagenen Anfragesprache MDX

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses

Page 72: 4. Data Warehouses - swl.htwsaar.de · § RDBMS sind für diese Art von Transaktionen optimiert Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses. 6 Online Analytical

72

Literatur[1] A. Kemper und A. Eickler: Datenbanksysteme – Eine

Einführung, De Gruyter Oldenbourg, 2013 (Kapitel 17)

[2] V. Köppen, G. Saake und K.-U. Sattler:Data Warehouse Technologien,mitp Professional, 2014

Datenbanken & Informationssysteme / Kapitel 4: Data Warehouses