
Kundenstory
Aufbau von Data Pipelines in der Azure Cloud
Wie data pipelines in Azure benutzt werden um Maschinendaten auszuwerten
Fresenius Medical Care
Software Development
Healthcare
2022
Höhere Flexibilität
Skalierungsfähigkeit
Robustheit
Schnellere Release Zyklen
Modernes Secret Management
Schnellere Auswertung
In a Nutshell:
BRANCHE: HEALTHCARE
Task: In diesen Kundenprojekt ging es darum Maschinendaten über Behandlungen für Analytics und Machine Learning bereitzustellen
Team:
insgesamt ca. 8 Leute, hauptsächlich Data Scientists
Ingenieure, welche die Maschinen entwickeln und die Insights nutzen
- Projektlaufzeit: +12 Monate
Herausforderungen:
- Dialysemaschinen sammeln Daten lokal in der Klinik gesammelt, Fragestellung ist wie man die Daten auswerten kann
- Komplexe Parser sind nötig, um Maschinendaten zu entschlüsseln
- Aufbau von Azure Daten Piplines um wichtige Daten zu konsolidieren
- Zusammenführung verschiedenen Datenquellen damit weitere KPIs berechnet werden können
- Daten Pipelines sollen idempotent und modular gehalten werden
- Skalierung: Pipelines sollen für steigende Datenmengen ausgelegt sein
- Privacy: Patientendaten müssen mit größter Sorgfalt behandelt werden
Lösungen:
- Nutzung von Azure Functions für Containerisierung der Parser mit Docker
- Upload verschiedener Datenquellen auf Azure Data Lake Gen2 (parquet)
- Nutzung von Azure Synapse Analytics zur Abfrage der Daten mit SQL
- Auto-Scaling durch Einsatz von Azure Functions
- Modulare, einfache und skalierbare Pipelines in Azure Data Factory
- Orchestrierung der Pipelines durch Azure Data Factory
- Aufbau von verschiedenen Data Layers im Azure Data Lake (Raw, Staging, core, presentation)
- Vollautomatisierte Provisionierung der kompletten Infrastruktur mit Infrastructure as Code (Pulumi)
Ergebnisse:
- Höhere Flexibilität durch modularer Aufbau der Cloud Architektur
- Skalierungsfähigkeit durch Azure Functions und Auto-Scaling in der Cloud
- Kostengünstige Speicherung der Daten in Azure Data Lake Gen2
- Robustheit durch Verwendung von Infrastructure as Code (Pulumi)
- Schnelleres Release Zyklen durch den Einsatz von CICD und GitHub Actions pipelines
- Modernes Secret Management durch Nutzung von Key Vaults und Infrastruture as Code
- Schnellere Auswertung möglich durch automatisierte Bereitstellung der Daten
- Sichere und verschlüsselte Datenspeicherung in der Cloud
Projektgeschehen:
Anforderungen des Kunden
Ziel des Projektes war es die Daten von verschiedenen Lokal stehenden Maschinen zu sammeln, diese in die Cloud zu heben und letztendlich auszuwerten. Hierfür wurden Technologien wie Azure Data Lake, Azure Data Factory, Azure Synapse und custom Python Code genutzt. Wichtig für den Kunden war es auf die Privacy der Daten zu achten und die Datenpipelines sicher zu gestalten. Weitere Anforderungen waren die komplexen Datenformate aus den Maschinen, hierfür wurden custom Python code geschrieben und ein Parser entwickelt. Eine weitere Anforderung des Kunden war es die Azure Infrastruktur skalierbar zugestalten um auf die steigenden Datenmengen in der Zukunft vorbereitet zu sein.
Anpassung und Aufbau der Pipelines
Die Pipelines wurden primär in Azure Data Factory entwickelt. Als Datenquelle wurde der Azure Data Lake gen2 genutzt, dieser wurde regelmäßig mit neuen Daten der lokalen Maschinen erweitert. Für die weitere Verarbeitung der Daten und das Auslesen der Daten mit einem custom-C-parser wurden verschiedene Azure Functions genutzt. Die weitere Verarbeitung der Daten haben verschiedene Data Scientist übernommen und arbeiteten primär in Azure Databricks. Um alle Daten auszulesen wurde Azure Synapse genutzt welches sowohl auf die Daten im Data Lake als auch Daten in Azure Data Bricks ausgelesen hat.
Durch den Aufbau verschiedener Release und deployment pipelines konnte die durchschnittliche Zeit neue Features zu liefern deutlich reduziert werden. Der Einsatz der pipelines wurde so modular aufbaut dass verschiedene Teil-Teams diese individuell verwendet haben je nach spezifischen Anwendungsfall.
Robuste, modulare Cloud Infrastruktur und Datensicherheit
Eine weitere wichtige Anforderung war es die Cloud Infrastruktur skalierbar zu gestalten. Durch den Einsatz von Infrastructure as Code war der zentrale Überblick über die Cloud Ressourcen und Infrastruktur klar definiert. Ein weiterer Vorteil davon war die Verbesserung von Workflows der Entwickler und die integration in verschiedenen DevOps Prozessen.
Die komplette Infrastruktur wurde so aufgebaut, dass diese mit den wachsenden Anforderungen der Datenmengen mit skaliert. Durch die Lagerung der Daten in Azure Data Lake und den sicheren Datentransfer konnte stets die Datensicherheit der Kunden gewährleistet werden. Daten aus USA werden dabei stets auf USA regionen gehosted und Daten aus Europa in europäischen Regionen.
Projektstatus und Ergebnisse
Der Kunde ist sehr zufrieden mit der Auswahl von Azure als Cloud Infrastruktur. Das Projekt läuft heute noch weiter und skaliert mit den steigenden Datenmengen wunderbar mit.
Durch die Optimierung verschiedener DevOps Prozesse und den Aufbau der Pipelines waren alle Sub-teams deutlich schneller im Testen, Release, Deployen der Software. Somit konnten interne Fachabteilung schneller Ergebnisse sehen und agil die Kundenanforderungen in den Sprints anpassen. Die Nutzung von Infrastructure as Code konnte eine robuste und module Cloud Infrastruktur geschaffen werden.
Durch Schaffung von Dynamik in Pipelines können verschiedene interne Teams der Kunden auf die ausgewerteten Daten zugreifen und weitere Analysen erstellen.
Technology Stack:
Cloud Infrastruktur:
- Azure
Azure Synapse Analytics
Azure Functions
Data Services:
- Azure Synapse Analytics
- Azure Blob Storage
- Azure Data Factory
CICD & IaC:
- GitHub Actions
- Azure Key Vault
- Azure Resource Groups
- Infrastructure as Code – Pulumi
Software Entwicklung:
Python
Warum Pexon Consulting?
Pexon Consulting hat sich voll und ganz Ihrem Erfolg verschrieben und wir glauben daran, dass wir immer für jeden unserer Kunden die Extrameile gehen:

Hingabe zum Erfolg

Fokus auf Leistung

Engineering mit Leidenschaft
Ihre Ansprechpartner
Schicken Sie uns eine Nachricht über das Kontaktformular unserer Kontaktseite und wir werden uns innerhalb weniger Arbeitstage mit Ihnen in Verbindung setzen. Alle übermittelten Informationen werden vertraulich behandelt.