Design ohne Titel 4 2

Kundenstory

Aufbau von Data Pipelines in der Azure Cloud

Wie data pipelines in Azure benutzt werden um Maschinendaten auszuwerten

Unternehmen

Fresenius Medical Care
Leistungen

Software Development
Branche

Healthcare
Kunde seit

2022
P

Höhere Flexibilität

Durch modularer Aufbau der Cloud Architektur.
P

Skalierungsfähigkeit

Durch Azure Functions und Auto-Scaling in der Cloud.
P

Robustheit

Durch Verwendung von Infrastructure as Code (Pulumi).
P

Schnellere Release Zyklen

Durch den Einsatz von CICD und GitHub Actions pipelines.
P

Modernes Secret Management

Durch Nutzung von Key Vaults und Infrastruture as Code.
P

Schnellere Auswertung

Durch automatisierte Bereitstellung der Daten.

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:

PexonConsulting 32 min

Hingabe zum Erfolg

Wir glauben, dass Erfolg dreifach ist: für unsere Kunden, ihre Kunden und die Gemeinschaften, die sie beeinflussen.
PexonConsulting 33 min

Fokus auf Leistung

Wir werden Ihr engagierter Partner. Das bedeutet, dass wir ein Projekt erst dann abschließen, wenn sowohl Sie als auch wir zu 100 % zufrieden sind.
PexonConsulting 31 min

Engineering mit Leidenschaft

Wir sind ein Netzwerk von Innovatoren. Wir entwickeln mutige Lösungen für die kompliziertesten Herausforderungen unserer Kunden.

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.

bild-von-paul-niebler

Paul Niebler

GF - Management, HR                                                                          Group 8

bild-von-phillip-pham

Phillip Pham

GF - Delivery, Sales, Finance                                                                Group 8

bild-von-alexander-nenninger

Alex Nenninger

Head of  Sales                                                  Group 8

bild-von-florian-schmidl

Florian Schmidl

Enterprise Architect & Ansprechpartner Pre-Sales                                                      Group 8

bild-von-marco-schwarz

Marco Schwarz

Head of Google Cloud                                                  Group 8

Sie suchen einen Partner für Ihr Projekt?

Wir geben unser Bestes, um Sie zufrieden zu stellen.