Technical Solution Architect – Data Vault
DIE AUFGABE
Bei diesem 16-monatigem Projekt wurde eine Data Warehouse Automation Solution mit Hilfe von Java implementiert werden. Eine Domain Specific Language (Technologie: Xtext) kam als Basis für u.a. Raw und Business Data Vault Modellierung zum Einsatz.
Zur Abstimmung der Data Vault Architektur bestand stets ein enger Kontakt mit dem Enterprise Architekten und den System Engineers. Die aufgestellten Business Requirements halfen bei der Entwicklung der Data Vault Business Rules.
Konzept, Design und Implementierung der Business Data Vault Layers waren so aufeinander abgestimmt, dass es möglich ist im Near Real-Time Umfeld die Daten zu verarbeiten.
Durch die Bereitstellung von notwendigen Metadaten und generischen Testcases, konnte die Test-Automation von den zuständigen Entwicklern realisiert werden.
Die entwickelte Data Warehouse Automation Solution generiert alle notwendigen Artefakte und ETL Routinen. Dies ist u.a. durch die Entwicklung von PL/SQL Templates sichergestellt. Eine weitere Aufgabe war die Weiterentwicklung der Deployment-Routinen inkl. der Continuous Integration Pipelines in Jenkins.
Der Support bei der Raw Data Vault Modellierung wurde von den Mitarbeitern sehr geschätzt.
Das eingesetzte Scaled Agile Framework (SAFe) im Projekt, stellte eine hohe Qualität in der iterativen Produktauslieferung und frühzeitiges Feedback von Seiten der Anforderer sicher.
DIE HERAUSFORDERUNGEN
Der Entwurf und die Implementierung einer Domain Specific Language (DSL), die es ermöglicht möglichst einfach den kompletten Integrationslayer (Stage, Raw Data Vault, Business Data Vault) stellte in diesen Projekt eine besondere Herausforderung dar. Dabei war immer im Fokus möglichst wenig explizit zu modellieren (mit Hilfe der DSL) um somit einen hohen Automatisierungsgrad und weniger Fehleranfälligkeit zu erreichen. Stetes Review der DSL und notwendiges Refactoring stellte sicher, dass eine schlanke DSL entstand, die die notwendigen Anwendungsszenarien abdeckt.
Eine wesentlichen Anforderung an die Data Warehouse Automation Solution war die Near Real Time Datenverarbeitung über den kompletten Integrationslayer hinweg. Das bedeutet, dass die im Sekundentakt ankommenden Quelldaten sofort verarbeitet werden mussten. Dies wurde durch eine modularisierte und abhängigkeitsfreie Architektur gewährleistet. Im Backend wurde eine State Machine implementiert, die mehreren Worker-Prozessen ermöglichte parallel die Daten über den Integrationslayer hinweg zu verarbeiten.
Der angestrebte hohe Automatisierungsgrad führte auch zu spezifischen Anforderungen an das Data Warehouse Testing. Neben der automatisierten Ausführung von Testfällen war auch die automatisierte Erstellung von Testfällen ein wichtiges Merkmal der Solution. Mit Hilfen von dem Test Tool Tricentis Tosca und der automatisch erstellten Metadaten für die Testfälle konnte ein sehr hoher Automatisierungsgrad für das Raw Data Vault erreicht werden. Spezifische Testfälle für das Business Data Vault wurden soweit parametrisiert, sodass diese ebenso für verschiedene Umgebungen nutzbar sind. Die Einbindung der Test-Suite in den Continuous Integration Prozess stellte sicher, dass die Software Qualität der Data Warehouse Automation Solution stetig hoch war.
Die Orchestration von Modellierung, ETL Artefakt Erstellung, Deployment der Artefakte und Ausführung der ETL Routinen mit anschließenden automatisierten DWH Testing stellte eine besondere Herausforderung dar. Nur durch den Einsatz von Build Tools (wie Maven) und der vollständigen Integration aller Komponenten in Jenkins (mit hohen Grad an Parametrisierung) war es möglich die Anforderung anContinuous Integration /Deployment (CI/CD) zu erfüllen. Ständige Weiterentwicklung und Optimierung an den CI/CD Pipelines sind während des noch laufenden Projekts notwendig, um zu gewährleisten, dass alle Komponenten Teil der Pipeline sind.
IHR UNTERNEHMEN PLANT AUCH DIE ENTWICKLUNG EINER DATA WAREHOUSE AUTOMATION LÖSUNG?
Sie benötigen aber noch weiteres Know-How? Dann nehmen Sie Kontakt mit uns auf. Gerne beraten wir Sie und finden gemeinsam die passende Lösung für Ihre Herausforderungen bei der Entwicklung einer neuen Data Warehouse Automation Lösung.
Datenschutz ist uns wichtig. Ihre E-Mail wird nur für die Beantwortung Ihrer Anfrage genutzt. Weitere Informationen finden Sie in unserer Datenschutzerklärung.