kapitel 7 grundlagen von data warehouses - lmu munich · database systems 7.1 einleitung group zwei...

36
LUDWIG- MAXIMILIANS- UNIVERSITY DATABASE SYSTEMS DEPARTMENT INSTITUTE FOR UNIVERSITY MUNICH SYSTEMS GROUP INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 7 Grundlagen von Data Warehouses Warehouses Vorlesung : PD Dr. Peer Kröger http://www.dbs.ifi.lmu.de/cms/Datenbanksysteme_II © Peer Kröger 2014 Dieses Skript basiert im Wesentlichen auf den Skripten zur Vorlesung Datenbanksysteme II an der LMU München von Prof. Dr. Christian Böhm (SoSe 2007), PD Dr. Peer Kröger (SoSe 2008, 2014) und PD Dr. Matthias Schubert (SoSe 2009)

Upload: dangnhi

Post on 13-Aug-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

LUDWIG-MAXIMILIANS-UNIVERSITY

DATABASESYSTEMS

DEPARTMENTINSTITUTE FORUNIVERSITY

MUNICHSYSTEMSGROUP

INSTITUTE FORINFORMATICS

Skript zur Vorlesung:Skript zur Vorlesung:

Datenbanksysteme IISommersemester 2014

Kapitel 7p

Grundlagen von Data WarehousesWarehouses

Vorlesung: PD Dr. Peer Kröger

http://www.dbs.ifi.lmu.de/cms/Datenbanksysteme_II

© Peer Kröger 2014Dieses Skript basiert im Wesentlichen auf den Skripten zur Vorlesung Datenbanksysteme II an der LMU München von

Prof. Dr. Christian Böhm (SoSe 2007), PD Dr. Peer Kröger (SoSe 2008, 2014) undPD Dr. Matthias Schubert (SoSe 2009)( 9)

Page 2: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7. Grundlagen von DWHsSYSTEMSGROUP

7.1 Einleitungg

7.2 Multidimensionale Datenmodellierungg

22Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 3: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7. Grundlagen von DWHsSYSTEMSGROUP

7.1 Einleitungg

7.2 Multidimensionale Datenmodellierungg

33Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 4: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

Zwei Arten von DB-Anwendungeng– Online Transaction Processing (OLTP)

• Routinetransaktionsverarbeitung• Realisierung des operationalen Tagesgeschäfts wie

“Buchen eines Flugs”“Verarbeitung einer Bestellung”Verarbeitung einer Bestellung“Ein- und Verkauf von Waren”…

• Charakteristik:– Arbeitet auf dem jüngsten, aktuellsten Zustand der Daten

Änderungstransaktionen (kurze Lese /Schreibzugriffe)– Änderungstransaktionen (kurze Lese-/Schreibzugriffe)– Zugriff auf sehr begrenzte Datenmenge– Sehr kurze Antwortzeiten erwünscht (ms-s)

• OLTP-Datenbanken optimieren typischerweise den logischen und physischen DB-Entwurf hinsichtlich dieser Charakteristik

44Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 5: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

Zwei Arten von DB-Anwendungen (cont.)g ( )– Online Analytical Processing (OLAP)

• Bilden Grundlage für strategische Unternehmensplanung (DecisionSupport)

• Anwendungen wieEntwicklung der Auslastung der Transatlantik-Flüge über die letzten 2 Jahre?“„Entwicklung der Auslastung der Transatlantik Flüge über die letzten 2 Jahre?

„Auswirkungen spezieller Marketingaktionen auf Verkaufszahlen der Produkte?“„Voraussichtliche Verkaufszahl eines Produkts im nächsten Monat?“…

• Charakteristik:– Arbeitet mit „historischen“ Daten (lange Lesetransaktionen)– Zugriff auf sehr große Datenmengen– Meist Integration, Konsolidierung und Aggregation der Daten– Mittlere Antwortzeiten akzeptabel (s-min)Mittlere Antwortzeiten akzeptabel (s min)

• OLAP-Datenbanken optimieren typischerweise den logischen und physischen DB-Entwurf hinsichtlich dieser Charakteristik

55Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 6: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

Zwei Arten von DB-Anwendungen (cont.)g ( )– OLTP- und OLAP-Anwendungen sollten nicht auf demselben

Datenbstand ausgeführt werden• Unterschiedliche Optimierungsziele beim Entwurf• Komplexe OLAP-Anfragen könnten die Leistungsfähigkeit der OLTP-

Anwendungen beeinträchtigenAnwendungen beeinträchtigen– Data Warehouse

• Datenbanksystem, indem alle Daten für OLAP-Anwendungen inDatenbanksystem, indem alle Daten für OLAP Anwendungen in konsolidierter Form gesammelt werden

• Integration von Daten aus operationalen DBs aber auch aus Dateien (E l )(Excel, …), …

• Daten werden dabei oft in aggregierter Form gehalten• Enthält historische DatenEnthält historische Daten• Regelmäßige Updates (periodisch)

66Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 7: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

Operationales DBS vs. Data Warehousep

ti l DBS D t W hoperationales DBS Data WarehouseZiel Abwicklung des Geschäfts Analyse des GeschäftsFocus auf D t il D t i t D tFocus auf Detail-Daten aggregierten DatenVersionen nur aktuelle Daten gesamte Historie der DatenDB Größe 1 GB 1 TBDB-Größe ~ 1 GB ~ 1 TBDB-Operationen Updates und Anfragen nur AnfragenZugriffe pro Op ~ 10 Datensätze ~ 1 000 000 DatensätzeZugriffe pro Op. ~ 10 Datensätze ~ 1.000.000 DatensätzeLeistungsmaß Durchsatz Antwortzeit

77Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 8: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

BegriffgA Data Warehouse is a subject-oriented, integrated, non-volatile, and time

variant collection of data to support management decisions[W.H. Inmon, 1996]

Fachorientierung (subject oriented)– Fachorientierung (subject-oriented)• System dient der Modellierung eines spezifischen Anwendungsziel (meist

Entscheidungsfindung in Unternehmen)g g )• System enthält nur Daten, die für das Anwendungsziel nötig sind. Für

das Anwendungsziel irrelevante Daten werden weggelassen

– Integrierte Datenbasis (integrated)• Verarbeitung der Daten aus unterschiedlichen DatenquellenVerarbeitung der Daten aus unterschiedlichen Datenquellen

88Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 9: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

BegriffgA Data Warehouse is a subject-oriented, integrated, non-volatile, and time

variant collection of data to support management decisions[W.H. Inmon, 1996]

Nicht flüchtige Datenbasis (non volatile)– Nicht-flüchtige Datenbasis (non-volatile)• Stabile, persistente Datenbasis• Daten im Data Warehouse werden nicht mehr entfernt oder geändertDaten im Data Warehouse werden nicht mehr entfernt oder geändert

– Historische Daten (time variant)• Vergleich der Daten über die Zeit möglich• Speicherung über längeren Zeitraum

99Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 10: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

Architektur eines Data Warehouse

operationaleDB

operationaleDB

DB

operationaleDB

flat files

spread sheets

IntegrationInitiales Laden und periodische

Einzelne Abteilungen

• OLTPAuffrischung des Data Warehouse

Management

• OLAPData

Warehouse• Decision Support Systems (DSS)

• Executive Information Systems (EIS)

D t Mi i

1010Datenbanksysteme II― 7. Grundlagen v. DWHs

• Data Mining

Page 11: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.1 EinleitungSYSTEMSGROUP

Data Warehouses und Data Marts– Data Mart: inhaltlich beschränkte Sicht auf das Data Warehouse

• Gründe: Eigenständigkeit, Datenschutz, Lastenverteilung, …• Realisierung: Verteilung der DW-Datenbasis• Klassen:

Abhä i D t M t V t il i b t h d DW– Abhängige Data Marts: Verteilung eines bestehenden DWs=> Analysen auf DM konsistent zu Analysen auf gesamten DW

– Unabhängige Data Marts: unabhängig voneinander entstandene „kleine“ DWs, nachträgliche Integration zum globalen DW

=> unterschiedliche Analysesichten

Analyse des Kaufverhaltens im Internetshop

Analyse des Kaufverhaltens in

den Filialen

Data Mart 1 Data Mart n…

1111Datenbanksysteme II― 7. Grundlagen v. DWHs

DWH

Page 12: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7. Grundlagen von DWHsSYSTEMSGROUP

7.1 Einleitungg

7.2 Multidimensionale Datenmodellierungg

1212Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 13: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Datenmodellierungg– Datenmodell sollte bzgl. Analyseprozess optimiert werden– Datenanalyse im Entscheidungsprozess

• Betriebswirtschaftliche Kennzahlen stehen im Mittelpunkte (z.B. Erlöse, Gewinne, Verluste, Umsätze, …)

=> Fakten• Betrachtung dieser Kennzahlen aus unterschiedlichen Perspektiven (z.B. zeitlich,

regional, produktbezogen, …)=> Dimensionen> Dimensionen

• Unterteilung der Auswertungsdimensionen möglich (z.B. zeitlich: Jahr, Quartal, Monat; regional: Bundesländer, Bezirke, Städte/Gemeinden; …)

=> Hierarchien Konsolidierungsebenen=> Hierarchien, Konsolidierungsebenen

1313Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 14: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Kennzahlen/Fakten– Kennzahlen/Fakten

• Numerische Messgrößen• Beschreiben betriebswirtschaftliche Sachverhalte

– Beispiele: Umsatz, Gewinn, Verlust, …– TypenTypen

• Additiv: (additive) Berechnung zwischen sämtlichen Dimensionen möglich (z.B. Bestellmenge eines Artikels)S i dditi ( dditi ) B h ö li h it A h t l• Semi-additiv: (additive) Berechnung möglich mit Ausnahme temporaler Dimension(z.B. Lagerbestand, Einwohnerzahl)

• Nicht-Additiv: keine additive Berechnung möglich (z.B. Durchschnittswerte, t l W t )prozentuale Werte, …)

1414Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 15: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Dimensionen– Dimension

• Beschreibt mögliche Sicht auf die assoziierte Kennzahl• Endliche Menge von d 2 Dimensionselementen (Hierarchieobjekten), die eine

semantische Beziehung aufweisen• Dient der orthogonalen Strukturierung des Datenraums

– Beispiele: Produkt, Geographie, Zeit

1515Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 16: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Hierarchien in Dimensionen– Dimensionselemente sind Knoten einer Klassifikationshierarchie– Klassifikationsstufe beschreibt Verdichtungsgradg g– Darstellung von Hierarchien in Dimensionen über

Klassifikationsschema– Formen

• Einfache Hierarchien: höhere Ebeneenthält die aggregierten Werte gena

Land

Stadt

– enthält die aggregierten Werte genau– einer niedrigeren Hierarchiestufe

• Parallele Hierarchien: innerhalb einer

Filiale

Jahr– Dimension sind mehrere verschiedene– Arten der Gruppierung möglich

Jahr

Quartal WocheMonat

Tag

1616Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 17: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Data-Cubes– Grundlage der multidimensionalen Datenanalyse:

Datenwürfel (Data-Cube)– Kanten des Cubes: Dimensionen– Zellen des Cubes: ein oder mehrere Kennzahlen (als Funktion der

Di i )Dimension)– Anzahl der Dimensionen: Dimensionalität des Cubes

Vi li i– Visualisierung• 2 Dimensionen: Tabelle• 3 Dimensionen: Würfel3 Dimensionen: Würfel• >3 Dimensionen: Multidimensionale Domänenstruktur

1717Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 18: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Beispiel: 3D Data-Cubep

odukt

Region

Pro

Kennzahl:Umsatz

ele RegionFiliale

Stadt

Arti

ke

Kat

egor

i

1818Datenbanksysteme II― 7. Grundlagen v. DWHs

Bundesland

Page 19: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Standardoperationen zur Datenanalysep y– Pivotisierung/Rotation

• Drehen des Data-Cube durch Vertauschen der Dimensionen• Datenanalyse aus verschiedenen Perspektiven• Beispiel: Produkt

Zeitraum

RegionProdukt

RegionZeitraum

1919Datenbanksysteme II― 7. Grundlagen v. DWHs

Region Region

Page 20: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Standardoperationen zur Datenanalyse (cont.)p y ( )– Roll-Up

• Erzeugen neuer Informationen durch Aggregierung der Daten entlang der Klassifikationshierarchie in einer Dimension

(z.B. Tag => Monat => Quartal => Jahr)• Dimensionalität bleibt erhalten• Dimensionalität bleibt erhalten

– Drill-Down• Komplementär zu Roll-UpKomplementär zu Roll Up• Navigation von aggregierten Daten zu Detail-Daten entlang der

Klassifikationshierarchie– Drill-Across

• Wechsel von einem Cube zu einem anderen

2020Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 21: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Standardoperationen zur Datenanalyse (cont.)p y ( )– Beispiel: Roll-Up, Drill-Down Produkt

Produkt

2. Quartal

1. Quartal

Drill-Down

Roll-Up

2006 3. Quartal

p2007

Summe

4. Quartal

Summe

RegionZeitraum RegionZeitraum

2121Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 22: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Standardoperationen zur Datenanalyse (cont.)p y ( )– Slice und Dice

• Erzeugen individueller Sichten• Slice:

– Herausschneiden von „Scheiben“ aus dem Cube(z B alle Werte eines Quartals)(z.B. alle Werte eines Quartals)

– Verringerung der Dimensionalität• Dice:

– Herausschneiden eines „Teil-Cubes“(z.B. Werte bestimmter Produkte und Regionen)

– Erhaltung der Dimensionalitätg– Veränderung der Hierarchieobjekte

2222Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 23: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Standardoperationen zur Datenanalyse (cont.)p y ( )– Beispiel: Slice

Produkt ProduktProdukt Produkt

HaushaltElektro

Summe

HaushaltElektro

Summe

2006 2006

KosmetikHaushalt

KosmetikHaushalt

Slice

2007 2007

Region

Summe

Region

Summe

2323Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 24: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Umsetzung des multidimensionalen Modellsg– Interne Verwaltung der Daten durch

• Relationale Strukturen (Tabellen)– Relationales OLAP (ROLAP)– Vorteile: Verfügbarkeit, Reife der Systeme

• Multidimensionale Strukturen (direkte Speicherung)• Multidimensionale Strukturen (direkte Speicherung)– Multidimensionales OLAP (MOLAP)– Vorteil: Wegfall der Transformation

– Wichtige Designaspekte• Speicherung• Anfragebearbeitung

2424Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 25: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Relationale Umsetzung: Anforderungeng g– Vermeidung des Verlusts anwendungsbezogener Semantik aus dem

multidimensionalen Modell (z.B. Klassifikationshierarchien)– Effiziente Übersetzung multidimensionaler Anfragen– Effiziente Verarbeitung der übersetzten Anfragen– Einfache Pflege der entstandenen Relationen (z.B. Laden neuer

Daten)B ü k i hti d A f h kt i tik d d D t l– Berücksichtigung der Anfragecharakteristik und des Datenvolumens von Analyseanwendungen

2525Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 26: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Relationale Umsetzung: Faktentabelleg– Ausgangspunkt: Umsetzung des Data-Cubes ohne

Klassifikationshierarchien• Dimensionen und Kennzahlen => Attribute der Relation• Zellen => Tupel der Relation

ZeitZeit

05 04 2008

04.04.2008Artikel Filiale Tag Verkäufe

Dimensionen Kennzahl

Vanish Oxy Action

05.04.2008 gVanish Ox. A. Horb 04.04.2008 4Vanish Ox. A. Horb 05.04.2008 1

Kukident Horb 04.04.2008 12K kid t R th 04 04 2008 0

Kukident

Kukident Roth 04.04.2008 0Vanish Ox. A. Roth 05.04.2008 2

RegionProdukt

orb

oth

2626Datenbanksysteme II― 7. Grundlagen v. DWHs

Ho Ro

Page 27: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Relationale Umsetzung: Snowflake Schemag– Abbildung von Klassifikationen?– Eigene Tabelle für jede Klassifikationsstufe (Artikel, Produktgruppe, g j ( g pp

…)– Klassifikationstabellen enthalten

• ID für entsprechenden Klassifikationsknoten• Beschreibende Attribute (Marke, Hersteller, Bezeichnung, …)• Fremdschlüssel der direkt übergeordneten Klassifikationsstufe• Fremdschlüssel der direkt übergeordneten Klassifikationsstufe

– Faktentabelle enthält• KenngrößenKenngrößen• Fremdschlüssel der jeweils niedrigsten Klassifikationsstufe der einzelnen

Dimensionen• Fremdschlüssel bilden zusammengesetzte Primärschlüssel der

Faktentabelle

2727Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 28: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Snowflake Schema: BeispielpArtikel

ArtikelIDBezeichnungG ID

ProduktGruppeGruppeIDBezeichnungK i ID

ProduktKategorieKategorieIDBezeichnung

TagTagIDDatum

JahrJahrIDJahr

* 1

1 1

* *

1*

1GruppeID KategorieID

atuMonatIDWocheIDMonat

MonatIDName

1

1** Verkauf

ArtikelIDTagIDFilialIDVerkaeufeWoche

JahrID

Fili l*

*

1

*

VerkaeufeUmsatz

WocheWocheIDNummer

FilialeFilialIDBezeichnungStadtID

*

1

StadtStadtIDName

*1

NameLandID Bundesland

LandIDName

1Faktentabelle

Kl ifik ti t b ll

2828Datenbanksysteme II― 7. Grundlagen v. DWHs

Klassifikationstabelle

Page 29: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Relationale Umsetzung: Star Schemag– Snowflake Schema ist normalisiert

• Keine Update-Anomalien• ABER: Zusammenholen von Informationen erfordert Join über mehrere

TabellenStar Schema– Star Schema

• Denormalisierung der zu einer Dimension gehörenden Tabellen• Für jede Dimension genau eine DimensionstabelleFür jede Dimension genau eine Dimensionstabelle• Redundanzen in der Dimensionstabelle für schnellere

Anfragebearbeitung

2929Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 30: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Star Schema: Beispielp

ProduktZeitZeitID

ProduktIDArtikelnameProduktgruppeProduktkategorie

TagWocheMonatQuartalJahr

11

VerkaufProduktIDZeitIDGeographieIDVerkaeufe

**

* VerkaeufeUmsatzGeographie

GeographieIDFilialeStadt

1

Bundesland

3030Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 31: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Relationale Umsetzung: Mischformeng– Idee: Abbildung einzelner Dimensionen anhand von Snowflake oder

Star Schema• Kriterien

– Änderungshäufigkeit der DimensionenReduzierung des Pflegeaufwands => Snowflake– Reduzierung des Pflegeaufwands => Snowflake

– Anzahl der Klassifikationsstufen einer Dimension– Höhere Effizienz durch größere Redundanz => Star– ...

– Galaxie (Multi-Cube, Hyper-Cube)• Mehrere Faktentabellen im Star Schema teilweise mit gleichen• Mehrere Faktentabellen im Star Schema teilweise mit gleichen

Dimensionstabellen verknüpft– Fact Constellation

• Speicherung vorberechneter Aggregate in Faktentabelle (z.B. Umsatz für Region)

3131Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 32: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Relationale Umsetzung: Problemeg– Transformation multidimensionaler Anfragen in relationale

Repräsentation nötig– Einsatz komplexer Anfragewerkzeuge nötig

(OLAP-Werkzeuge)S tik l t– Semantikverlust

• Unterscheidung zwischen Kennzahlen und Dimensionen in der Faktentabelle nicht gegebenFaktentabelle nicht gegeben

• Unterscheidung zwischen beschreibenden Attributen und Attributen zum Hierarchie-Aufbau in Dimensionstabellen nicht gegeben

– Daher: direkte multidimensionale Speicherung besser ???

3232Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 33: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Multidimensionale Umsetzungg– Idee:

• Verwende entsprechende Datenstrukturen für Data-Cube und Dimensionen

• Speicherung des Data-Cube als Array• Ordnung der Dimensionen nötig damit Zellen des Data Cube addressiert• Ordnung der Dimensionen nötig, damit Zellen des Data-Cube addressiert

werden können– Bemerkungg

• Häufig proprietäre Strukturen (und Systeme)

3333Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 34: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Multidimensionale Umsetzung (cont.)g ( )– Datenstruktur für eine Dimension

• Endliche geordnete Liste von Dimensionswerten(aller Klassifikationsstufen)

• Dimensionswerte: einfache, atomare Datentypen(String Integer Date )(String, Integer, Date, …)

– Datenstruktur für Cube• Für d Dimensionen: d-dimensionaler Raum• Bei m Werten in einer Dimension: Aufteilung des Würfels in m parallele

Ebenen => endliche gleichgroße Liste von Ebenen je DimensionZ ll i d di i l C b i d i d ti üb d• Zelle eines d-dimensionalen Cubes wird eindeutig über d Dimensionswerten identifiziert

• Pro Kennzahl in Zelle ein entsprechendes Arrayp y

3434Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 35: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Multidimensionale Umsetzung (cont.)g ( )– Speicherung des Data-Cube:

• Linearisierung des d-dimensionalen Arrays in ein 1-dimensionales Array• Koordinaten der Würfelzellen (Dimensionen) „entsprechen“ Indizes des

Arrays• Indexbrechnung für Zelle mit Koordinaten z = x x• Indexbrechnung für Zelle mit Koordinaten z = x1, …, xd

||)1()( 121 DxxzIndex D3

||||)1( 213 DDx

D1

D2

||||)1( 11 dd DDx

3535Datenbanksysteme II― 7. Grundlagen v. DWHs

Page 36: Kapitel 7 Grundlagen von Data Warehouses - LMU Munich · DATABASE SYSTEMS 7.1 Einleitung GROUP Zwei Arten von DB-Anwendungen – Online Transaction Processing (OLTP) • Routinetransaktionsverarbeitung

DATABASESYSTEMS

7.2 Multidim. DatenmodellierungSYSTEMSGROUP

Multidimensionale Umsetzung (cont.)g ( )– Vorteile

• Direkte OLAP-Unterstützung• Analytische Mächtigkeit

– Grenzen• Hohe Zahl an Plattenzugriffen bei ungünstiger Linearisierungsreihenfolge• Durch die Ordnung der Dimensionswerte (für Array-Abbildung nötig)

keine einfache Änderung an Dimensionen möglichkeine einfache Änderung an Dimensionen möglich• Kein Standard für multidimensionale DBMS

– Oft: Hybride Speicherung HOLAP = MOLAP + ROLAP y p g• Relationale Speicherung der Datenbasis• Multidimensionale Speicherung für häufig aggregierte Daten (z.B.

f t (T il )D t C b )angefragte (Teil-)Data Cubes)

3636Datenbanksysteme II― 7. Grundlagen v. DWHs