Unternehmen müssen ihr Geschäft in immer kürzeren Zyklen transformieren und sich permanent den Marktbedürfnissen anpassen. Data Warehouse-Verantwortliche stehen deshalb unter Druck, für agile Datenstrukturen sorgen zu müssen. Dafür sind bestehende Data Warehouses aber häufig zu schwerfällig, zu komplex oder zu teuer. Eine gute Lösung, um mit bestehenden Architekturen moderne Anforderungen abzudecken, ist Data Vault.
Data Vault ist eine Modellierungstechnik, die es ermöglicht, die Architektur und die Methodik des Data Warehouse (DWH) bedarfsgerecht an sich wandelnde Anforderungen anzupassen. Es liefert eine Antwort auf viele Herausforderungen, mit denen DWH-Architekten und -Verantwortliche derzeit konfrontiert werden. Data Vault erlaubt es, zielgerichtete Entwicklungen voranzutreiben bzw. die Time-to-Market zu verkürzen und die Nachteile klassischer Modellierungsmethoden zu überwinden.
Ihren Ursprung nahm die Data Vault-Modellierung bereits in den 1990er Jahren, Dan Linstedt gilt als ihr „Erfinder“. Erste Veröffentlichungen zu Data Vault gab es zu Beginn der 2000er. Die Vorteile sind eine hohe Flexibilität bei Erweiterungen, eine bitemporale, vollständige Historisierung der Daten und eine starke Parallelisierung von Datenladeprozessen.
Bei Data Vault liegt der Fokus auf den Bedürfnissen von Unternehmen, denn das Konzept ermöglicht flexible, aufwandsarme Anpassungen eines Data Warehouse. Es vereint Aspekte der rationalen Datenbankmodellierung mit der dritten Normalform (3NF) sowie dem Sternschema und wird von unterschiedlichen Autoren als hypernormalisierte oder Ensemble-Modellierung bezeichnet. Wenn sich Architekten mit einer DWH-Modernisierung oder einem agilen DWH beschäftigen, werden sie früher oder später auf Data Vault stoßen.
Data Vault und Data Vault 2.0
Wie jedes Datenmodell, so hat sich auch Data Vault über die Jahre weiterentwickelt. Während man bei Data Vault den Fokus auf das Modell an sich legte, werden bei Data Vault 2.0 der gesamte Entwicklungsprozess sowie die Architektur betrachtet. Version 2.0 besteht aus den Komponenten Methode (Implementierung), Architektur sowie Modell. Der ganzheitliche Ansatz hat den Vorteil, dass sich bei der Entwicklung alle Aspekte von Business Intelligence-Systemen mit zugrunde liegendem Data Warehouse berücksichtigen lassen.
Die Data Vault-Architektur
Die Architektur von Data Vault besteht im Wesentlichen aus drei Schichten (Layer):
- Staging Layer: Diese Schicht sammelt die Rohdaten aus den Quellsystemen, etwa CRM oder ERP, ein.
- Data Warehouse Layer: Wird diese Schicht als Data Vault-Modell modelliert, beinhaltet sie:
Raw Data Vault: speichert die Rohdaten.
Business Data Vault: beinhaltet harmonisierte und transformierte Daten auf Basis von Geschäftsregeln (optional).
Metrics Vault: speichert Laufzeitinformationen (optional).
Operational Vault: speichert die Daten, die direkt aus operativen Systemen in das Data Warehouse fließen (optional.) - Information Mart Layer: Diese Schicht modelliert Daten als Star-Schema und/oder anderen Modellierungsverfahren. Sie stellt Informationen für die Analyse und das Berichtswesen zur Verfügung.
Die Hauptkomponenten des Data Vault-Modells
Data Vault unterteilt bei der Modellierung alle zum Objekt gehörenden Informationen in drei verschiedene Kategorien – im Unterschied zu Klassikern der Modellierung der dritten Normalform (3NF). Diese Informationen werden anschließend strikt getrennt voneinander abgelegt. Die funktionalen Bereiche lassen sich in Data Vault in sogenannten Hubs, Links und Satelliten abbilden.
Hubs sind der Schlüssel zum Geschäft
Der Hub stellt das Herzstück des Kerngeschäfts (core business concept) wie Kunde, Verkäufer, Verkauf oder Produkt dar. Die Hub-Tabelle wird um den Business Key (Vertrags- oder Kundennummer) herum gebildet, wenn zum ersten Mal eine neue Instanz dieses Business Keys im Data Warehouse eingeführt wird. Der Hub enthält keine beschreibenden Informationen und keine FKs. Er besteht nur aus dem Business Key, mit einer im Warehouse erzeugten Sequenz von ID- oder Hash-Schlüsseln, Ladedatum/Zeitstempel und der Datensatzquelle.
Links repräsentieren alle Beziehungen
Ein Link stellt Beziehungen zwischen den Business Keys her. Jeder Eintrag in einem Link modelliert n-m Beziehungen einer beliebigen Anzahl von Hubs. Diese allgemeine Form der Modellierung von Beziehungen erlaubt es dem Data Vault, flexibel auf Änderungen in der Business Logik der Quellsysteme, wie zum Beispiel Änderungen in der Kordialität von Beziehungen, zu reagieren. Genau wie der Hub enthält der Link keine beschreibenden Informationen. Er besteht aus den Sequenz-IDs der Hubs, auf die er sich bezieht, sowie einer im Warehouse generierten Sequenz-ID, einem Ladedatum/Zeitstempel und einer Datensatzquelle.
Satelliten liefern den gesamten Kontext
Der Satellit enthält die beschreibenden Informationen (Kontext) für einen Business Key, der in einem Hub gespeichert ist, oder einer Beziehung, die in einem Link gespeichert ist. Satelliten funktionieren „insert only“, das bedeutet, dass die komplette Datenhistorie im Satelliten abgespeichert ist. Es können mehrere Satelliten zur Beschreibung eines einzelnen Business Key (oder einer Beziehung) verwendet werden. Ein Satellit kann jedoch nur einen Schlüssel (Hub oder Link) beschreiben.
Vorteile für Unternehmen
Ein wesentlicher Vorteil von Data Vault ist, dass sich die Entwicklungszeit stark reduzieren lässt, etwa, wenn es darum geht, Business-Anforderungen zu implementieren. Zudem erzielen Unternehmen einen höheren Return on Investment (ROI). Des Weiteren wird das DWH durch den Einsatz von Data Vault skalierbar. Mithilfe der Lösung können Unternehmen außerdem alle Daten bis zu ihrem Quellsystem nachverfolgen. Insbesondere Organisationen, die große Datenvolumina binnen kürzester Zeit laden müssen, profitieren von Data Vault. Ebenso Unternehmen, die ihre BI-Applikationen agil entwickeln wollen oder jene, die ein vorgelagertes Core Data Warehouse innerhalb einer bestehenden Silo-Architektur aufbauen möchten.
Vorteile in technischer Hinsicht
Neben klassischer Batch-Verarbeitung unterstützt Data Vault auch Near-Realtime-Loads. Dabei können Unternehmen auch unstrukturierte/NoSQL-Datenbanken anbinden. Im Vergleich zu klassischen DWH-Architekturen (Inmon oder Kimball) werden die Geschäftsregeln (Business Rules) im Business Data Vault sowie in der Information Mart Layer eingesetzt. Demnach sind sie so möglichst nah beim End-User implementiert.
Entsprechend werden Geschäftsregeln „spät“ abgebildet und das Data Warehouse exakt mit den Daten beladen, wie sie im Quellsystem vorliegen. Deshalb spricht man beim Data Warehouse auch von „Source of Facts“ und nicht von der „Source of Truth“.
Darüber hinaus lässt sich das Data Warehouse dank eines iterativen, agilen Entwicklungszyklus inkrementell ausbauen. Dadurch können Unternehmen das Datenmodell bedarfsgerecht für alle Themenbereiche erweitern. Ein weiterer Vorteil ist das sogenannte Time Traveling, also stichtagsbezogene Auswertungen bzw. Zeitreisen. Das bedeutet, dass sich Daten aus dem Altbestand zu einem bestimmten Stichtag darstellen oder auswerten lassen. Unternehmen können Berichtsstände direkt miteinander vergleichen. Dadurch, dass Organisationen Daten unverändert, vollständig und historisiert laden können, erfüllen sie Compliance- und Auditanforderungen.
Wer bislang noch nicht mit der Modellierungstechnik Data Vault gearbeitet hat, fragt sich häufig, wie diese in die bestehende Data Warehouse-Architektur integriert werden kann. Data Vault Frameworks sind hier die Lösung, weil sie einen Layer zwischen Data Warehouse und Entwickler ziehen und somit die Komplexität bei der Umsetzung verringern.
Um eines vorwegzunehmen: Es ist nicht notwendig, die Data Warehouse-Architektur komplett neu aufzusetzen. Die neuen Funktionen können mit Konzepten und Methoden des Data Vaults aufgebaut werden. Dabei ist ein paralleles Anwenden von Data Vault möglich und bereits existierende Bestandteile gehen nicht verloren.
Dieser Beitrag ist dem Whitepaper Mit Data Vault zu mehr Agilität im Data Warehouse entnommen.
Das Pentaho Data Vault Framework
Um Unternehmen bei der Entwicklung, Bereitstellung und dem Betrieb von Data Vaults zu unterstützen, haben wir das Pentaho Data Vault Framework entwickelt. Das Framework erlaubt einfaches Anbinden neuer Datenquellen, ohne selbst ETL-Strecken entwickeln zu müssen. Die ETL-Jobs zum Beladen von Hubs, Links und Satelliten sind dazu vollständig parametrisiert. Dabei werden auch knifflige Fälle berücksichtigt, etwa, wie man mit fehlenden Datensätzen, multiaktiven Satelliten oder der fachlichen Gültigkeit von Daten umgeht.
Komfortable Konfiguration
Das Framework verfügt über ein intuitiv bedienbares, grafisches Interface, mit dem Anwender das Data Vault komfortabel konfigurieren können. Hier können Anwender Satelliten an beliebiger Stelle in das Data Vault einfügen, ohne dabei das Modell zu verändern. Das Konfigurations-Cockpit ermöglicht eine bequeme Steuerung und eine einfache Anbindung neuer Datenquellen.
Darüber hinaus haben wir Werkzeuge entwickelt, mit denen historisierte Daten einfach zusammengefügt und in den Data Marts zur Analyse zur Verfügung gestellt werden können. Schließlich wollen Unternehmen auf die Daten bedarfsgerecht zugreifen können. Durch den PIT Merge Join Step können zum Beispiel Daten aus verschiedenen Satelliten chronologisch korrekt zusammengebracht werden, ohne dass dafür unflexible Point-In-Time-Tabellen benötigt werden.
Praxisbeispiel Financial Services
Wie sieht nun Data Vault in der Praxis aus? Ein Beispiel eines unserer Kunden, ein Automobilhersteller: die Financial Services für die Länderorganisationen Schweiz und Österreich mussten bislang Berichte für das Reporting manuell zusammenstellen. Deshalb sollte eine zentrale, konsolidierte Datenplattform geschaffen werden, die von den beiden Länderorganisationen genutzt werden konnte.
Die umgesetzte Lösung umfasst ein zentralen Reporting, das auf einem Data Warehouse mit Pentaho basiert. Das Data Warehouse ist mit Hilfe von Data Vault agil aufgebaut und erlaubt damit das schnelle und flexible Einbinden neuer Datenquellen. Durch die Historisierung der im Data Warehouse gehaltenen Daten sind „Zeitreisen“ möglich, d.h. die Auswertung von historisierten Daten.
Verbesserungen und Vorteile:
- Automatisierte Erstellung von Reports
- Durch Historisierung durchgängige Sicht auf Daten und Geschäftsprozesse
- DWH flexibel erweiterbar durch agile Architektur
- Daten revisionssicher auditierbar
Agile Unternehmen brauchen eine agile IT. Moderne Datenstrukturen sind aber mit bestehenden Data Warehouse-Architekturen nur umständlich (und teuer) zu erreichen. Data Vault ist ein Technologieansatz, mit dem sich Legacy Data Warehouses den Anforderungen der Digitalisierung anpassen lassen.
Was Sie als Anwender wissen sollten: Data Vault ist kein IT-Selbstzweck. Ziel ist es vielmehr, die Organisation bestmöglich zu unterstützen, wenn es darum geht, integrierte Daten für Analysen und das Berichtswesen schnell bereitzustellen. Wenn man daher die Vorteile von Data Vault bewertet, sollte man von verschiedenen Sichtweisen ausgehen.