![Page 1: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/1.jpg)
1
Speichern und Lesen von Daten im Data Warehouse
Stern-SchemaDaten-WürfelAnfragen Optimierung des Zugriffs
![Page 2: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/2.jpg)
Data Warehouses 2
Das Stern-Schema: Handelsunternehmen
Verkäufe
Zeit
Verkäufer
ProdukteKunden
Filialen
Faktentabelle
Dimensionstabellen
![Page 3: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/3.jpg)
Data Warehouses 3
Das Stern-Schema
![Page 4: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/4.jpg)
Data Warehouses 4
Stern-Schema bei Data Warehouse-Anwendungen Eine sehr große Faktentabelle
Alle Verkäufe der letzten drei JahreAlle Telefonate des letzten JahresAlle Flugreservierungen der letzten fünf Jahrenormalisiert
Mehrere DimensionstabellenZeitFilialenKundenProduktOft nicht normalisiert
![Page 5: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/5.jpg)
Data Warehouses 5
Das Stern-Schema: Krankenversicherung
Behandlungen
Zeit
Krankheiten
ÄrztePatienten
Krankenhäuser
![Page 6: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/6.jpg)
Data Warehouses 6
Stern-SchemaVerkäufe
VerkDatum
Filiale Produkt Anzahl Kunde Verkäufer
25-Jul-00 Passau 1347 1 4711 825... ... ... ... ... ...
FilialenFilialenKennung
Land Bezirk ...
Passau D Bayern
...
... ... ... ...
KundenKundenNr
Name wieAlt ...
4711 Kemper
43 ...
... ... ... ...
VerkäuferVerkäuferNr
Name Fachgebiet
Manager wieAlt ...
825 Handyman
Elektronik 119 23 ...
... ... ... ... ... ...
Faktentabelle (SEHR groß)
Dimensionstabellen (relativ klein)
![Page 7: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/7.jpg)
Data Warehouses 7
Stern-Schema (cont‘d)
ZeitDatum Tag Monat Jahr Quarta
lKW Wochenta
gSaison
25-Jul-00 25 7 2000
3 30 Dienstag Hochsommer
... ... ... ... ... ...
18-Dec-01
18 12 2001
4 52 Dienstag Weihnachten
... ... ... ... ... ... ... ...ProdukteProduktNr
Produkttyp Produktgruppe
Produkthauptgruppe
Hersteller
..
1347 Handy Mobiltelekom
Telekom Siemens ..
... ... ... ... ... ..
![Page 8: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/8.jpg)
Data Warehouses 8
Nicht-normalisierte Dimensionstabellen: effizientere Anfrageauswertung
ZeitDatum Tag Monat Jahr Quarta
lKW Wochenta
gSaison
25-Jul-00 25 7 2000
3 30 Dienstag Hochsommer
... ... ... ... ... ...
18-Dec-01
18 12 2001
4 52 Dienstag Weihnachten
... ... ... ... ... ... ... ...
ProdukteProduktNr
Produkttyp Produktgruppe
Produkthauptgruppe
Hersteller
..
1347 Handy Mobiltelekom
Telekom Siemens ..
... ... ... ... ... ..
Datum Monat Quartal
ProduktNr Produkttyp Produktgruppe Produkthauptgruppe
![Page 9: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/9.jpg)
Data Warehouses 9
Normalisierung führt zum Schneeflocken-Schema
Verkäufe
ZeitVerkäufer
Produkte
KundenFilialen
Quartale
KWs
Produkttypen
Produktgruppen
Produkthaupt-gruppen
![Page 10: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/10.jpg)
Data Warehouses 10
Galaxy-Schema
mehrere Faktentabellen, verknüpft mit denselben Dimensionstabellen
![Page 11: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/11.jpg)
Data Warehouses 11
Anfragen im Sternschema
select sum(v.Anzahl), p.Hersteller
from Verkäufe v, Filialen f, Produkte p, Zeit z, Kunden k
where z.Saison = 'Weihnachten' and
z.Jahr = 2001 and k.wieAlt < 30 and
p.Produkttyp = 'Handy' and f.Bezirk = 'Bayern' and
v.VerkDatum = z.Datum and v.Produkt = p.ProduktNr and
v.Filiale = f.FilialenKennung and v.Kunde = k.KundenNr
group by p.Hersteller;
Einschränkungder Dimensionen
Join-Prädikate
![Page 12: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/12.jpg)
Data Warehouses 12
Algebra-Ausdruck
Verkäufe
...(Filialen)
...(Zeit)...(Kunden)
...(Produkte)
A A A
A
![Page 13: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/13.jpg)
Data Warehouses 13
Roll-up/Drill-down-Anfragenselect Jahr, Hersteller, sum(Anzahl)
from Verkäufe v, Produkte p, Zeit z
where v.Produkt = p.ProduktNr and v.VerkDatum = z.Datum
and p.Produkttyp = 'Handy'
group by p.Hersteller, z.Jahr;
select Jahr, sum(Anzahl)
from Verkäufe v, Produkte p, Zeit z
where v.Produkt = p.ProduktNr and v.VerkDatum = z.Datum
and p.Produkttyp = 'Handy'
group by z.Jahr;
Roll-up
Drill-down
![Page 14: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/14.jpg)
Data Warehouses 14
Ultimative Verdichtung
select sum(Anzahl)
from Verkäufe v, Produkte p
where v.Produkt = p.ProduktNr and p.Produkttyp = 'Handy';
![Page 15: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/15.jpg)
Data Warehouses 15
![Page 16: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/16.jpg)
Data Warehouses 16
Rol
l-up
Drill-
Dow
n
![Page 17: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/17.jpg)
Data Warehouses 17
Flexible Auswertungsmethoden: slice and dice
Produktgruppen
Regionen
Kunde
n
ProduktgruppenR
egionen
Kunde
n
Produktgruppen
Regionen
Kunde
n
![Page 18: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/18.jpg)
Data Warehouses 18
Materialisierung von Aggregaten
insert into Handy2DCube ( select p.Hersteller, z.Jahr, sum(v.Anzahl) from Verkäufe v, Produkte p, Zeit z where v.Produkt = p.ProduktNr and p.Produkttyp = 'Handy' and v.VerkDatum = z.Datum group by z.Jahr, p.Hersteller ) union( select p.Hersteller, to_number(null), sum(v.Anzahl) from Verkäufe v, Produkte p where v.Produkt = p.ProduktNr and p.Produkttyp = 'Handy' group by p.Hersteller ) union( select null, z.Jahr, sum(v.Anzahl) from Verkäufe v, Produkte p, Zeit z where v.Produkt = p.ProduktNr and p.Produkttyp = 'Handy' and v.VerkDatum = z.Datum group by z.Jahr ) union( select null, to_number(null), sum(v.Anzahl) from Verkäufe v, Produkte p where v.Produkt = p.ProduktNr and p.Produkttyp = 'Handy' );
![Page 19: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/19.jpg)
Data Warehouses 19
Relationale Struktur der Datenwürfel
![Page 20: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/20.jpg)
Data Warehouses 20
Würfeldarstellung
![Page 21: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/21.jpg)
Data Warehouses 21
Der cube-Operatorselect p.Hersteller, z.Jahr, f.Land, sum(v.Anzahl)
from Verkäufe v, Produkte p, Zeit z, Filialen f
where v.Produkt = p.ProduktNr and p.Produkttyp = 'Handy'
and v.VerkDatum = z.Datum and v.Filiale = f.Filialenkennung
group by cube (z.Jahr, p.Hersteller, f.Land);
![Page 22: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/22.jpg)
Data Warehouses 22
Wiederverwendung von Teil-Aggregateninsert into VerkäufeProduktFilialeJahr
( select v.Produkt, v.Filiale, z.Jahr, sum(v.Anzahl)
from Verkäufe v, Zeit z
where v.VerkDatum = z.Datum
group by v.Produkt, v.Filiale, z.Jahr );
select v.Produkt, v.Filiale, sum(v.Anzahl)
from Verkäufe v
group by v.Produkt, v.Filiale
![Page 23: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/23.jpg)
Data Warehouses 23
Wiederverwendung von Teil-Aggregatenselect v.Produkt, v.Filiale, sum(v.Anzahl)
from VerkäufeProduktFilialeJahr v
group by v.Produkt, v.Filiale
select v.Produkt, z.Jahr, sum(v.Anzahl)
from Verkäufe v, Zeit z
where v.VerkDatum = z.Datum
group by v.Produkt, z.Jahr
![Page 24: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/24.jpg)
Data Warehouses 24
Die Materialisierungs-Hierarchie
Teilaggregate T sind für eine Aggregation A wiederverwendbar wenn es einen gerichteten Pfad von T nach A gibt
Also T ...... A Man nennt diese Materialisierungshierarchie auch einen
Verband (Engl. Lattice)
{Produkt, Jahr}
{Produkt}
{Filiale, Jahr}
{ }
{Produkt, Filiale}
{Produkt, Filiale, Jahr}
{Jahr} {Filiale}
![Page 25: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/25.jpg)
Data Warehouses 25
Die Zeit-Hierarchie
Tag
Woche (KW)
Monat
Quartal
Jahr
![Page 26: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/26.jpg)
Data Warehouses 26
Bitmap-Indexe
Optimierung durch Komprimierung der Bitmaps Ausnutzung der dünnen Besetzung
Runlength-compression Grundidee: speichere jeweils die Länge der Nullfolgen zwischen
zwei Einsen Mehrmodus-Komprimierung:
bei langen Null/Einsfolgen speichere deren Länge Sonst speichere das Bitmuster
![Page 27: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/27.jpg)
Data Warehouses 27
Beispiel-Anfrage und Auswertung
![Page 28: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/28.jpg)
Data Warehouses 28
Bitmap-Operationen
![Page 29: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/29.jpg)
Data Warehouses 29
Bitmap-Join-Index
![Page 30: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/30.jpg)
Data Warehouses 30
B-Baum
TID-V
(i,II)(ii,I)(iii,II)(iv,II)(v,I)(vi,II)...
B-Baum
TID-K
(I,i)(I,v)(II,i)(II,iii)(II,iv)(II,vi)...
![Page 31: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/31.jpg)
Data Warehouses 31
B-Baum
TID-V
(i,II)(ii,I)(iii,II)(iv,II)(v,I)(vi,II)...
Select k.*
From Verkäufe v, Kunden k
Where v.ProduktID = 5 And
v.KundenNr = k.KundenNr
5
5
![Page 32: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/32.jpg)
Data Warehouses 32
Select v.*
From Verkäufe v, Kunden k
Where k.KundenNr = 4711 and
v.KundenNr = k.KundenNrB-Baum
TID-K
(I,i)(I,v)(II,i)(II,iii)(II,iv)(II,vi)...
![Page 33: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/33.jpg)
Data Warehouses 33
![Page 34: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/34.jpg)
Data Warehouses 34
Beispielanfrage auf dem Sternschema: Stern-Verbund -- Star Join
select sum(v.Anzahl), p.Hersteller
from Verkäufe v, Filialen f, Produkte p, Zeit z, Kunden k
where z.Saison = 'Weihnachten' and
z.Jahr = 2001 and k.wieAlt < 30 and
p.Produkttyp = 'Handy' and f.Bezirk = 'Bayern' and
v.VerkDatum = z.Datum and v.Produkt = p.ProduktNr and
v.Filiale = f.FilialenKennung and v.Kunde = k.KundenNr
group by p.Hersteller;
Einschränkungder Dimensionen
Join-Prädikate
![Page 35: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/35.jpg)
Data Warehouses 35
Verkäufe KundenZeit
Filialen
Produkte
Illustration des Star Join
![Page 36: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/36.jpg)
Data Warehouses 36
1
1
1
1
1
1
1
1
1
1
1
1
1
1
Verkäufe KundenZeit
FilialenProdukte
Bitmap-Indexe für die Dimensions-Selektion
![Page 37: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/37.jpg)
Data Warehouses 37
Ausnutzung der Bitmap-Join-IndexeVerkäufe KundenZeit
FilialenProdukte
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
![Page 38: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/38.jpg)
Data Warehouses 38
Weitere Decision-Support Anfrage-Typen Top N-Anfragen
Ich will nur die N besten Treffer erhalten und nicht alle 5 Millionen
Muss bei der Anfrageoptimierung berücksichtigt werden
Online AggregationMan berechnet das Ergebnis approximativ Je länger die Anfrage läuft, desto genauer wird das
Ergebnis
![Page 39: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/39.jpg)
Data Warehouses 39
Top N-AnfragenSelect A.*From Angestellte A, Abteilungen abtWhere A.Abteilung = abt.AbteilungsNr and abt.Ort =
HannoverOrder by A.Gehalt descStop after 20
![Page 40: 1 Speichern und Lesen von Daten im Data Warehouse Stern-Schema Daten-Würfel Anfragen Optimierung des Zugriffs](https://reader036.vdokument.com/reader036/viewer/2022062312/55204d7e49795902118ce929/html5/thumbnails/40.jpg)
Data Warehouses 40
Online-AggregationSelect abt.Ort, avg(A.Gehalt)From Angestellte A, Abteilungen abtWhere A.Abteilung = abt.AbteilungsNrGroup by abt.Ort