Um ein Data Warehouse aufzubauen und seine Funktionalität zu zeigen, benötigt man einen Datenbestand, der sich über die Zeit ändert. Ich habe mich lange gefragt, was für einen Datenbestand man dafür verwenden könnte. Die Daten sollten sinnvoll und frei verfügbar sein.
Eine erste Idee war, die Strommarktdaten von Deutschland zu verwenden, die von der Bundesnetzagentur über die Website SMARD in einer Creative Commons Lizenz zur Verfügung gestellt werden.
Quelle: Stromerzeugung und -verbrauch in Deutschland vom 31. Juli bis 10.August 2024 von Bundesnetzagentur | SMARD.de
Allerdings ist dieser Anwendungsfall doch sehr weit weg von dem, was ein durchschnittliches Unternehmen von seinem Data Warehouse erwartet. Es gibt dabei nicht die üblichen Kunden, Produkte, Bestellungen und Lieferungen, zu denen die Data Warehouses in Unternehmen Auskunft geben sollen.
Es gibt jedoch einen Datenbestand, der viel besser für ein Data Warehouse Beispiel geeignet ist, er ist sogar speziell dafür erstellt worden: die Daten des „Samen- und Pflanzenhandel Willibald“. Es handelt sich dabei um ein Projekt der Deutschsprachige Data Vault User Group (DDVUG) e.V.
Quelle: Willibalds DWA Challenge https://dwa-compare.info
Es handelt sich dabei um die Daten für die Data Warehouse Automation Challenge (DWA Challenge), an der Anbieter von Data Warehouse Automation teilnehmen können. Die DWA Challenge soll Unternehmen, die ein Data Warehouse aufbauen wollen, bei der Tool-Auswahl helfen. Auch diese Daten stehen in einer Creative Commons Lizenz zur Verfügung, sie sind aber im Gegensatz zu den Strommarktdaten „echte“ Unternehmensdaten eines Handelsunternehmens, also mit Kunden, Produkten, Bestellungen und Lieferungen.
In meinem letzten Beitrag Die Kraft der Abstraktion habe ich bereits erwähnt, wie man die Komponenten eines Data Vaults in einer kompakten Darstellung beschreiben kann und dass man diese Darstellung zum Generieren der Skripte verwenden kann, die das Data Warehouse verwendet, das ich im Beitrag „Ein DWH mit git, linux, Docker, PostgreSQL, dbt und AutomateDV“ beschrieben habe. Dieses Konzept will ich jetzt auf die Willibald-Daten anwenden. Ich gehe dabei so vor:
- Beschreiben der Willibald-Daten in der Datei Willibald.xml
- Generieren der Skripte für das Data Warehouse aus der Datei Willibald.xml
- Bereitstellen der Willibald-Daten in einem Übergabeverzeichnis
- Übernehmen der Willibald-Daten in das Data Warehouse
Bisher verwende ich nur die Daten des Willibald-Webshop, die Daten der Willibald-Roadshow sind noch nicht integriert. Es fehlen auch die Transformationen im Business Vault und die Darstellung der Ergebnisse im Mart. Mit diesem Ergebnis könnte ich noch nicht an der Willibald-DWA-Challenge teilnehmen, habe aber vor, die fehlenden Punkte inkrementell zu ergänzen.
Über die Umsetzung dieser Aufgabe, die dabei auftretenden Probleme und die gefundenen Lösungen will ich in den nächsten Beiträgen berichten.
Schreibe einen Kommentar