Insider-Tipps zum Thema Data Vault

Hier finden Sie aktuelle Tipps und Erfahrungen zu fachlichen oder technischen Fragen von den solicon IT Experten. Heute mit DI Kurt Rahstorfer, Geschäftsführer und technischer Leiter.

 

Heute geht es um unsere Erfahrungen mit dem Thema Data Vault in Reporting-Umgebungen.

Kurz zum Hineinfinden: Was meint man mit „Data Vault“?

Kurt Rahstorfer (K. R.): Eigentlich müssen wir einen Schritt davor beginnen, beim „Data Warehouse“ – kurz DWH. Welchen Zweck erfüllt ein DWH. Dazu gibt es unendlich viel Literatur, aber keine einheitliche Definition, die auf jede Unternehmenssituation genau passt. Ein DWH kann die globale Sicht auf alle Daten sein, oder aber z.B. einfach die grundlegende Basis für ein Unternehmensreporting und/oder der Analysen sein. Auf letzteres wollen wir uns konzentrieren.

Der Begriff „Data Vault“ ist übrigens nicht neu. Data Vault ist eine Modellierungstechnik insbesondere für agile DWH Anforderungen. Vor allem werden Data Vaults als Datenbankstruktur angedacht, wenn das DWH immer wieder erweitert oder verändert werden soll. Bestes Beispiel ist das Unternehmensreporting, wo man die ständig die Möglichkeiten für Flexibilität, Historisierung und Ähnliches erwartet und benötigt.

 

Wie soll man sich einen „Data Vault“ vorstellen?

K. R.: Data Vault Strukturen bestehen aus sogenannten „Hubs“, „Satelliten“ und „Links“. Diese 3 Kategorien beschreiben die Informationen zu den Objekten, deren Attribute und den Beziehungen der Objekte zueinander.

Ein „Hub“ beschreibt somit die Identität eines Objektes, einen Business-Key (z.B. die Rechnungs- oder die Kundennummer). In die zweite Kategorie „Satellit“ gehören Details zum Hub, also Attribute, die ein Objekt beschreiben (z. B. Kundenname). Wobei ein Hub beliebig viele Satelliten haben kann (z. B. weil Daten aus unterschiedlichen Quellsystemen kommen).

Daten der dritten Kategorie „Link“ beschreiben – nomen est omen – die Beziehungen zwischen den Objekten (z. B. Zuordnung eines Kunden zu einer Branche). Der Link verknüpft zwei oder mehrere Hubs. Und wer an dieser Stelle angekommen ist, ein Link kann selber wieder mehrere Satelliten haben!

 

Zur Veranschaulichung siehe die Abbildung unten:
https://www.slideshare.net/dlinstedt/introduction-to-data-vault-dama-oregon-2012

Ein Data Vault soll also die datentechnische Basis für jede Art von Reporting-Anwendung über die gesamte Organisation hinweg sein. Welche Vorteile bietet dieser Ansatz im Detail?

K. R.: In unserer Arbeit mit Data Vaults sehen wir doch einige Vorteile, auch wenn es jetzt technisch wird.

Durch die strikte Trennung in die bereits erwähnten 3 Kategorien „Hub“, „Sat“ und „Link“ schaffen wir ein standardisiertes Vorgehen bei der Entwicklung eines DWH.

Diese Standardisierung ermöglicht den Einsatz von Code-Generatoren. Damit entfällt die manuelle Implementierung von Data Vault-Strukturen größtenteils. Das spart Kosten und Zeit!

Data Vaults macht man vor allem, weil man damit sehr flexibel erweitern kann. D.h. man muss nicht bestehende Tabellen erweitern, sondern kann neue Tabellen z.B. als Satelliten dazu fügen. Damit wird der Data Warehouse Ansatz agil!

Vorteile für das Reporting und die Analyse bringen weiters die quasi vollständige Historisierung, was aber natürlich von der Beladungsfrequenz abhängt und die Möglichkeit der intensiven Parallelisierung der Ladeprozesse. Wobei die Daten aus den unterschiedlichsten Quellen kommen können. Stichwort 3 Kategorien von Strukturen.

Aber Achtung: Der Data Vault beinhaltet noch keine „weichen“ Business Rules, und zudem sind die Strukturen ja auf maximale Flexibilität ausgerichtet und nicht auf Abfrageperformance. Fürs Reporting selbst benötigt man entweder eigene Datamarts on top, oder kann recht rasch Business-Vaults aufbauen, was dann das DWH wieder agil macht.

Zu guter Letzt, der Data Vault Ansatz ist auch für andere Umgebungen wie klassische RDBMS geeignet. Zum Beispiel in Hadoop Umgebungen.

 

Das sind eine ganze Menge Vorteile. Sind mit Data Vaults auch Nachteile verbunden?

K. R.: Kein Licht ohne Schatten. Je nachdem wie „fein granular“ man die Modellierung des Data Vault angeht, desto mehr Objekte erhält man. Aus einer Tabelle können etliche DV-Strukturen entstehen (z.B. 1 Hub, 3 Satelliten und 7 Links).

Beachten Sie bitte: Data Vault Strukturen sind nicht direkt für Reporting-Zwecke gedacht, sondern um das DWH zu flexibilisieren! Wie oben schon kurz beschrieben, bedarf es für das Reporting on-top, und zwar je nach Anforderungen, die Erstellung von Datamarts, was mitunter aufwendig werden kann oder zumindest von Business-Vault Strukturen, die meist einfacher sind.

Und last, but not least, nicht zu vergessen: Daten brauchen Platz!

Je nach Beladefrequenz und Änderungsraten kann ein Data Vault daher recht schnell richtig groß werden.

 

 

Unser Fazit:

Der Data Vault Ansatz bietet mir für Reporting und Analyse genau jene Strukturen und Flexibilität, die man für ein agiles Vorgehen benötigt. Und unserer langjährigen Erfahrung nach erfordern genau die Reporting- und Analyse Themen Großteils Agilität und Flexibilität. Etwas anderes wird von Kunden nicht akzeptiert und entspricht auch nicht den heutigen Realitäten im Business.

 

Wenn Sie mehr wissen möchten, stehe ich Ihnen für weitere Fragen gerne zur Verfügung und freue mich auf regen Austausch/Diskussion.

 

DI Kurt Rahstorfer
Ihr Ansprechpartner für Data Management