Fehlertolerante Ladeprozesse in Oracle gegen schlaflose Nächte

Post on 30-May-2015

108 views 1 download

description

Dani Schnider, Principal Consultant bei der Trivadis AG an der DOAG BI Konferenz 2011

Transcript of Fehlertolerante Ladeprozesse in Oracle gegen schlaflose Nächte

2014 © Trivadis

BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN

2014 © Trivadis

FEHLERTOLERANTE LADEPROZESSEIN ORACLEGEGEN SCHLAFLOSE NÄCHTE

DOAG BI Konferenz 2012

Dani SchniderTrivadis AG

München, 18. April 2012

18. April 2012Fehlertolerante Ladeprozesse

1

2014 © Trivadis

Fehlertolerante Ladeprozesse2

Dani Schnider

Principal Consultant und DWH/BI Lead Architectbei Trivadis in Zürich

Kursleiter für Trivadis-Kurse über Data Warehousing, SQL Optimierung und Oracle Warehouse Builder

Co-Autor des Buches «Data Warehousing mit Oracle»

18. April 2012

2014 © Trivadis

11 Trivadis Niederlassungen mitüber 600 Mitarbeitenden

200 Service Level Agreements

Mehr als 4'000 Trainingsteilnehmer

Forschungs- und Entwicklungs-budget: CHF 5.0 / EUR 4 Mio.

Finanziell unabhängig undnachhaltig profitabel

Erfahrung aus mehr als 1'900 Projekten pro Jahr bei über 800 Kunden

Stand 12/2012

Hamburg

Düsseldorf

Frankfurt

FreiburgMünchen

Wien

Basel

ZürichBernLausanne

3

Stuttgart

Mit über 600 IT- und Fachexperten bei Ihnen vor Ort

18. April 2012Fehlertolerante Ladeprozesse

3

2014 © Trivadis

Einleitung

18. April 2012Fehlertolerante Ladeprozesse

4

Übermüdeter DWH-Entwickler Unzufriedener Benutzer

2014 © Trivadis

Beispiele für Fehlerursachen

18. April 2012Fehlertolerante Ladeprozesse

5

2014 © Trivadis

Fehlende Attribute

18. April 2012Fehlertolerante Ladeprozesse

6

2014 © Trivadis

Fehlende Attribute – Variante „Abbruch“

Beim ersten Fehler Abbruch der Verarbeitung

18. April 2012Fehlertolerante Ladeprozesse

7

2014 © Trivadis

Fehlende Attribute – Variante „Filter“

Filtern von fehlerhaften und unvollständigen Datensätzen

18. April 2012Fehlertolerante Ladeprozesse

8

2014 © Trivadis

Fehlende Attribute – Variante „Fehlertabelle“

Fehlerhafte und unvollständige Datensätze in Fehlertabelle schreiben

18. April 2012Fehlertolerante Ladeprozesse

9

2014 © Trivadis

Fehlende Attribute – Variante „Fehlertabelle“

18. April 2012Fehlertolerante Ladeprozesse

10

2014 © Trivadis

Fehlende Attribute – Variante „Originalwert“

NULL-Werte in Zieltabelle erlauben

18. April 2012Fehlertolerante Ladeprozesse

11

2014 © Trivadis

Fehlende Attribute – Variante „Singleton“

Fehlende Attribute durch Default-Werte (Singletons) ersetzen

18. April 2012Fehlertolerante Ladeprozesse

12

2014 © Trivadis

Unbekannte Codewerte

18. April 2012Fehlertolerante Ladeprozesse

13

2014 © Trivadis

Unbekannte Codewerte – Variante „Filter“

Filtern von fehlenden Codes durch Inner Join

18. April 2012Fehlertolerante Ladeprozesse

14

2014 © Trivadis

Unbekannte Codewerte – Variante „Filter“

18. April 2012Fehlertolerante Ladeprozesse

15

2014 © Trivadis

Unbekannte Codewerte – Variante „Singleton“

Singleton-Eintrag in allen Lookup-Tabellen, Lookup mit Outer Join

18. April 2012Fehlertolerante Ladeprozesse

16

2014 © Trivadis

Unbekannte Codewerte – Variante „Singleton“

18. April 2012Fehlertolerante Ladeprozesse

17

2014 © Trivadis

Unbekannte Codewerte – Variante „Embryo“

Fehlende Codes vorgängig in Lookup-Tabelle einfügen

18. April 2012Fehlertolerante Ladeprozesse

18

2014 © Trivadis

Unbekannte Codewerte – Variante „Embryo“

18. April 2012Fehlertolerante Ladeprozesse

19

2014 © Trivadis

Fehlende Dimensionseinträge

Ausgangslage: Fakten werden geladen Zugehöriger Dimensionswert noch nicht vorhanden

Lösungsvarianten: Filtern von unvollständigen Fakten Referenz auf Singleton-Einträge Generieren von Embryo-Einträgen

Siehe Artikel «Wenn die Fakten zu früh eintreffen»http://www.trivadis.com/uploads/tx_cabagdownloadarea/Wenn_die_Fakten_zu_frueh_eintreffen.pdf

18. April 2012Fehlertolerante Ladeprozesse

20

2014 © Trivadis

Doppelte Datensätze

18. April 2012Fehlertolerante Ladeprozesse

21

2014 © Trivadis

Doppelte Datensätze – Variante „Distinct“

Deduplizieren mittels DISTINCT

18. April 2012Fehlertolerante Ladeprozesse

22

2014 © Trivadis

Doppelte Datensätze – Variante „Filter“

Filter auf ersten Datensatz pro Schlüsselwert

18. April 2012Fehlertolerante Ladeprozesse

23

2014 © Trivadis

Doppelte Datensätze – Variante „Fehlertabelle“

Doppelte Datensätze in Fehlertabelle schreiben

18. April 2012Fehlertolerante Ladeprozesse

24

2014 © Trivadis

Doppelte Datensätze – Variante „Fehlertabelle“

18. April 2012Fehlertolerante Ladeprozesse

25

2014 © Trivadis

18. April 2012Fehlertolerante Ladeprozesse

26

Fazit

Fehlertolerante Ladeprozesse vermeiden ETL-Abbruch

Je nach Varianten Einbussen der Datenqualität

Vor- und Nachteile der Varianten müssen je nach Anforderungen abgewogen werden

2014 © Trivadis

Fehlertolerante Ladeprozesse27

Immer noch schlaflose Nächte?

Fragen Sie Ihren Apotheker oder lesen Sie die Packungsbeilage

18. April 2012

2014 © Trivadis

BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG MÜNCHEN STUTTGART WIEN

2014 © Trivadis

Vielen Dank.

18. April 2012Fehlertolerante Ladeprozesse

28

Trivadis AG

Dani Schnider

Europa-Strasse 5CH-8152 Glattbrugg/ZürichSchweiz

Tel. +41 44 808 70 20Fax +41 44 808 70 21info@trivadis.comwww.trivadis.com