Data Warehousing und Data Mining

Werbung
Data Warehousing
und
Data Mining
Architektur und Komponenten von
Data Warehouses
Ulf Leser
Wissensmanagement in der
Bioinformatik
Inhalt dieser Vorlesung
• Architektur
• Komponenten
• ETL
Ulf Leser: Data Warehousing and Data Mining
2
DWH Grobarchitektur: Hubs and Spokes
Abgeleitete Sichten
Mart 1
Mart 2
Aktualisierungen
Mart 3
DWH
Quelle 1
RDBMS
Quelle 2
IMS
Mart 4
Basisdatenbank
Quelle 3
Textfile
Jahresumsatz: 2334.5565
Pro Monat
Januar:
122.004
Februar
023.445
Quellsysteme
Ulf Leser: Data Warehousing and Data Mining
3
DWH Architektur & Komponenten
Analysewerkzeuge
Data Mining
100
80
Monitoring
60
Ost
40
West
20
Nord
0
1.
Qrtl.
2.
3.
4.
Qrtl.
Qrtl.
Qrtl.
Metadaten
Quelle 1
RDBMS
Staging Area
Staging Area
Quelle 2
IMS
Datenquellen
Arbeitsbereich
Ulf Leser: Data Warehousing and Data Mining
Mart 2
Cube
Basisdaten
Mart 1
Abgeleitete Sichten
4
Langlebigkeit
100
80
60
Ost
40
West
20
Nord
0
1.
Qrtl.
3.
4.
Qrtl.
Qrtl.
Metadaten
Quelle 1
RDBMS
Staging Area
Quelle 2
IMS
2.
Qrtl.
Mart 2
Cube
Staging Area
Mart 1
Flüchtig
Persistent
Ulf Leser: Data Warehousing and Data Mining
5
Alternativen
• Physikalische Aufteilung variabel
– Data Marts auf eigenen Rechnern (Laptop)
– Staging Area auf eigenen Servern
– Metadaten auf eigenem Server (Repository)
Quelle 1
RDBMS
Mart 2
Staging Area
Staging Area
Cube
Quelle 2
IMS
Mart 1
Metadaten
Ulf Leser: Data Warehousing and Data Mining
6
Inhalt dieser Vorlesung
• Architektur
• Komponenten
• ETL
Ulf Leser: Data Warehousing and Data Mining
7
1. Datenquellen
100
• Meist sehr heterogen
80
60
40
20
– Technisch: RDBMS, IMS,
Mainframe, Textfiles, ...
– Logisch: Schema, Format,
Repräsentation,...
– Syntaktisch: Datum, Währung, ...
– Qualität: Fehlende / falsche Werte, Duplikate, ...
– Rechtlich: Datenschutz (Kunden & Mitarbeiter)
0
1.
• Zugriff
– Push:
– Pull:
Quelle erzeugt regelmäßig Extrakte
DWH stößt Zugriff an / Online-Zugriff
• Individuelle Behandlung notwendig
Ulf Leser: Data Warehousing and Data Mining
2.
3.
4.
Qrtl. Qrtl. Qrtl. Qrtl.
8
2. Arbeitsbereich
100
80
60
40
20
• Temporärer Speicher
• Oft quellnahes Schema
• Sinn
0
1.
– ETL Arbeitsschritte effizienter implementierbar
• Mengenoperationen, SQL
– Zugriff auf Basisdatenbank möglich (Upsert)
– Vergleich zwischen Datenquellen möglich
– Filterfunktion: Nur einwandfreie Daten in Basisdatenbank
übernehmen
Ulf Leser: Data Warehousing and Data Mining
2.
3.
4.
Qrtl. Qrtl. Qrtl. Qrtl.
9
3.Basisdatenbank
100
80
60
40
20
• Zentrale Komponente des DWH
0
1.
– „DWH“ oft synonym für Basisdatenbank
• Speichert Daten in feinster Auflösung
– Einzelne Verkäufe
– Einzelne Bons
• Historische Daten
• Große Datenmengen
– Spezielle Modellierung
– Spezielle Optimierungsstrategien
Ulf Leser: Data Warehousing and Data Mining
2.
3.
4.
Qrtl. Qrtl. Qrtl. Qrtl.
10
Analyseorientiertes DWH
• Klassische Datenmodellierung
– Ziele: Redundanzvermeidung / Integritätswahrung / hoher
Durchsatz bei nebenläufigem Zugriff
– Normalformen, Fremdschlüssel, Satzsperren
– Für Lesen und Schreiben geeignet
• Ergebnis
– Viele Relationen, unübersichtliches Schema
– Viele Joins in (fast) allen Queries notwendig
– Joins lenken vom Analyseziel ab – man möchte lieber mit
Begriffen des Geschäftsprozesses umgehen
• Im DWH: Multidimensionale Modellierung
Ulf Leser: Data Warehousing and Data Mining
11
Beispiel: Normalisiertes Schema
customer
id
name
cust_class
discount
customer_id
productg_id
discount
productgroup
line_item
order_id
product_id
amount
single_price
year
id
year
month
id
Month
year_id
day
id
day
month_id
order
session
id
cust_id
day_id
time
Ulf Leser: Data Warehousing and Data Mining
id
session_id
supply_id
total_amount
order_status
order_id
supply_id
status
id
name
product
id
productgroup_id
supply_station
id
region_id
region
id
name
12
Multidimensionales Schema
customer
product
id
name
cust_class
time
id
day
month
year
•
•
•
•
id
name
product_group
line_item
order_id
product_id
amount
single_price
discount_rate
supply
id
region
Technische Informationen raus (Session)
Zusammenfassen wo möglich (discount_rate)
Denormalisierung
Konzentration auf Businessobjekte und -prozesse
Ulf Leser: Data Warehousing and Data Mining
13
Starschema
customer
product
id
name
cust_class
time
id
day
month
year
id
name
product_group
line_item
order_id
product_id
amount
single_price
discount_rate
Ulf Leser: Data Warehousing and Data Mining
Star
supply
id
region
14
Dimensionen und Fakten
Faktentabelle
customer
product
id
name
cust_class
time
id
day
month
year
id
name
product_group
line_item
order_id
product_id
amount
single_price
discount_rate
supply
id
region
Dimensionstabellen
Ulf Leser: Data Warehousing and Data Mining
15
Cube
DVD Verkäufe in
Hessen in 2002
time
2002
region
Sales
Cube
2001
2000
NRW
Hessen
1999
DVD
Gesch.
CD
Bücher
produkt_group
Cube -> Hypercube: Bon / Lieferant / Kunde / ...
Ulf Leser: Data Warehousing and Data Mining
16
4. Abgeleitete Sichten
• Analysten benötigen Daten
– Aggregiert und gruppiert
• Verkäufe nach Monat und Lieferant
• … nach Niederlassung und Produkt
100
80
60
40
20
0
1.
– Ausgewählt
• Alle Verkäufe in Niederlassung X
• Alle Verkäufe von Lieferant Y
• Probleme bei Auswertung auf Cube
– Scannen sehr großer Datenbestände notwendig
– Hohe Detailstufe des Cubes für viele Anfragen nicht notwendig
• Vorab-Erstellung von abgeleiteten Daten
– „Data Marts“
– Prä-aggregierte, angereicherte und gefilterte Sichten
Ulf Leser: Data Warehousing and Data Mining
2.
3.
4.
Qrtl. Qrtl. Qrtl. Qrtl.
17
Materialized Views
• Aktualität der Sichten
– Asynchrone / synchrone Aktualisierung
– Manuelle / automatische Aktualisierung
• Verwendung von MV
– Für welche Anfragen soll eine (welche?) MV verwendet werden?
• Materialisierte Aggregation nach Wochen verwendbar für
Aggregation nach Monaten?
– Ableitbarkeit von (Teil-)Anfragen aus Sichten
• Auswahl von MV
• Welche Sichten sollen materialisiert werden?
• Trade-Off Platzverbrauch, Aktualisierungskosten und
Anfragebeschleunigung
• Ableiten von MV aus Workload
Ulf Leser: Data Warehousing and Data Mining
18
5. Datenanalyse
• „Einfache“ Auswertungen
– OLAP Operationen
– Reports
100
80
60
40
20
0
1.
• OLAP Werkzeuge
– Häufig proprietäre Systeme und Indexstrukturen
– SAS, SPSS, BusinessObjects, Cognos, Excel, …
• Funktionalität
–
–
–
–
Grafische Oberflächen zur Navigation (Würfel)
Interaktive Datenauswahl, Filtering, Chaining, ...
Präsentation: Grafiken, Tabellen, Reports, ...
Management: Zugriffsrechte, Scheduling, …
• Standardreports versus Ad-hoc Anfragen
Ulf Leser: Data Warehousing and Data Mining
2.
3.
4.
Qrtl. Qrtl. Qrtl. Qrtl.
19
Data Mining
• „Finden verborgender, nicht-trivialer Informationen“
• Bereiche
– Statistische Analyse
– Maschinelle Lernverfahren
– Knowledge Discovery in Databases (KDD)
• Suche nach Auffälligkeiten, Mustern, Regeln
– Viele Kunden, die Windeln kaufen, kaufen auch Bier
• Suche nach Erklärungsmodellen
– Modell: Abstraktion der Wirklichkeit
– Korrelation versus Kausalität
Ulf Leser: Data Warehousing and Data Mining
20
Deskriptiv oder Präskriptiv
• Deskriptive Verfahren
– Zusammenfassen der wesentlichen Charakteristika von Daten
– Finden von Ausreißern
– Finden von Abhängigkeiten
• Warenkorbanalyse, Assoziationsregeln
– Finden von Gruppen (Clustering)
• Kunden mit gleichen Eigenschaften
• Präskriptive Verfahren
– Ableitung neuen Wissens auf den Daten
– Basiert auf Modellbildung (durch deskriptive Verfahren)
– Klassifikation
• Entscheidungsbäume, Regelsysteme
– Vorhersage
• Extrapolation, Regression
Ulf Leser: Data Warehousing and Data Mining
21
6. Metadatenrepository
• „... key success factor in DWH ...“
• Erweiterung des Systemkatalogs
• Verwaltung relevanter Metadaten
100
80
60
40
20
0
1.
– Quellbeschreibungen, Datentypen, Skripte,
Prozessbeschreibungen, Schema, Zugriffsgruppen, Sichtdefinitionen, Versionskontrolle, Konfigurationsmanagement, ...
• Ziele
– Nachvollziehbarkeit der Prozesse
– Zentrale Steuerung der Prozesse
– Technische Beschreibung des DWH
• Produkte: Platinum CA, Microsoft, Oracle, ...
• Standards: IRDS, OIM, CWM, ...
Ulf Leser: Data Warehousing and Data Mining
2.
3.
4.
Qrtl. Qrtl. Qrtl. Qrtl.
22
Oracle Warehouse Builder
Ulf Leser: Data Warehousing and Data Mining
23
Inhalt dieser Vorlesung
• Architektur
• Komponenten
• ETL: Extraction, Transformation, Load
100
80
60
40
20
0
1.
2.
3.
4.
Qrtl. Qrtl. Qrtl. Qrtl.
Ulf Leser: Data Warehousing and Data Mining
24
ETL - Extraktion
• Filtern der „richtigen“ Daten aus den Quellen
– Korrekt und relevant (für das Ziel des DWH)
• Bereitstellung der Datenfiles im gewünschten Format
zum gewünschten Zeitpunkt am gewünschten Ort
• Kontinuierliche Datenversorgung des DWH
• Producer - Consumer
– Quelle informiert über Änderungen
– DWH konsumiert Änderungen
Ulf Leser: Data Warehousing and Data Mining
25
Parameter
• Wann liefert der Extraktor die Daten?
– Periodisch
– Synchron
– Ereignisgesteuert
• Welche Daten liefert der Extraktor?
– Kompletten Datenbestand (Snapshot)
– Alle Änderungen (Logfile)
– Nettoänderungen zu festen Zeitpunkten (Snapshot-Diff)
• In welcher Art liefert der Extraktor die Daten
– SQL Befehle (synchron/Logfile: Replication)
– Flatfiles
Ulf Leser: Data Warehousing and Data Mining
26
ETL - Transformation
• Transformation der Daten in eine „DWH-gerechte“ Form
– Schema, Format, Semantik
– Laden soll so schnell wie möglich gehen
– Erledigung vieler Teilschritte außerhalb des DWH
• Arten von Transformationen
– Schema-/ Formattransformationen
– Datentransformationen
• Transformationen möglich an zwei Stellen
– Transformation der Quell-Extrakte in Load-Files
– Transformation von Staging-Area nach Basis-DB
Ulf Leser: Data Warehousing and Data Mining
27
Schematransformationen
• 1 Welt – 100 Anwendungen – 1000 Schema
– Unterschiedliche Auffassungen
– Unterschiedliche Anforderungen
– Unterschiedliche Historie
• Unterschiedliche Datenmodelle
–
–
–
–
Relationales Modell
Objektorientierte Modelle (UML)
Satzorientierte Formate (Cobol)
Hierarchische Formate (IMS, XML)
• Unterschiedliche Modellierung
– Was ist Relation, was Attribut, was Wert ?
– Schlüssel
Ulf Leser: Data Warehousing and Data Mining
28
Datentransformationen
• Syntax von Werten
– Datum: 20. Januar 2003, 20.01.2003, 1/20/03
– Codierungen: „1: Adr. unbekannt, 2: alte Adresse, 3: gültige
Adresse, 4: Adr. bei Ehepartner, ...“
– Sprache
– Abkürzungen/Schreibweisen: Str., strasse, Straße, ...
• Datentypen, Semantik
– Datentypen: Real, Integer, String
– Genauigkeit, Feldlänge, Nachkommastellen, ...
– Skalen: Noten, Temperatur, Längen, Währungen,...
Ulf Leser: Data Warehousing and Data Mining
29
ETL - Laden
• Effizientes Einbringen der neuen Daten in das DWH
• Techniken
– SQL – Satzbasiert
• Standardschnittstellen: Embedded SQL, JDBC, ...
• Einzelne Operationen oder proprietäre Erweiterungen
– Array Insert
• Beachtung und Aktivierung aller Datenbankverfahren
– Trigger, Indexaktualisierung, Transaktionen, ...
– BULK Loader Funktionen
• DB-spezifische Erweiterungen zum Laden großer Datenmengen
– Benutzung von Anwendungsschnittstellen
• Bei manchen Produkten notwendig (SAP)
Ulf Leser: Data Warehousing and Data Mining
30
BULK Uploads
• Für große Datenmengen einzige ausreichend
performante Schnittstelle
• Kritischer Prozess
– LOAD füllt i.d.R. immer nur eine Tabelle
– LOAD setzt eine Sperre auf die gesamte Tabelle
– Während LOAD werden Integritätsconstraints, Trigger,
Indexaktualisierung deaktiviert
• Nach LOAD werden IC überprüft und Indexe aktualisiert
• Trigger werden nicht ausgeführt
– Update oder Insert ? (Upsert!)
• Performance von LOAD oft limitierender Faktor
Ulf Leser: Data Warehousing and Data Mining
31
Beispiel
Handelshaus, Daten einer Woche, 1 Filiale
Laden mit voller Qualitätskontrolle
10 min
Laden mit partieller Datenverbesserung
2 min
Nur Laden
45 sec
Handelshaus, Daten einer Woche, 2000 Filiale
Laden mit voller Qualitätskontrolle
330h = 14d
Laden mit partieller Datenverbesserung
67 h = 2,8d
Nur Laden
Ulf Leser: Data Warehousing and Data Mining
25h = 1d
32
Herunterladen