Leitfaden für ein agiles Data Warehouse mit Data Vault 2.0
Ein starres Data-Warehouse-System wirkt wie ein Flaschenhals und behindert den Datenfluss. Mit Data Vault 2.0 erhalten Unternehmen ein flexibles und skalierbares Framework, das modernen Anforderungen gerecht wird.
Gespräch vereinbarenIn der Welt des Handels ist der Suezkanal eine entscheidende Wasserstraße, die als Flaschenhals fungieren kann, wenn Schiffe den Kanal blockieren. Solche Verzögerungen wirken sich negativ auf weltweite Lieferketten und den Handel aus.
Ein ähnlicher Effekt tritt auf, wenn ein Data-Warehouse-System unflexibel und starr aufgebaut wird. Ohne eine skalierbare und agile Architektur entstehen "Datenstau" und ineffiziente Prozesse, die den Datenfluss behindern. Data Vault 2.0 bietet eine Lösung für dieses Problem, indem es ein flexibles und skalierbares Framework bereitstellt, das den Herausforderungen moderner Datenlandschaften gerecht wird.
In diesem Blogbeitrag beleuchten wir die grundlegenden Prinzipien und Elemente von Data Vault 2.0 und veranschaulichen diese anhand eines Praxisbeispiels.
Was ist Data Vault 2.0?
Data Vault 2.0 ist eine Methode für den Aufbau von Data-Warehouse-Systemen, die auf Skalierbarkeit, Agilität und Auditierbarkeit ausgelegt ist. Es wurde von Dan Linstedt entwickelt und basiert auf einer erweiterbaren Architektur, die darauf abzielt, die Herausforderungen traditioneller Data-Warehouse-Modelle wie starre Strukturen, schwierige Skalierung und mangelnde Flexibilität zu bewältigen.
Data Vault 2.0 ist mehr als nur ein Datenmodell. Es umfasst drei Kernbereiche:
- Modellierung: Ein flexibles und historisierendes Datenmodell.
- Methodik: Ein agiler Ansatz zur Datenintegration.
- Technologie: Die Nutzung moderner Tools und Technologien wie Automatisierung und Parallelverarbeitung.
Übrigens signalisiert der Name "2.0", dass es sich bei dieser Methode um eine Weiterentwicklung des ursprünglichen Data Vault-Ansatzes handelt. Während Data Vault 1.0 sich ausschließlich auf das Datenmodell konzentrierte, erweitert Data Vault 2.0 den Ansatz um moderne Technologien, agile Methoden und ein ganzheitliches Framework, das den gesamten Lebenszyklus eines Data Warehouses abdeckt.
Diese Weiterentwicklung macht die Methode leistungsstärker und anpassungsfähiger an die Anforderungen moderner Datenlandschaften.
Die Prinzipien von Data Vault 2.0
Data Vault 2.0 basiert auf folgenden zentralen Prinzipien:
- Skalierbarkeit: Die Architektur unterstützt das Wachstum von Datenmengen und steigende Anforderungen.
- Flexibilität: Änderungen im Quellsystem können leicht integriert werden, ohne bestehende Strukturen zu zerstören.
- Audittreue: Alle Daten werden in ihrem ursprünglichen Zustand gespeichert, was eine detaillierte Nachvollziehbarkeit ermöglicht.
- Automatisierung: Viele Prozesse, wie das Laden von Daten, können automatisiert werden, um Zeit und Ressourcen zu sparen.
- Agilität: Es ermöglicht schnelle Entwicklungszyklen und Anpassungen.
Die Elemente von Data Vault 2.0
Data Vault 2.0 besteht aus drei Hauptkomponenten: Hubs, Links und Satellites.
Jede dieser Komponenten erfüllt eine spezifische Funktion innerhalb des Datenmodells.
Hubs
Hubs repräsentieren die zentralen Geschäftskonzepte, wie Kunden oder Artikel. Sie enthalten eine eindeutige Geschäftsschlüssel (Business Key) und werden genutzt, um Daten zu identifizieren.
Beispiel: Ein Hub "Kunde" könnte Kundennummern als Schlüssel enthalten.
Links
Links modellieren die Beziehungen zwischen den Hubs. Sie repräsentieren Verknüpfungen, die zwischen verschiedenen Geschäftseinheiten stattfinden.
Beispiel: Ein Link könnte darstellen, welche Kunden welche Artikel gekauft haben.
Satellites
Satellites enthalten die Kontextdaten, also alle Attribute und historisierten Informationen zu den Hubs oder Links. Hier werden beispielsweise Namen, Adressen oder Änderungen an den Daten gespeichert.
Beispiel: Ein Satellite zu einem Hub "Kunde" könnte den Namen, die Adresse und das Geburtsdatum enthalten.
Praxisbeispiel
Tabellenaufbau und die Erfassung in Data Vault 2.0
Ein innovativer Einzelhändler, der hochwertige Produkte für seine Kunden anbietet, hat sich für die Einführung von Data Vault 2.0 entschieden, um seine Datenlandschaft zu optimieren. Im ersten Schritt sollen alle relevanten Daten zu Aufträgen und Kunden im Data Warehouse erfasst werden.
Im ersten Schritt wurde das Datenmodell über nachfolgende Abbildung visualisiert.
Demnach soll es die Hubs Customer und Order geben. Diese sind verbunden mit dem Link Customer_Order. In zusätzlichen Satelliten sollen die Kunden- und Bestellinformationen gespeichert werden.
Doch was heißt das jetzt konkret in der Datenbank?
Der Tabellenaufbau und die Erfassung in Data Vault 2.0 folgen immer den oben genannten Prinzipen. Demnach folgt der Aufbau der Hubs, Links und Satelliten nach denselben Vorgaben.
Definition der Hubs
Jeder Hub erhält einen künstlich erzeugten Hash-Key, der als künstlicher Schlüssel fungiert. Daneben gibt es die fachlichen Schlüssel, die aus den Quellsystemen stammen sowie einen Zeitstempel (LDTS) und die Quellsystembezeichnung (RSCR).
Definition der Links
Der Link verbindet die beiden Hubs HUB_CUSTOMER und HUB_ORDER und ermöglicht damit die Abbildung einer m:n-Beziehung.
Jeder Link enthält ebenfalls ein künstlich erzeugten HASH-Key sowie die Fremdschlüssel auf die verknüpfen Hubs. Ebenfalls wird ein Zeitstempel und die Datenquelle erfasst.
Sollte ein neuer Hub, beispielsweise für Artikel, ergänzt werden, wird ein zusätzlicher Link aufgebaut, der alle drei Hubs miteinander verbindet. Dabei bleibt der bestehende Link erhalten, um die Nachvollziehbarkeit und Historisierung der Daten sicherzustellen.
Link #1: LNK_CUSTOMER_ORDER
Definition der Satelliten
Der Satellit enthält den Fremdschlüssel auf den jeweiligen Hub und ein Zeitstempel, zu dem der Datensatz erstmalig im Data Warehouse erschien. Beide Spalten ergeben den eindeutigen Schlüssel.
Die Satelliten in Data Vault 2.0 ermöglichen die Umsetzung von Slowly-Change-Dimensions. Demnach lässt sich auch die Historisierung je Geschäftskonzept auswählen.
Die Trennung von Geschäftsschlüssel (Hub) und Geschäftsattribut (Sat) ermöglicht eine nachträgliche Erweiterung von Geschäftsinformationen auf Basis bestehender Hub-Schlüssel. Es werden neue Satelliten ergänzt, anstatt bestehende Satelliten zu löschen oder anzupassen.
Satellite #1: SAT_CUSTOMER
In unserem Beispiel werden der Kundenname (CUSTNAME) und das Segment (CUSTSEGM) im Satelliten erfasst.
Satellite #2: SAT_LNK_CUSTOMER_ORDER
Im Satelliten an dem Link wird der Gesamtumsatz (TOTALSALES) gespeichert.
Zusätzlich zu den oben genannten Tabellen gibt es weitere Tabellen, die erforderlich sind, um die zu Beginn dargestellten Anforderungen vollständig abzudecken. Die vollständige Tabellenstruktur sieht im ersten Schritt wie folgt aus:
Im Data Vault 2.0 gibt es auch die sogenannten Referenztabellen (kurz REF). Eine Referenztabelle könnte alle gültigen Länder- oder Währungsangaben enthalten, die dann von Hubs wie HUB_CUSTOMER oder HUB_ORDER genutzt werden. Dadurch müssen diese Werte nicht in jedem Hub oder Satellite mehrfach gespeichert werden.
Referenztabelle
Fazit
Dieses Beispiel verdeutlicht, wie Data Vault 2.0 eine flexible und skalierbare Grundlage bietet. Zudem wird ersichtlich, dass der Modellierungsansatz zu einer zunehmenden Anzahl an Tabellen führt. Um die Effizienz bei der Entwicklung zu maximieren, empfehlen wir den Einsatz von DWH-Builder, um den Automatisierungsgrad zu erhöhen. Erst die Kombination von Data Vault 2.0 mit einer Automatisierung entfaltet das volle Potenzial bei der Entwicklung von agilen DWH-Systemen.
Wie wird aus diesem Datenmodell mit Hubs, Links und Satelliten, das häufig als „Core“ bezeichnet wird, das weit verbreitete Sternschema mit Dimensionen und Fakten? Diese Frage beantworten wir im zweiten Teil des Themenblocks „Agiles Data Warehouse“.
Und wer noch mehr wissen möchte zu dem Thema, kann sich gerne unsere Podcast-Folge zum Thema "Agiles Data Warehouse" anhören.
Gespräch vereinbaren
Wählen Sie den gewünschten Termin aus und vereinbaren Sie ein unverbindliches und kostenfreies Erstgespräch mit Dieter Höfer (Partner & Sales Director). Gerne gehen wir auf Ihre Fragen ein und besprechen Lösungswege für Ihre individuellen Anforderungen.