Metadaten und Data Vault (Meta Vault)
-
Upload
andreas-buckenhofer -
Category
Data & Analytics
-
view
64 -
download
4
Transcript of Metadaten und Data Vault (Meta Vault)
Andreas Buckenhofer Metadaten & Data Vault (Meta Vault)DOAG 2016, Nürnberg
Daimler TSS GmbH
Zur Person
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 2
https://de.linkedin.com/in/buckenhofer
https://twitter.com/ABuckenhofer
https://www.xing.com/profile/Andreas_Buckenhofer2
Andreas Buckenhofer
Senior DB [email protected]
Seit 2009 bei Daimler TSS im Fachgebiet Big Data Business Unit Analytics
Daimler TSS GmbH
Interner IT-Partner für Daimler
Wir sind Spezialist und strategischer Business-Partner für
innovative IT-Gesamtlösungen im Daimler-Konzern.
Als 100%ige Daimler-Tochter leben wir die Kultur der Exzellenz
mit dem Anspruch der Innovations- und Technologieführerschaft.
Mit herausragender Technologie- und Methodenkompetenz
verstehen wir uns als Anbieter von wettbewerbs-
differenzierenden Dienstleistungen und sind
Impulsgeber in anspruchsvollen IT-Fragestellungen,
speziell in den Kernthemen Car IT und Mobility,
Information Security, Analytics und
Shared Services.
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 3
Daimler TSS GmbH
Standorte
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 4
Daimler TSS Deutschland
6 Standorte774 Mitarbeiter
Ulm (Hauptsitz)
Raum Stuttgart
Böblingen, Echterdingen,Leinfelden, Möhringen
Berlin
Daimler TSS India
Hub Bangalore19 Mitarbeiter
Daimler TSS China
Hub Beijing6 Mitarbeiter
Daimler TSS Malaysia
Hub Kuala Lumpur42 Mitarbeiter
Daimler TSS GmbH Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 5
Ganzheitliche Betreuung (Erhebung, Auswertung, Visualisierung und Interpretation), unabhängige Beratung und Optimierung der Geschäftsabläufe.
Von klassischer BI bis hin zu predictive und prescriptiveAnalytics bieten wir Leistungen unter Berücksichtigung der Datensicherheit.
Dabei verknüpfen wir fachliche Erfahrung und IT-Know-how im Daimler-Kontext mit dem Blick fürs große Ganze.
Analytics. Das große Ganze verstehen, um Daten nutzbar machen.
Daimler TSS GmbH
Agenda
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 6
1. Data Vault
2. Metadaten
3. Standarisierung – Namenskonventionen
4. Modell Generierung
5. Dokumentation / Data Lineage
6. Zusammenfassung
Daimler TSS GmbH
Agenda
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 7
1. Data Vault
2. Metadaten
3. Standarisierung – Namenskonventionen
4. Modell Generierung
5. Dokumentation / Data Lineage
6. Zusammenfassung
Daimler TSS GmbH
Data Vault
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 8
Business Key
Beziehungen
KontextundHistorie
Data Vault:HUB
Data Vault:LINK
Data Vault:SAT
FINModellFarbeAusstattungBrancheProduktserieProduktionsbeginnLieferdatumBestelldatumKundeSteuergeräte
Fahrzeugdaten
Daimler TSS GmbH
HUB
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 9
Identifikation
durch
eindeutige
natürliche
Schlüssel
(Business Keys)
Daimler TSS GmbH
Struktur HUB-Tabellen
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 10
Daimler TSS GmbH
Typische Merkmale HUB-Tabellen
Business Keys sollten echte Geschäfts-IDs sein (z.B. Fahrzeug ID, Seriennummer des Steuergeräts) = natürliche Schlüssel
Business Keys sollten sich nie ändern
Business Keys, die über mehrere Datenquellen hinweg nicht eindeutig sind, müssen das Quellsystem für die Eindeutigkeit des Business Keys verwenden
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 11
Daimler TSS GmbH
LINK
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 12
Verbindungen
zwischen
Business Keys
(HUBs)
Daimler TSS GmbH
Struktur LINK-Tabellen
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 13
Daimler TSS GmbH
Typische Merkmale LINK-Tabellen
Ein LINK modelliert eine Beziehung. Die Beziehung ist immer n:m
Der zusammengesetzte Fremdschlüssel muss eindeutig sein
Eine Fremdschlüsselbeziehung ist führend („driving“)
Satelliten sind optional
Hierarchische Beziehungen durch einen LINK zwischen genau zwei HUBs. Arten von Beziehungen: SAL (same-as LINK) und HAL (parent-child LINK)
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 14
Daimler TSS GmbH
SAT
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 15
Beschreibende,
detaillierte,
aktuelle
und
historisierte
Daten
Daimler TSS GmbH
Struktur SAT-Tabellen
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 16
Daimler TSS GmbH
Typische Merkmale SAT-Tabellen
Enthält alle nicht-Schlüssel Daten
Ist genau einer HUB-Tabelle oder LINK-Tabelle zugeordnet
HUB-Tabellen oder LINK-Tabellen können (sollen) mehrere SAT-Tabellen enthalten, die nach Quellsystem, Datenänderungsrate, Datentypen, usw. entworfen werden können
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 17
Daimler TSS GmbH
Design von SAT Tabellen
Verschiedene Kriterien, um SAT-Tabellen zu entwerfen, z.B. mehrstufig zuerst nach
• Quellsystem und ggf. zusätzlich
• Änderungshäufigkeit
• Datentypen (z.B. Auslagerung von CLOBS)
• Zerlegung inperformanter Quellsystemtabellen mit vielen Spalten
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 18
Daimler TSS GmbH
Data Vault (Daniel Linstedt)
Data Vault ist optimiert für Anforderungen im Core Warehouse Layer mit folgenden
Eigenschaften:
• Skalierbarkeit
• Datenintegration, Automatisierung
• Datenhistorisierung
• Auditierbarkeit
• Flexibilität
• Agilität
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 19
Bill Inmon (DW 2.0: The Architecture for the Next Generation of DWH, 2008): “Data Vault is the optimal approach for modeling the EDW in the DW2.0 framework.”
Daimler TSS GmbH
Data Vault Architektur
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 20
Data Warehouse
FrontendBackend
External datasources
Internal datasources
StagingLayer(Input Layer)
Raw Data Vault(Core
Warehouse Layer,
Storage Layer)
Mart Layer(Output Layer,
Reporting Layer,
Presen-tationLayer)
Optional Business
Data Vault(Core
Warehouse Layer,
Storage Layer)
Daimler TSS GmbH
Agenda
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 21
1. Data Vault
2. Metadaten
3. Standarisierung – Namenskonventionen
4. Modell Generierung
5. Dokumentation / Data Lineage
6. Zusammenfassung
Daimler TSS GmbH
Was sind Metadaten?
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 22
Data about
other data
Daimler TSS GmbH
Typen von Metadaten
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 23
• Fachlich
• Glossar, fachliche Definitionen
• Geschäftsregeln
• Quellsysteme (fachliche Beschreibung)
• Technisch
• Physisches Datenmodell
• Quellsysteme (technisch, z.B. Verzeichnis von gelieferte Dateien, Häufigkeit)
• Operativ / Prozessual
• Laufzeiten ETL bzw Reports/Auswertungen/Analysen „Metrics Vault“
• Anzahl Datenätze
• Ausgesteuerte Daten / Datenqualitätsprobleme „Error Mart“
Daimler TSS GmbH
Agenda
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 24
1. Data Vault
2. Metadaten
3. Standarisierung – Namenskonventionen
4. Modell Generierung
5. Dokumentation / Data Lineage
6. Zusammenfassung
Daimler TSS GmbH
Namenskonventionen
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 25
• Eigene Abkürzung für Data Vault Typen:
• H=HUB, L=LINK, S=SAT ???
• SAT-Tabelle zu HUB oder LINK unterscheiden?
• Raw Vault und Business Vault unterscheiden?
• Präfix vs Suffix
• In vielen Unternehmen bereits Konventionen gesetzt
• Erweiterung um Data Vault
Daimler TSS GmbH
Tabellen – HUB und LINK
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 26
Tabellentyp Namenskonvention
HUB, Raw Vault HUB_%NAME%
HUB, Business Vault Vault HUBB_%NAME%
LINK, Standardlink, Raw Vault LNK_%NAME%
LINK, Hierarchisch, Raw Vault HLNK_%NAME%
LINK, Same as, Raw Vault SLNK_%NAME%
LINK, Transactional, Raw Vault TLNK_%NAME%
LINK, Standardlink, Business Vault LNKB_%NAME%
LINK, Hierarchisch, Business Vault HLNKB_%NAME%
LINK, Same as, Business Vault SLNKB_%NAME%
LINK, Transactional, Business Vault TLNKB_%NAME%
Daimler TSS GmbH
Tabellen - SAT
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 27
Tabellentyp Namenskonvention
SAT, Standardsatellit zu Hub, Raw Vault HSAT_%SOURCE%_%NAME%
SAT, Standardsatellit zu Link, Raw Vault LSAT_%SOURCE%_%NAME%
SAT, Standardsatellit zu Hub, Business Vault HBSAT_%NAME%
SAT, Standardsatellit zu Link, Business Vault LBSAT_%NAME%
SAT, Multi-Active Satellit zu Hub, Raw Vault HMSAT_%SOURCE%_%NAME%
SAT, Multi-Active Satellit zu Link, Raw Vault LMSAT_%SOURCE%_%NAME%
SAT, Multi-Active Satellit zu Hub, Business Vault HBMSAT_%NAME%
SAT, Multi-Active Satellit zu Link, Business Vault LBMSAT_%NAME%
SAT, Effectivity Satellit zu Hub, Raw Vault HESAT_%SOURCE%_%NAME%
SAT, Effectivity Satellit zu Link, Raw Vault LESAT_%SOURCE%_%NAME%
SAT, Effectivity Satellit zu Hub, Business Vault HBESAT_%NAME%
SAT, Effectivity Satellit zu Link, Business Vault LBESAT_%NAME%
Daimler TSS GmbH
Tabellen – Rest
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 28
Tabellentyp Namenskonvention
Referenz-Tabellen, Raw Vault REF_%NAME%
Bridge-Tabellen, Business Vault BRD_%NAME%
PIT-Tabellen, Business Vault PIT_%NAME%
Dimensionen DIM_%NAME%
Fakten, Transactional FCTT_%NAME%
Fakten, Periodic Snapshot FCTP_%NAME%
Fakten, Accumulating Snapshot FCTA_%NAME%
Daimler TSS GmbH
Spalten
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 29
Tabellenspalte Namenskonvention
Load Date Timestamp LDTS
Load End Date Timestamp (optional) LEDTS
Record Source RSRC
Last Seen Date LSDT
Sub Sequence Identifier SSQI
Daimler TSS GmbH
Agenda
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 30
1. Data Vault
2. Metadaten
3. Standarisierung – Namenskonventionen
4. Modell Generierung
5. Dokumentation / Data Lineage
6. Zusammenfassung
Daimler TSS GmbH
Warum Codegenerierung?
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 31
Schnellere Entwicklung
Vermeidung monotoner, sich wiederholender Aktivitäten
Standardisierung
Qualitätsverbesserung
Daimler TSS GmbH
Codegenerierung? Hat doch schon immer nicht funktioniert!
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 32
Generierter Code ist komplex und kaum wartbar
Generierter Code muss oft nachträglich verändert werden:
erneute Generierung = erneute manuelle Korrektur
Limits beim Generator / Performance nicht optimal
Daimler TSS GmbH Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 33
Automatisierung funktioniert nur dann gut,
wenn die Ergebnisse aus
Automatisierung und manueller Tätigkeit
identisch
sind
Daimler TSS GmbH
Codegenerierung? Hat doch schon immer nicht funktioniert!
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 34
• Generierter Code ist komplex und kaum wartbar
• Data Vault ist hoch standardisiert und die Beladung relativ einfach
• Der generierte Code hat jeweils dasselbe Muster
• Fehlersuche einfach auch im generierten Code
• Generierter Code muss oft nachträglich verändert werden: erneute Generierung
= erneute manuelle Korrektur
• Wahrscheinlichkeit manueller Korrektur ist gering aufgrund hoher
Standardisierbarkeit von Data Vault (z.B. bei SAT-Tabellen wenn CLOBs/BLOBs
übertragen werden, um Performanz zu erzielen bzw. ETL Tool kann mit CLOBs nicht
richtig umgehen)
• Limits beim Generator / Performance nicht optimal
• Wahrscheinlichkeit gering solange keine Transformationen durchgeführt werden
Daimler TSS GmbH
Sehr hoher Aufwand ohne Automatisierung
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 35
Layer Anzahl Tabellen (1. Iteration)
Staging 53
Core / Data Vault 168
Mart 21+
Daimler TSS GmbH
Data Vault Architektur
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 36
Data Warehouse
FrontendBackend
External datasources
Internal datasources
StagingLayer(Input Layer)
Raw Data Vault(Core
Warehouse Layer,
Storage Layer)
Mart Layer(Output Layer,
Reporting Layer,
Presen-tationLayer)
Optional Business
Data Vault(Core
Warehouse Layer,
Storage Layer)
? ?
Daimler TSS GmbH
„Raw Data“ vs „Cleansed Information“
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 37
Core Warehouse / Raw Data Vault Data Mart / Business Vault
Passive Datenintegration (mittels Business Key) Dateninterpretation/-transformation
Auditierbarkeit Datenqualität
Historisierung Historie soweit nötig
Schnelle Datenübernahme Schnelle Datenbereitstellung
Daimler TSS GmbH
Trennung von passiver Datenintegration und Dateninterpretation
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 38
• Einfachheit
• Problem handhabbar machen durch Auftrennung in kleinere Einheiten
• Verschiedene Teams/Entwickler, die sich um Datenintegration oder
Datenbereitstellung kümmern können
• Agilität: Theoretisch auch verschiedene Entwicklungszyklen / Sprints
• Standardisierung
• Passive Datenintegration bedeutet
• Keine Datenänderungen
• Keine Datentransformationen
• Keine Datenvereinheitlichungen
• Keine Datenaggregationen
Daimler TSS GmbH
Data Vault Architektur
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 39
Data Warehouse
FrontendBackend
External datasources
Internal datasources
StagingLayer(Input Layer)
Raw Data Vault(Core
Warehouse Layer,
Storage Layer)
Mart Layer(Output Layer,
Reporting Layer,
Presen-tationLayer)
Optional Business
Data Vault(Core
Warehouse Layer,
Storage Layer)
Code Generierung:Muster / Templates
Fachliche Logik / Deltaberechnung
Daimler TSS GmbH
Hash Keys statt Sequenzen für Primärschlüssel
Berechnung eines HKs aus den natürlichen Schlüsselattributen (Business Keys)
• Keine Lookups nötig: weitere Zunahme der Parallelisierbarkeit beim Load
• Vermeidung von Hot Spots (insb. sinnvoll bei sog. „Converged Systems“ wie Microsoft
APS, Exadata, Teradata, etc)
• Möglichkeit zur Verbindung relationaler DBs und Daten in Hadoop/NoSQL
• Jedoch: Gefahr einer Hash Key-Kollision
• Berechnung bereits im Staging Layer
Anmerkung: UPPER für den Fall, dass die jeweilige Spalte case-insensitiv ist
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 40
HK = dbms_obfuscation_toolkit.md5 (UPPER (TRIM (BK1)) || TRENNER || UPPER (TRIM (BK2)) …)
Daimler TSS GmbH
Wiederholbares Muster: Beladung HUB
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 41
Quelldaten
vorhanden
Business Keys distinkt laden
Business Key bereits im
HUB?
Datensatz in HUB eintragen
Konflikt bei PK
HashKey-Kollision!
Nein
Datensatz verwerfen
Daten im HUB
vorhanden
Ja
Daimler TSS GmbH
HUB Lade-Muster
INSERT INTO core.fahrzeug (vehicle_hk, fin, loaddate, recordsource)
SELECT DISTINCT f.fahrzeug_hashkey
, f.fin_bk
, f.loaddate
, f.recordsource
FROM staging.fahrzeugdaten f
WHERE f.fin_bk NOT in (SELECT fin FROM core.hub_fahrzeug)
AND f.loaddate = <date to load>;
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 42
Daimler TSS GmbH
Wiederholbares Muster: Beladung LINK
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 43
Quelldaten
vorhanden
Business Keys distinkt laden
Hash Key Beziehungen
bereits im LINK?
Datensatz in LINK eintragen
Konflikt bei PK
HashKey-Kollision!
Nein
Datensatz verwerfen
Daten im Link
vorhanden
Ja
Daimler TSS GmbH
LINK Lade-Muster
INSERT INTO core.link_verbaut (verbaut_hk, motor_hk, vehicle_hk, loaddate,
recordsource)
SELECT DISTINCT h.verbaut_hk
, f.motor_hashkey
, f.fahrzeug_hashkey
, f.loaddate
, f.recordsource
FROM staging.fahrzeugdaten f
WHERE (f.motor_hashkey, f.fahrzeug_hashkey) NOT in (SELECT motor_hk, vehicle_hk
FROM core.link_verbaut v)
AND loaddate = <date to load>;
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 44
Daimler TSS GmbH
Hash Keys zur Beladung von Satelliten
Berechnung von Hash Keys für Attribute in Satelliten-Tabellen
• Vergleich Hash Keys neue Daten in Staging Layer und geladene Daten in Core Layer
�Effizienter
�Weniger Code
Anmerkung: UPPER für den Fall, dass die jeweilige Spalte case-insensitiv ist
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 45
HK = dbms_obfuscation_toolkit.md5 (<HK Berechung BKs> || TRENNER || UPPER (TRIM (NVL(Spalte1, <dummy>))) || TRENNER || UPPER (TRIM (NVL(Spalte2, <dummy>))) || TRENNER ||
…)
Daimler TSS GmbH
Modellierung loaddate vs loaddate + loadenddate
Bestimmung des aktuellen Datensatzes in SAT-Tabelle
• Bei Verwendung loadenddate muss noch ein update des Vorgänger-Datensatzes
durchgeführt werden.
• Das INSERT-Statement wird einfacher.
• Alle Abfragen auf SAT-Tabellen sind einfacher (und potentiell performanter)
• Verzicht auf loadenddate
• Allgemein verwendbar, insbesondere auch für Hadoop
• Update erwies sich bei einem System im höheren TB-Bereich als große
Herausforderung bereits bei der Initialbefüllung sowie später bei der
Deltaverarbeitung aufgrund vieler Quellsystemdaten
• Herausforderung Bestimmung Gültigkeiten / aktueller Datensatz: komplexer und
langsamer im Vergleich zur Verwndung loadenddate
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 46
Daimler TSS GmbH
Wiederholbares Muster: Beladung SAT
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 47
Quelldaten
vorhanden
Quelldaten distinkt laden
MD5-HASH Diff gleich?
Datensatz in SAT eintragen
Nein
Datensatz verwerfen
Daten im SAT
vorhanden
Ja
Aktuellsten Datensatz aus
SAT-Tabelle laden
Daimler TSS GmbH
SAT Lade-Muster
INSERT INTO core.sat_fahrzeug_text (vehicle_hk, loaddate, recordsource, md5_hash, codeleiste, kommentar)
SELECT DISTINCT f.fahrzeug_hashkey
, f.loaddate
, f.recordsource
, f.md5hash
, f.codeleiste
, f.kommentar
FROM staging.fahrzeugdaten f
LEFT OUTER JOIN (select s.vehicle_hk, s.md5_hash from s_fahrzeug s JOIN (select i.VEHICLE_HK, max(i.loaddate) as loaddate from s_fahrzeug i GROUP BY i.VEHICLE_HK) m
ON s.vehicle_hk = m.vehicle_hk AND s.loaddate = m.loaddate) k ON f.fahrzeug_hashkey = k.vehicle_hk
WHERE (k.md5_hash is null OR f.md5hash <> k.md5_hash)
AND f.loaddate = <date to load>;
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 48
Daimler TSS GmbH
Metadaten zur Erzeugung Spaltenmapping HUB
Quelltabelle Quellspalte Zieltabelle Zielspalte Typ
fahrzeugdaten fahrzeug_hk h_fahrzeug Vehicle_hk PKHashKey
fahrzeugdaten fin h_fahrzeug Vehicle_hk BusinessKey
fahrzeugdaten loaddate h_fahrzeug loaddate
fahrzeugdaten recordsource h_fahrzeug recordsource
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 49
Daimler TSS GmbH
Metadaten zur Erzeugung Spaltenmapping LINK
Quelltabelle Quellspalte Zieltabelle Zielspalte Typ
fahrzeugdaten Verbaut_hk l_verbaut Verbaut_hk PKHashKey
fahrzeugdaten fahrzeug_hashkey l_verbaut fahrzeug_hk DrivingHashKey
fahrzeugdaten motor_hashkey l_verbaut motor_hk HashKey
fahrzeugdaten loaddate l_verbaut loaddate
fahrzeugdaten recordsource l_verbaut recordsource
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 50
Daimler TSS GmbH
Metadaten zur Erzeugung Spaltenmapping SAT
Quelltabelle Quellspalte Zieltabelle Zielspalte Typ Reihen
folge
Berechnung
f.md5hash
fahrzeugdaten fahrzeug_hk h_fahrzeug Vehicle_hk PKHashKey 1 X
fahrzeugdaten loaddate h_fahrzeug loaddate PKHashKey 2
fahrzeugdaten recordsource h_fahrzeug recordsource 3 UPPER (TRIM (NVL(…, <dummy>)))
fahrzeugdaten f.md5hash h_fahrzeug Md5_hash MD5HashDiff 4
fahrzeugdaten codeleiste h_fahrzeug Codeleiste 5 TRIM (NVL(…, <dummy>))
fahrzeugdaten kommentar h_fahrzeug kommentar 6 UPPER (TRIM (NVL(…, <dummy>)))
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 51
Daimler TSS GmbH
Codegenerierung
• Am einfachsten: Generierung von SQL-Statements für verschiedene DBs (Oracle,
Hadoop/Hive, DB2, SQL Server)
• Generierung von SQL Statements relativ einfach, wenn auch Unterschiede zwischen
den RDBMS, z.B.
• DML-Error-Logging für andere RDBMS nicht verfügbar. Fehlerbehandlung!?
• Alternative: Generierung von Code für ein ETL Tool (Mappings Informatica, BIML
SSIS)
• Fehlerbehandlung, Logging, Monitoring, etc durch das Tool abgedeckt
• Deutlich aufwändiger
• Tool lizenzieren statt Do-it-yourself!?
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 52
Daimler TSS GmbH
Agenda
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 53
1. Data Vault
2. Metadaten
3. Standarisierung – Namenskonventionen
4. Data Lineage
5. Modell Generierung
6. Dokumentation / Data Lineage
7. Zusammenfassung
Daimler TSS GmbH
Motivation
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 54
Wichtigkeit von Metadaten steigt allgemein
• Bankenkrise
• Banken waren nicht in der Lage, ihre Risiken zu steuern
• Datenschutz-Grundverordnung GDPR (General Data Privacy Regulation)
• Verordnung 2016/679 vom 27. April 2016 zum Schutz natürlicher Personen bei der
Verarbeitung personenbezogener Daten
• (65) Eine betroffene Person sollte ein Recht auf Berichtigung der sie betreffenden
personenbezogenen Daten besitzen sowie ein „Recht auf Vergessenwerden“, …
dass ihre personenbezogenen Daten gelöscht und nicht mehr verarbeitet werden …
• NoSQL / Hadoop
• Schema-on-read, ständig neue Strukturen (JSON)
Daimler TSS GmbH
Gesetzliche Anforderungen an Metadaten aus Bankenkrise
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 55
Glossar
Metadaten allg.
Systeme/Architektur ungenügend in Vergangenheit
Inventar von Regeln
Erkennung + Erklärung Datenfehler
Daimler TSS GmbH
Auswahl gesetzlicher Anforderungen an Metadaten
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 56
Glossar
Datenmodell
Data Lineage
Transformationsregeln
Datenfehler, Fehlerlogs
Laufzeitinformationen
Anzahl verarbeiteter Daten / ausgesteuerter Daten
Daimler TSS GmbH
Toolgestützte Metadatenverwaltung
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 57
Datenmodellierungstool
Toolhersteller (ETL/ELT Tool)
Toolhersteller Fokus Metadaten
Do it yourself
Daimler TSS GmbH
Agenda
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 58
1. Data Vault
2. Metadaten
3. Standarisierung – Namenskonventionen
4. Dokumentation / Data Lineage
5. Modell Generierung
6. Zusammenfassung
Daimler TSS GmbH
Metadaten und Data Vault
• Metadatenerfassung entscheidend für Projekterfolg
• Code Generierung wichtig
• Viele Tabellen im Core Warehouse Layer
• Hoher manueller Entwicklungsaufwand
• Monotone Tätigkeit = Copy & Paste
• Dokumentation
• rechtliche Vorschriften, z.B. Glossar, Validierungsregeln
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 59
Daimler TSS GmbH
Datenintegration
“People have forgotten, or never truly understood, how complex data integration
actually is.”
Data Vault
• Robuste ETL Prozesse
• Kleine, wartbare Mappings / SQL Statements
• Standardisierbarkeit / Wiederholbarkeit /Automatisierbarkeit
• Flexibilität
• Aber auch:
Viele Modellierungsoptionen = Viele Diskussionen
Quelle Zitat: http://db2portal.blogspot.de/2015/05/a-trip-report-from-2015-idug-db2-tech.html
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 60
Thank you!
Daimler TSS GmbH
Wilhelm-Runge-Straße 11, 89081 Ulm, Germany / Phone +49 731 505-06 / Fax +49 731 505-65 [email protected] / Internet: www.daimler-tss.com / Intranet portal code: @TSSDomicile and Court of Registry: Ulm / Commercial Register No.: 3844 / Management: Christoph Röger (Vorsitzender), Steffen Bäuerle
Daimler TSS GmbH
Ein ganz anderer Metadaten-Ansatz. Was macht Google?
• Daten als wichtigstes Gut
• “Google data-culture”
• Daher auch wichtige Rolle von Metadaten
• Automatisierung der Metadatensammlung
• GOODS (GOOgle Dataset Search)
• Crawler durchsucht interne Speichersysteme (HDFS/GoogleFS, BigTable, RDBMS)
nach Metadaten
• Sammlung, Anreicherung und Speicherung von Metadaten
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Seite 62
Daimler TSS GmbH
Datenmodellierung
“Data modeling is the process of learning about the data, and regardless of
technology, this process must be performed for a successful application.”
Datenmodellierung, um
• Daten zu verstehen
• Performanz zu garantieren
• Entwicklung zu beschleunigen
• Qualität der Software zu verbessern
• Wartungskosten zu reduzieren
• Gemeinsames Verständnis zu fördern
• NoSQL Schema-on-read: Modellversionen auch nach Jahren noch verstehen
Quelle Zitat: Steve Hoberman: Data Modeling for Mongo DB, Technics Publications 2014
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 63
Daimler TSS GmbH
Methoden Know-how vs Produkt Know-how
Datenmodellierung macht jeder.
Methoden-Schulungen?
Fokus leider auf Schulung von Produkten / Tools.
Metadaten & Data Vault (Meta Vault) / DOAG 2016 / Seite 64
Daimler TSS GmbH
Benötigte Metadaten
Metadaten & Data Vault (Meta Vault) / DOAG 2016/ Page 65
Benötigte
Metadaten
Quelle nach
Staging Layer
Staging Layer
nach Raw Data
Vault
Raw Data Vault
nach Business
Data Vault
Business Data
Vault nach Mart
Layer
Quelltabelle Vielfältige Quellen 1:1 Kopie der Quellsystem-tabelle/-datei
HUB, LINK, SAT HUB, LINK, SAT
Zieltabelle 1:1 Kopie der Quellsystem-tabelle/-datei
HUB, LINK, SAT SAT(, HUB, LINK) Fakten, Dimensionen
Transformations-regeln (fachlich)
Nein Nein Ja, können sehrkomplex werden
Ja, können sehrkomplex werden
Ergebnisse Automatisierung/manuell
Sehr wahrscheinlich identisch
Sehr wahrscheinlich identisch
Eher individuell Eher individuell