OLTP OLAP

Werbung
Datenbanken
Informationssysteme
1
Managementinformationssysteme
Charakteristika von Informationssystemen:
• Dienen der Entscheidungsunterstützung
• Betreffen historische Daten, evt. über längere Zeiträume
• Können auf operativen Datenbanken basieren
• Die Daten können auch aus verschiedenen Quellen stammen
• Spezielle Arten von Auswertungen verlangt (OLAP)
• Korrektheit der Daten besonders wichtig, da fehlerhafte Daten bei der
Auswertung besonders schwer zu erkennen sind
Überlegen Sie sich jeweils einige Beispiele für OLTP- bzw.OLAPAuswertungen von Daten in einer Datenbank
Kühn /Fb W
Datenbanken
2006
K6-Informationssysteme.doc
Informationssysteme
2
Wiederholung: Unterschiede OLTP/OLAP
OLTP
OLAP
wie oft wird a. d. Daten zugegriffen
wie wichtig ist die Aktualität der Daten
Art d. Zugriffs (lesen / schreiben;
Dialog/Stapel)
Wie problematisch ist Datenredundanz
Überwiegen vorhersehbare oder nichtvorhersehbare Auswertungen
wieviele Benutzer gleichzeitig
durchsuchte Datenmenge pro Zugriff
Werden „historische Daten“ benötigt
Typischer Benutzer
Kühn /Fb W
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
3
Realisierung von Informationssystemen:
a) durch Zusatzprogramme auf operativen Datenbanken,
d.h.
operative (relationale) Datenbank mit entsprechenden Views
plus OLAP-Auswertungsprogrammen
b) bei großen Datenmengen und umfangreichen Auswertungen:
eigene Datenhaltung
d.h. Datenhaltung mit spezieller Speicherungsform, dabei
- Daten aus verschiedenen Quellen
- periodische Aktualisierung
- unterschiedliche Speicherungsformen möglich:
data warehouse und data mart
Kühn /Fb W
2006
Datenbanken
K6-Informationssysteme.doc
Informationssysteme
4
Erstellung eines Data Warehouse (DW)
OLAP und data mining
Data Mart
Datenextraktion,
-transformation
u.- laden (ETL)
Data Warehouse
sonstige Datenquellen
operative Datenbanken
Kühn /Fb W
Data Mart
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
5
Vorgehen bei der Erstellung eines Data Warehouse
• Aufgabenanalyse (Arten von Auswertungen) und Planung:
Verwendungszweck, Auswertungsarten,
Auswertungsdimensionen, welche Daten, Datenquellen
• DW-Software besorgen
• Datenstruktur entwerfen
• Daten extrahieren, transformieren, laden (ETL-Prozess)
• Erkannte Datenprobleme in den Datenquellen berichtigen
• Ein Programm für den künftigen ETL-Prozess
(Datenaktualisierung) erstellen (SW oder Vorgehensweise)
• Anbindung eines Entscheidungsunterstützungssystems mit
komfortabler Dialogschnittstelle
• Daten und Auswertungen testen
Kühn /Fb W
Datenbanken
2006
K6-Informationssysteme.doc
Informationssysteme
6
Der ETL-Prozess
(beim Erst-Laden bzw. inkrementellen Aktualisieren des DW)
• Daten extrahieren, in einen Zwischenspeicher laden,
fehlerhafte Daten identifizieren
z.B. Schreibfehler, uneinheitliche Schreibweise, fehlende
Daten, mehrfach vorhandene Daten, Inkonsistenz von
Daten aus verschiedenen Quellen, unplausible Daten…
Die Korrektur muss im Quellsystem erfolgen!
• Daten transformieren, bereinigen, evt. verdichten:
Felder transformieren,
z.B. DMÆ €, 2-stell. Jahr Æ 4-stell. Jahr
leeres Feld: Inhalt nicht vorhanden oder nicht bekannt?
Sätze transformieren, z.B. Selektion, Join, Aggregation
• Daten ins Data Warehouse laden
Kühn /Fb W
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
7
Data warehouse Architekturen:
1) MOLAP:
logisch: mehrdimensionaler Datenwürfel (cube, hypercube)
Realisierung: spezielle mehrdimensionale Speicherungsstukturen,
z.B. mehrdimensionale arrays:
+ schnellere Auswertungen
- evt. dünn besetzte Dimensionen (leere Würfelelemente),
2) ROLAP:
auf Basis eines relationalen Datenmodells;
Tabellen; diese aus Performancegründen meist nicht normalisiert
+ auch als front end zu vorhandenen Datenbanken möglich
- langsamere Auswertungen
Kühn /Fb W
2006
Datenbanken
K6-Informationssysteme.doc
Informationssysteme
8
1) Datenorganisation in multidimensionalen Stukturen („MOLAP“)
Datenwürfel (cubes, hypercubes) mit mehreren Dimensionen
Dimensionen: gewünschte Auswertungsgesichtspunkte
Inhalt der „Elementarwürfel“: (evt. mehrere) Fakten
Beispiel: Seminardaten;
Dimensionen (gewünschte Auswertg.): Kurstypen, Veranstaltungsorte, Zeit
Fakten: Anzahl Veranstaltungen
Kurs
Zeit
OOA
OOD
Java
C++
Kühn /Fb W
10
9
15
8
M
8
4
10
12
D
12
8
19
7
K
3
2
13
3
S
4/06
3/06
2/06
1/06
Veranstaltungsort
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
9
Die Dimensionen bilden die Achsen des Koordinatensystems
Dimensionshierarchien
max. Detaillierungsgrad
z.B. Tag - Monat - Quartal - Jahr
Kurs - Kurstyp
Der Datenwürfel ( = "Hypercube", "Faktenwürfel") ist in Zellen
(Elementarwürfel) zerlegt.
Jede Zelle enthält Werte (Kennzahlen) in Abhängigkeit von den (hier 3)
Dimensionen.
Der Detaillierungsgrad des Datenwürfels hängt von den gewünschten
Auswertungen ab. Dies beeinflusst stark die Datenmenge.
Operationen zur Manipulation des Datenwürfels:
• slice & dice
d.h. Auswahl einzelner Ebenen / Teilwürfel
• drill down / roll up
d.h. Wechsel in niedrigere oder höhere Verdichtungsstufen
(=Projektionen)
Kühn /Fb W
2006
Datenbanken
K6-Informationssysteme.doc
Informationssysteme
10
2) Datenorganisation in Tabellen („ROLAP“)
Werden die Daten in einem data warehouse in Tabellen gespeichert, so
ergibt sich ein sog. "Sternschema".
Faktentabelle (meist normalisiert; oft SEHR viele Einträge).
Dimensionstabellen (meist nicht normalisiert).
Dim1
Dim..
Dim2
Faktentabelle
Dim..
Kühn /Fb W
Dim3
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
11
Die Primärschlüssel der Dimensionstabellen sind als Fremdschlüssel in der
Faktentabelle enthalten und bilden gleichzeitig gemeinsam den
Primärschlüssel der Faktentabelle.
Die Abfragen erfolgen über Joins (Star-Join).
Durch Gruppierung und Summenbildung werden die Daten verdichtet
Viele Argumente im group by: drill down; wenige Argumente: roll up
•
•
•
•
Sternschema :
Faktentabelle und nicht-normalisierte Dimensionstabellen.
Zusätzlich Normalisierung der Dimensionstabellen
Æ Schneeflockenschema
In einem DW können auch mehrere Faktentabellen existieren.
Diese können unterschiedliche aber auch (wenige) gemeinsame
Dimensionstabellen haben (z.B. die Zeit)
Problem: Behandlung von Dimensionsgrößen, die sich ändern können?
Kühn /Fb W
Datenbanken
2006
K6-Informationssysteme.doc
Informationssysteme
12
Beispiel: Seminardaten;
Auswertungen: nach Kursen, Veranstaltungsorten, Zeit --> 3 Dim.
Fakten (-> Ergebnistab): Anzahl Veranstaltungen
Sternschema
Kurs
Ergebnis
Veranst.Ort
Kühn /Fb W
Zeit
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
13
Tabellen:
Kurs
Kurztitel
Java
C++
.....
Titel
...
...
...
Tage
5
10
...
VNr
23
27
...
Veranst.ort
Kennz
M
D
.....
Ort
München
Düsseldorf
...
Zeit
QuNr
1/06
2/06
...
Jahr
06
06
...
Quartal
1
2
...
Ergebnis
Kurztitel Kennz QuNr
Java
Java
Java
Java
Java
Java
Java
…
Java
…
AnzVeranst
AnzahlTN
Umsatz
153000
98000
...
...
M
M
M
M
D
D
D
1/06
2/06
3/06
4/06
1/06
2/06
4/06
15
13
8
10
10
6
6
142
88
126
75
128
81
75
M
…
1/07
…
8
…
102
…
Kühn /Fb W
Datenbanken
2006
…
K6-Informationssysteme.doc
Informationssysteme
14
Zeilenanzahl Dimensionstabellen
Seminartyp:
Veranstaltungsort
Zeit:
Zeilenanzahl Faktentabelle
Ergebnis:
Auswertungen: (Star-) Joins mit mehrfacher Gruppenbildung
Beispiel: Anzahl Veranstaltungen pro Kurstyp in München im Jahr 2006:
Kühn /Fb W
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
15
Hinweise zur Erstellung eines Data Warehouse bzw. von Datamarts für
analytische Auswertungen
• Prinzipiell gilt das übliche Phasenmodell
Speziell beachten:
• Exakte Zielvorgabe wichtig (welchem Zweck sollen die Abfragen dienen)
• Klein beginnen (data mart), iterativ erweitern
• Die richtige Auswahl der Dimensionen ist entscheidend für den Nutzen
• Die „Feinheit“ (Granularität) der niedrigsten Hierarchiestufe der jeweiligen
Dimension bestimmt den möglichen Detaillierungsgrad der Auswertungen, aber
auch die zu verwaltende Datenmenge
• Der zeitaufwendigste und fehlerträchtigste Teil ist meist der ETL-Prozess
(extrahieren, transformieren und laden der Daten)
• Entscheidend für Einsatz und Akzeptanz ist eine komfortable Oberfläche für
Dialogabfrage und Reporterstellung.
(s. z.B. ALEA (Microsoft): verwaltet Daten in Form von OLAP-Würfeln mit
mehreren Dimensionen und verwendet als Front End für die Auswertung Excel)
Kühn /Fb W
Datenbanken
2006
K6-Informationssysteme.doc
Informationssysteme
16
Benötigte Informationen zur Benutzung eines Data Warehouse
•
Welche Arten von Daten sind in dem Data Warehouse
enthalten (z.B. Daten über Kunden, Seminare, Patienten,….)
•
Nach welchen Kriterien (Dimensionen ) kann das Data
Warehouse ausgewertet werden
•
Welche Daten sind in der Faktentabelle enthalten
(Umsatzzahlen, Anzahl Veranstaltungen, Teilnehmerzahlen,…)
•
Detaillierungsgrad und Zeitraum der Faktentabelle
•
•
Woher (aus welchen Quellen) stammen die Daten
Welche vordefinierten Abfragen , Tools und grafischen
Auswertungen sind verfügbar
Kühn /Fb W
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
17
Hilfsmittel (Tools):
1. data warehouse Systeme
zur Datenauswahl, -speicherung und -verwaltung
2. Einzelwerkzeuge
für den ELT-Prozess, zur Datenmodellierung u.a.
3. Analyse- und Präsentationstools für vorhandene OLTP-DBs
Literaturhinweise:
Elmasri, Navathe: Grundlagen von Datenbanksystemen
Kemper, Eickler: Datenbanksysteme
Weitere Informationen zu Produkten und Anbietern
s. z.B. www.olapinfo.de
Kühn /Fb W
Datenbanken
2006
K6-Informationssysteme.doc
Informationssysteme
18
Data Mining
Ziel:
Auffinden bisher unbekannter Zusammenhänge („Muster“) aus einem
großen Datenbestand
Data Mining ist noch Gegenstand von Forschung und Entwicklung:
Einsatz neuronaler Netze, künstlicher Intelligenz, von regelbasiertem
Schließen…
Es werden v.a. zwei Arten von Zusammenhängen untersucht:
a) Assoziationsregeln: Zusammenhänge im Verhalten von Objekten
b) Klassifizierungsregeln: aus bekannten Attributwerten auf
unbekannte Eigenschaften/Verhalten schließen
Kühn /Fb W
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
19
Assoziationsregeln:
Zusammenhänge im Verhalten von Objekten erkennen und durch
Regeln ausdrücken
Für die Gültigkeit von Assoziationsregeln gibt es 2 wichtige Kenngrößen:
Confidence und Support
Confidence: in welchem Prozentsatz von Fällen, bei dem der linke Teil der
Regel zutrifft (Voraussetzung) ist auch die rechte Seite erfüllt (Folgerung)
Support: wieviele passende Datensätze gibt es insgesamt, um die Gültigkeit
der Regel zu überprüfen
Beispiel:
Vermutung: ein Kunde, der Produkt A kauft, kauft auch Produkt B
Beobachtung:
Von 5 Personen, die Prod. A gekauft haben, haben 4 auch Prod.B gekauft
Insgesamt sind 400 Verkaufsdatensätze gespeichert , jeder hundertste
betraf ProduktA zusammen mit Produkt B
--> support = 1%, confidence = 80%
Kühn /Fb W
Datenbanken
2006
K6-Informationssysteme.doc
Informationssysteme
20
Klassifizierungsregeln:
Vorhersagen über das Verhalten von Objekten aufgrund bekannter
Attributwerte
Dabei wird auch nach dem Einfluss mehrerer Attribute gesucht -->
Klassifizierungshierarchien
Beispiel:
Klassifizierung von Versicherungsnehmern in der Auto-Haftpflicht, z.B.
nach Alter, Geschlecht und gefahrenem Wagentyp --> Risikoeinstufung
Die Klassifizierungsregel muss mit einer repräsentativen Datenmenge
überprüft werden!
Kühn /Fb W
2006
K6-Informationssysteme.doc
Datenbanken
Informationssysteme
21
Beispielhafte Anwendungsbereiche für Data Mining
- Marketing
Analyse von Kaufmustern
--> Preisgestaltung, Warenplatzierung,Werbung,...
Segmentierung von Kunden, Läden oder Produkten
Ladenstandorte, Sortiment,...
- Finanzwesen
Kreditwürdigkeit von Kunden,
Performanz von Geldanlagen,
Betrugserkennung,...
- Gesundheitswesen
Analyse von Wirkungen und Nebenwirkungen von Behandlungen
und Medikamenten,
Kühn /Fb W
2006
K6-Informationssysteme.doc
Herunterladen