Multidimensionale Modellierung
Transcrição
Multidimensionale Modellierung
Data Warehousing Modellierung im DWH Das multidimensionale Datenmodell Ulf Leser Wissensmanagement in der Bioinformatik Zusammenfassung: Hubs and Spokes Mart 1 Mart 2 Mart 3 Mart 4 DWH Quelle 1 RDBMS Quelle 2 IMS Quelle 3 Textfile Jahresumsatz: 2334.5565 Pro Monat Januar: 122.004 Februar 023.445 Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 2 DWH Architektur Data Warehouse Manager Analysewerkzeuge 10 0 80 60 Ost 40 We st 20 N or d 0 1. 2. 3. 4. Qr t l . Qr t l . Qr t l . Qr t l . Metadaten Quelle 1 RDBMS Quelle 2 IMS Staging Area Staging Area Datenquellen Mart 2 Cube Basisdaten Mart 1 Abgeleitete Sichten Arbeitsbereich Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 3 DWH Prozesse O t W e E xtraction T ransformation L oad View Maintenance Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 4 Parameter von Extraktionskomponenten • Extraktor – Komponente zum Extrahieren der Daten aus den Quellen • Wann liefert der Extraktor die Daten? – Periodisch – Synchron – Ereignisgesteuert • Welche Daten liefert der Extraktor? – Kompletten Datenbestand (Snapshot) – Alle Änderungen (Logfile) – Nettoänderungen zu fix. Zeitpunkten (Snapshot-Diff) • In welcher Art liefert der Extraktor die Daten – SQL Befehle (synchron/Logfile: Replication) – Flatfiles Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 5 Transformationen in Staging Area • Benutzte SQL • Effiziente mengenorientierte Berechnungen möglich • Vergleiche über Zeilen hinaus möglich – Schlüsseleigenschaft, Namensduplikaterkennung, ... • Vergleiche mit Daten in Basisdatenbank möglich – Duplikate, Plausibilität (Ausreißer), Konsistenz (Artikel-Ids) • Typisch: Tagging von Datensätzen durch Prüf-Regeln UPDATE sales SET price=price/MWST; UPDATE sales SET cust_name= (SELECT cust_name FROM customer WHERE id=cust_id); ... UPDATE sales SET flag1=FALSE WHERE cust_name IS NULL; ... INSERT INTO DWH SELECT * FROM sales Vorlesung, WHERE Sommersemester f1=TRUE &2004 f2=TRUE & ... 6 Ulf Leser: Data Warehousing, BULK Uploads • Für große Datenmengen einzige ausreichend performante Schnittstelle • Kritischer Prozess – Load-Vorgänge blockieren i.d.R. die komplette DB (Schreibzugriff auf komplette Tabelle) – Konsistenz, Trigger, ICs i.d.R. deaktiviert – Indexaktualisierung – Update oder Insert ? (Upsert!) • Performance von LOAD oft limitierender Faktor Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 7 Inhalt dieser Vorlesung • Das Multidimensionale Datenmodell (MDDM) – Grundidee – Formale Definition der Modellelemente – Beispiel Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 8 MDDM Grundidee • Unterscheidung von – Fakten (Measures) – Gemessene Werte – Dimensionen – Beschreibung der Messwerte in Raum, Zeit, Organisation, ... – Klassifikationshierarchien – Dimensionen haben hierarchische Struktur • Metapher: Würfel (Cube) bzw. Hypercube – Fakten: Punkte im multidimensionalen Raum • Analyse durch Operationen auf dem Cube – Dimensionen erhöhen/verringern – Auswahl von Subwürfeln (Flächen, Punkten, ...) Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 9 Beispiel • Verkäufe von Autos pro Marke, Kontinent und Jahr gemessen in Euro – Measures: • Verkäufe in Euro – Dimensionen • Automarke • Kontinent • Jahr Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 10 Beispiel: Auswahl (Slicing) Verkäufe in Asien pro Jahr und Marke Verkäufe von Peugeot pro Jahr und Kontinent Jahr 2002 Kontinent 2001 2000 Asien Südamerika 1999 Ford VW Peugeot BMW Automarke Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 11 Dimensionen • Eindeutige Strukturierung des Datenraums • Hoffentlich orthogonal – Abhängigkeiten zwischen Dimensionen bereiten an vielen Stellen Probleme – später • Eine Dimension hat ein Schema – Tag, Woche, Jahr – Landkreis, Land, Staat – Produktgruppe, Produktklasse, Produktfamilie • ... und Werte – (1, 2, 3, ..., 31), (1, ... 52), (1900, ..., 2003) – (...), (Berlin, NRW, Department-1, ...), (BRD, F, ...) Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 12 Dimension Dimension Jahr Quartal Monat Tag 1997 I 1998 1999 II III IV Klassifikationsstufen Jan Feb Mar 1 ... 31 Top 2000 I II III IV Okt Nov Dez 1 ... 28 Klassifikationsknoten Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 13 Produkthierarchien Aus: Geppert, ETZ Zürich, Vorlesung „Data Warehouse“ • Elemente einer Stufe können geordnet sein – Geordnet: Zeit – Ungeordnet: Produkte • Elemente sind immer über Hierarchie angeordnet Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 14 Formale Definition • Ziel – Operationen auf einem MDDM sind Aggregationen / Verdichtungen – Aus dem Modell muss man ersehen können, welche Verdichtungen sinnvoll sind und welche nicht – Tools bieten dann nur die sinnvollen Operationen an – Optimierer können die Informationen für schnellere Anfragen benutzen – Mit E/R nicht erreichbar – zu wenig Semantik Konzern Sparte Region Bereich Unternehmen Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 Abteilung 15 Klassifikationsschema • Definition. Ein Klassifikationsschema K (einer Dimension D) ist ein 5-Tupel {k0, k1, ... kn}, →, M, stufe(), knoten()) mit – Menge von Klassifikationsstufen {k0, ... kn} – Menge M von Klassifikationsknoten – Halbordnung „→“ auf {k0, ... kn} mit • Größtem Element kn : ∀ki , 0≤ i≤n-1: kn ← ki – Stufe() weist jedem Klassifikationsknoten genau eine Klassifikationsstufe zu – Knoten()=stufe-1() berechnet für eine Klassifikationsstufe die Menge aller ihr zugeordneten Klassifikationsknoten • Bemerkung – Die Halbordnung „→“ überträgt sich natürlich auf Klassifikationsknoten Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 16 Erläuterung Klassifikationsstufen • Die Klassifikationsstufen sind die „Schemaelemente“ der Dimension • Das größte Element kn ist artifiziell – es steht für „alles“, also die Verdichtung in einen einzelnen Wert • Wir nennen es TOP • Interpretation von „→“: – Funktionale Abhängigkeit – Aggregierbarkeit – Tag bestimmt Monat bestimmt Jahr bestimmt TOP • 21.12.2003 → 12.2003 → 2003 → TOP – Produkt → Produktfamilie → Produktgruppe → TOP • “Asus M2400N“ → Notebooks → Büroelektronik → TOP • Beachte: Halbordnung ist immer zyklusfrei Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 17 Beispiel • Ordnung – – – – – – Tag → Monat Monat → Quartal Quartal → Jahr Tag → Woche Woche → Jahr Alle → Top Top Jahr Tatsächlich ? Quartal Woche • Keine Ordnung – Quartal ? Woche – Monat ? Woche • Transitivität – Tag → Jahr Saison Monat Tag Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 18 Knotenattribute Name Staat ... Name Bundesland ... Name Depot Manager Region • Jede Klassifikationsstufe hat eine Menge von Attributen, die Knotenattribute Name Logistics Address Shop Supplier Facilities Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 19 Erläuterung Klassifikationsknoten • Klassifikationsknoten – Klassifikationsknoten sind die Werte der Schemaelemente (Stufen) einer Dimension – Jeder Knoten ist über die Funktion stufe() genau einer Stufe zugeordnet • Kein Produkt darf zu zwei Produktgruppen gehören – Die größte Stufe TOP hat nur einen Knoten – TOP – M zerfällt also in die disjunkten Menge knoten(ki) Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 20 Beispiel Top Top Jahr Quartal Monat Tag 1997 I 1999 II III IV Jan Feb Mar 1 ... 31 1998 2000 I II III IV Okt Nov Dez 1 ... 28 Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 21 Klassifikationspfade • Definition. Ein Klassifikationspfad P in einem Klassifikationsschema K ist eine Menge von Klassifikationsstufen {p0, ..., pm} mit – – – – – {p0, ...,pm-1} ⊆ {k0, ..., kn-1} pm = kn ∀ pi , 1≤ i≤m: pi-1 → pi Die Länge des Pfades ist |P|=m+1 Der Klassifikationslevel von pi in P ist i • Bedeutung – Ein Pfad ist damit eine voll geordnete Teilmenge von {k1, ..., kn} – Jeder Pfad beinhaltet das größte Element TOP – Zweck: Verdichtung ist nur entlang von Klassifikationspfaden sinnvoll Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 22 Beispielpfade Klassifikationsschema Pfad 1 Pfad 2 Top Top Top Jahr Jahr Jahr Quartal Quartal Woche Woche Monat Monat Tag Tag Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 Tag 23 Klassifikationsstufen und Pfade Level 4 Top Level 3 Top Level 3 Jahr Level 2 Jahr Level 1 Woche Level 0 Tag • Der Klassifikationslevel einer Stufe ist nur eindeutig in einem Pfad Level 2 •Der Level des größten Elements TOP ist nicht Level 1 konstant Level 0 Quartal Monat Tag Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 24 Klassifikationshierarchie • Definition. – Die Klassifikationshierarchie KP zu einem Klassifikationsschema K und Pfad P ist der Baum mit Knoten N und Kanten E wie folgt: N= U knoten( p ) ⊆ M i pi ∈P n1 , n2 ∈ N ∧ n1 → n2 ∧ E = (n1 , n2 ) j : n knoten ( p ) n knoten ( p ) ∃ ∈ ∧ ∈ 1 2 j j +1 • Beachte – Klassifikationshierarchie = Knotenhierarchie in einem Pfad – Jede Klassifikationshierarchie ist balanciert: Alle Pfade WurzelBlatt haben die selbe Länge |P| Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 25 Dimension • Definition. Eine Dimension D=(K, {P1,...,Pj}) besteht aus – Einem Klassifikationsschema K – Einer Menge von Pfaden Pi aus K – Jedes k∈K muss in mindestens einem Pfad in D enthalten sein • Bemerkungen – Für jedes k∈K gibt es mindestens einen Pfad, nämlich k→TOP – D muss nicht alle Pfade enthalten, die es in K gibt • Designentscheidung • Schreibweise: – D.k bezeichnet die Klassifikationsstufe k aus D – Jedes D.k kann in mehreren Pfaden vorkommen Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 26 Granularität • Definition. Gegeben eine Menge U von n Dimensionen D1,..., Dn. Eine Granularität G über U ist eine Menge {D1.kk1,... ,Dn.kkn} für die gilt – kki ist eine Klassifikationsstufe in Di – Es gibt keine funktionalen Abhängigkeiten zwischen den Klassifikationsstufen D1.kk1,..., Dn.kkn • Bemerkungen – Beispiel: Nicht gleichzeitig Dimensionen Zeit und „Fiskalisches Jahr“ in einer Granularität betrachten – Mit einer Granularität legt man fest, in welcher Detailstufe Fakten in den einzelnen Dimensionen beschrieben werden – Abkürzung: Lässt man in U eine Dimension Di weg, mein dies implizit Di.TOP Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 27 Halbordnung auf Granularitäten • Definition. Auf der Menge aller Granularitäten zu einer Menge U von Dimensionen ist eine Halbordnung „<“ wie folgt definiert – Sei G1={D11.kk11,... ,Dn1.kkn1} und G2={D12.kk12,... ,Dn2.kkn2} – Ordne die Dimensionen in G1‘ und G2‘ beliebig, aber gleich – Es gilt G1<G2 genau dann wenn • ∀i: Di1.kki1 →Di2 .k2i2 oder Di1.kki1=Di2 .kki2 • Benutzung – Beschreibung der Transformation von Granularitäten – Anfrageoptimierung: Wiederverwendung von Aggregaten Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 28 Beispiel Bereich Region Zeit TOP Top Top Konzern Staat Jahr Sparte Bundesland Monat Abteilung Shop Tag (B.Sparte, R.Shop, Z.Tag) < (B.Sparte, R.Shop, Z.Monat) < (B.Sparte, R.Top, Z.Monat) < (B.Top, R.Top, Z.Top) (B.Sparte, R.Staat, Z.Tag) ? (B.Konzern, R.Shop, Z.Tag) Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 29 Würfelschema • Definition. Ein Würfelschema WS=(G,F) besteht aus – Einer Granularität G – Einer Menge F von unterschiedlichen Fakten Fi • Definition. Ein Würfel W ist eine Instanz eines Würfelschema (G,F) W = dom(G ) × dom( F ) = knoten( D1.k k1 ) × ...× knoten( Dn .k kn ) × dom( F1) × dom( F j ) • Bemerkung – Die Werte dom(G) geben die Koordinaten der Werte dom(F) an – Verhältnis Würfelschema zu Würfel ist wie Relationenschema zu Relation Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 30 Kein Würfelschema • Autoverkäufe pro Zeit (Monat, Jahr) , Händler und Region (Kreis, Land) • Drei Dimensionen – Monat → Jahr – Händler – Kreis → Land • Aber: EU Recht ! –Händler → Land Jahr Land Monat Kreis Jahr Land Monat Kreis Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 Händler Händler 31 Kein Würfelschema • Autoverkäufe pro Zeit (Monat, Jahr) , Händler und Region (Kreis, Land) • Drei Dimensionen Jahr – Monat → Jahr – Händler Monat – Kreis → Land Modellierung ist anwendungsabhängig • Aber: EU Recht ! –Händler → Land Land Kreis Jahr Land Monat Kreis Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 Händler Händler 32 Semantik von Kanten • Die Hierarchie von Klassifikationsstufen wird durch funktionale Abhängigkeiten bestimmt • Das beinhaltet zunächst keine Bestimmung der Semantik der Kanten Bereich Komm.Elektronik Land Brandenburg Top Güter Hauptabt. Mobilfunk Kreis Potsdam P.gruppe Kleidung Abteilung Dualband Stadt Golm Produkt Hose Part-Of Topologisch Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 IS-A 33 Ein längeres Beispiel • Wir bauen ein DWH zur Verwaltung von Lagerbeständen • Fakten – Bestand und Delta von Artikeln • Dimensionen – Zeit • Klassifikationsstufen: Monat, Quartal, Woche, Jahr – Ort • Klassifikationsstufen: Region, Land – Produkt • Klassifikationsstufen: Artikel, Artikelgruppe, Bereich Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 34 Klassifikationsschema • Halbordnung – – – – – – – – – Top ← Jahr Jahr ← Quartal Quartal ← Monat Jahr ← Woche Top ← Land Land ← Region Top ← Bereich Bereich ← Artikelgruppe Artikelgruppe ← Artikel ¾ Struktur der Dimensionen Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 35 Pfade • • • • P1: P2: P3: P4: Top Top Top Top ← ← ← ← Jahr ← Quartal ← Monat Jahr ← Woche Land ← Region Bereich ← Artikelgruppe ← Artikel ¾ Entlang der Pfade sind Verdichtungen im Modell sinnvoll Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 36 Klassifikationsknoten • Jahr – • Quartal – • Kleidung, Nahrung, Elektronik, ... Artikelgruppe – • Bayern, Berlin, ..., Departament1, Departament2, ... Bereich – • Deutschland, Frankreich, Großbritannien, ... Region – • 1-3 (pro Quartal I), 4-6 (pro Quartal II), ... Land – • 1-52 (pro Jahr) Monate – • I, II, III, IV (pro Jahr) Woche – • 1997, 1998, 1999 Oberbekleidung, Unterbekleidung, Spirituosen, Kindernahrung, Kleingeräte, TV/Video, ... Artikel – ... ¾ Alle möglichen Ausprägungen der Klassifikationsstufen Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 37 Klassifikationshierarchien 1 Top • Klassifikationshierarchie zu P1 1997 1998 1999 I II III IV Jan Feb Mar ... Okt Nov Dez • Klassifikationshierarchie zu P2 Top 1997 1 ... Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 1998 52 ... 1999 1 ... 38 52 Klassifikationshierarchien 2 • Klassifikationshierarchie P3 Top BRD F GB Bayern ... Bremen ... Wales ... N-Irland • Klassifikationshierarchie P4 Nahrung Milchwaren ... Top Kleidung Spirituosen ... Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 Kleingeräte Elektronik ... TV/Video 39 Dimensionen • Dimension ZEIT – ({Monat, Quartal, Woche, Jahr}, {P1, P2}) • Dimension ORT – ({Region, Land}, {P3}) • Dimension PRODUKT – ({Artikel, Artikelgruppe, Bereich}, {P4}) ¾ Dimensionen umfassen Stufen und Pfade Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 40 Granularität, Würfel • Mögliche Granularitäten – G1 = (Zeit.Woche, Ort.Land, Produkt.Artikel) – G2 = (Zeit.Jahr, Ort.Gebiet, Produkt.TOP) – Halbordnung: • • • • • (Zeit.Woche, Ort.Gebiet, Produkt.Artikel) < (Zeit.Jahr, Ort.Gebiet, Produkt.Bereich) < (Zeit.Jahr, Ort.Top, Produkt.Bereich) < (Zeit.ZOP, Ort.Top, Produkt.Top) =? • Würfelschema – Granularität plus Menge von Fakten (F1=Bestand, F2=Delta) ¾ Würfel: Instanz des Würfelschemas ¾ Operationen auf Würfeln verändern die Granularität ¾ Ziel: Nur sinnvolle Operationen zulassen Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 41 Zusammenfassung Dimension Jahr Quartal Monat Tag 1997 I 1998 1999 II III IV Klassifikationsstufen Jan Feb Mar 1 ... 31 Top 2000 I II III IV Okt Nov Dez 1 ... 28 Klassifikationsknoten Ulf Leser: Data Warehousing, Vorlesung, Sommersemester 2004 42