CUSTOMER STORIES

Sanofi beschleunigt Analyse realer Klinikdaten mit Snowpark

Indem Sanofi seine verwaltete Spark-Lösung durch Snowflake ersetzte, konnte das Unternehmen seine Datenverarbeitung beschleunigen und die Gesamtbetriebskosten verringern – und das alles mit optimaler Compliance und Data Governance.

WICHTIGE ERGEBNISSE:

50 %

bessere Performance gegenüber der vorherigen, verwalteten Spark-Lösung

100 Mio.

Datensätze von Patient:innen pro Kohorte, die durchschnittlich in vier Minuten verarbeitet werden

Doctors looking at a computer
vanderbilt-university-logo-customer-story-alt
Branche
Pharmazie
Standort
Bridgewater, NJ

Für das Wunder der Medizin

Die wichtigsten Standorte von Sanofi befinden sich in Bridgewater, New Jersey, sowie Cambridge, Massachusetts, und allein in den USA beschäftigt das Unternehmen landesweit über 13.000 Expert:innen. Sanofi U.S. besteht aus vier Geschäftsbereichen: Spezialversorgung (Specialty Care), Impfstoffe (Vaccines), Allgemeinmedizin (General Medicines) und Verbrauchergesundheit (Consumer Healthcare). Auf der ganzen Welt arbeiten insgesamt mehr als 100.000 Personen bei Sanofi daran, durch das Wunder der Medizin unser aller Leben zu verbessern.

Highlights des Berichts
  • Reale Klinikdaten für die medizinische Fachwelt: Sanofi entwickelt derzeit eine reaktive Webapplikation, die auf Snowflake basiert und mit der medizinische Fachkräfte reale Klinikdaten analysieren können, um Vorteile und Risiken einer Behandlung zu bewerten.

  • Von einer verwalteten Spark-Lösung zu Snowpark: Durch die Migration von der vorherigen, verwalteten Spark-Lösung konnte Sanofi seine Performance um 50 % steigern und Herausforderungen in den Bereichen Verwaltung, Konfiguration und Parallelität bewältigen.

  • Professional Services: Dank Professional Services und Snowpark Migration Accelerator, einem automatisierten Tool zur Code-Umwandlung, konnte der PySpark-Code an Snowpark angepasst werden. So wurde bei der Migration Zeit gespart.

Die nötige Skalierung, um den Einsatz realer Klinikdaten zu unterstützen

Sanofi verfolgt derzeit ein Projekt zur Entwicklung einer unternehmensweiten Datenverarbeitungsplattform. Sie soll die analytischen Anforderungen der medizinischen Fachwelt erfüllen, insbesondere im Kontext der Medikamentenforschung. Der Fokus des Projekts liegt darauf, eine intuitive Webapplikation für medizinische Fachkräfte zu entwickeln, in der sie Abfragefilter für Krankheiten, Medikamente oder Verfahren festlegen können, um Patientenkohorten zu finden, die bestimmte Kriterien erfüllen. So können sie schneller reale Klinikdaten analysieren, um Vorteile und Risiken von Behandlungen zu bewerten. 

Die Webapplikation verarbeitet Milliarden von Datasets, um wichtige analytische Erkenntnisse für Nutzende zu generieren. Um diese Verarbeitung zu unterstützen, nutzte die bisherige Datenarchitektur von Sanofi eine verwaltete Spark-Engine als Computing-Ebene. Doch das Datenteam stand vor mehreren Herausforderungen: die manuelle Bereitstellung und Wartung von Spark, Probleme mit der Skalierbarkeit von Ressourcen, häufige Pipeline-Ausfälle aufgrund begrenzter Rechenressourcen, Probleme mit der Parallelität bei Spitzenauslastung sowie komplexe Datenbewegungen zwischen verschiedenen Plattformen.

Um Nutzenden einen besseren Service zu bieten, beschloss das Datenteam von Sanofi, seine analytische Engine umzugestalten. Hierzu Suku Muramula, Architecture and Data Engineering Lead: „Da wir Snowflake bereits für verschiedene Datenverarbeitungsaufgaben nutzten, haben wir uns Snowpark als eine mögliche Lösung für unsere künftigen Datenverarbeitungsanforderungen angesehen.“

Umgestaltung der analytischen Engine von Sanofi mit Snowflake und Snowpark

Sanofi entschied sich für Snowflake und Snowpark – Letzteres umfasst eine Reihe von Bibliotheken und Laufzeiten für die sichere Bereitstellung von Python-Code –, um seine analytische Engine umzugestalten. Dank der Trennung von Speicher und Rechenressourcen, nahezu keinem Wartungsaufwand und der On-Demand-Skalierbarkeit von Snowflake konnte Sanofi gesteigerte Workloads und Datenmengen effizient bewältigen – ohne Performance-Einbußen und zu optimalen Kosten.

Zu Beginn der Migration konzentrierte sich das Datenteam auf eine serviceorientierte Architektur. Ziel war es hierbei, ein leistungsstarkes und effizientes System mit unabhängigen Services aufzubauen, um Fehler effektiver isolieren zu können. So wollte das Team sicherstellen, dass Probleme in einem Service nicht das gesamte System beeinträchtigen. Und das war entscheidend, um die Migration von einem verwalteten Spark-Cluster zu Snowflake zu beschleunigen, da hierdurch Unterbrechungen der Webapplikation minimiert wurden.

sanofi diagram

Abbildung 1: Aktuelle Architektur mit Ökosystem aus Snowflake und Snowpark.

Wie Sie in Abbildung 1 sehen, kommen in der neuen Architektur keine komplexen Pipelines zum Einsatz. Stattdessen wird die Datenverarbeitung optimiert, indem die Daten- und Rechenplattform mit Snowflake und Snowpark zusammengeführt werden. So wurden Latenzen reduziert und die Gesamtperformance verbessert, was eine schnellere Datenverarbeitung und -analytik ermöglicht.

Die Snowflake-Funktionen für Data Governance – darunter präzise Berechtigungen und rollenbasierter Zugriff – ermöglichen optimale Kontrolle über Daten und Bibliotheken. Und das gewährleistet nicht nur Datensicherheit, sondern auch die Einhaltung von Richtlinien.

„Neben der Beschleunigung unserer Datenverarbeitung ist es für unsere Branche außerdem von größter Bedeutung, proprietäre Daten zu schützen sowie die Sicherheit von Algorithmen und eine effektive Governance zu gewährleisten. Durch die Nutzung von Snowpark als Computing-Ebene für Python-Code innerhalb unserer Snowflake-Datenplattform ist keine Datenübertragung nötig. Gleichzeitig haben unsere Administrator:innen umfassende Berechtigungen für alle Daten und Bibliotheken.”

Suku Muramula
Architecture and Data Engineering Lead, Sanofi

50 % bessere Performance dank Snowpark

Mit seiner früheren Architektur, bei der eine verwaltete Spark-Engine als Computing-Ebene zum Einsatz kam, stand Sanofi vor mehreren Herausforderungen. Die manuelle Bereitstellung der Engine erforderte jedes Mal manuelle Updates, wenn neue Funktionen eingeführt oder Änderungen an der Backend-Pipeline vorgenommen wurden. Hierdurch stieg nicht nur der Koordinationsaufwand, sondern auch die manuelle Abhängigkeit sämtlicher Prozesse. Und so dauerte es letztlich länger, die Pipeline End-to-End auszuführen.

Und auch der Aufbau und die Konfiguration eines Spark-Clusters kosteten viele Ressourcen. „Wir stellten fest, dass der Cluster nicht skalierbar war. Wenn wir größere Instanzen brauchten, um komplexe oder intensive Abfragen auszuführen, mussten wir den Cluster manuell konfigurieren. Und das führte letztlich zu Performanceproblemen in der Pipeline“, erinnert sich Ratan Roy, Data Engineer bei Sanofi. „Es gab außerdem keinerlei automatische Optimierungen und die Verarbeitung erforderte große Speichermengen.“ 

Das Datenteam erlebte viele Szenarien, in denen die Pipeline ausfiel oder es aufgrund fehlender Rechenressourcen zu Verzögerungen kam. Da die verwaltete Spark-Umgebung gemeinsam genutzt wurde, hingen die verfügbaren Rechenressourcen von der Verfügbarkeit des Spark-Clusters ab, nicht vom Bedarf der Anfrage. 

Bei der webbasierten Plattform, die von der Community medizinischer Fachkräfte verwendet wird, gab es Probleme mit der Parallelität, wenn mehrere Personen gleichzeitig Webapplikationen ausführen wollten. Da der Spark-Cluster eine riesige Datenmenge von über einer Milliarde Datasets verarbeiten musste, lag die durchschnittliche Antwortzeit auf eine analytische Anfrage während Spitzenzeiten bei etwa 15 Minuten.

Im Gegensatz zur Plattform von Snowflake, die Rechenressourcen und Datenspeicher voneinander trennt, verfügte die vorherige, verwaltete Spark-Lösung nicht über eine integrierte Datenspeicherebene. Die Datenverarbeitung musste separat erfolgen und erforderte zusätzliche Einstellungen, Konfigurationen und Datenbewegungen zwischen verschiedenen Plattformen. Und all das führte letztlich zu längeren Verarbeitungszeiten.

Nach der Entscheidung, zu Snowpark und der Plattform von Snowflake zu migrieren, führte das Datenteam von Sanofi eine Benchmark-Analyse durch. Sie ergab nicht nur eine 50-prozentige Performanceverbesserung gegenüber dem verwalteten Spark-Cluster, sondern auch niedrigere Gesamtbetriebskosten. „Heute können wir riesige Datenmengen innerhalb der Snowflake-Umgebung verarbeiten. So erhalten wir mehr Flexibilität und Geschwindigkeit zu geringeren Kosten“, so Ratan. „Mit Snowflake als zentralem Datenspeicher und den Rechenressourcen von Snowpark konnten wir die Kosten für Datenbewegungen reduzieren und so eine schnellere Performance und geringere Computing-Kosten erzielen.“

doctors in a hallway

„Unsere gesamte Data-Engineering-Pipeline und unser Algorithmus basieren auf Python- und Snowpark-Code. Alle Datenabfragen werden über Snowpark auf der Plattform von Snowflake verarbeitet.“

Ratan Roy
Data Engineer, Sanofi

Partnerschaft mit Snowflake Professional Services

Nachdem Sanofi beschlossen hatte, von Spark zu Snowpark zu migrieren, war die Zusammenarbeit mit dem Snowflake Professional Services-Team ein wichtiger Aspekt dieser Reise. 

„Ich war äußerst zufrieden mit der Erfahrung, die wir mit Professional Services gemacht haben. Das Team hat uns ab Tag 1 unterstützt: Sie haben uns bei der Verwaltung geholfen und mit uns gemeinsam herausgefunden, was für eine erfolgreiche Migration nötig ist“, so Muramula. „Die Bereitschaftsbewertung war einfach großartig. Mit ihr konnten wir wertvolle Einblicke in den Migrationsprozess gewinnen und sicherstellen, dass wir optimal darauf vorbereitet waren, Ressourcen bereitzustellen und etwaige Lücken im Prozess identifizieren zu können“, erinnert sich Muramula.

Der Snowpark Migration Accelerator, ein automatisiertes Tool zur Code-Umwandlung, hat den PySpark-Code an Snowpark angepasst und so den Migrationsprozess beschleunigt. „Das war ein echter Gamechanger, weil wir die Migration schnell voranbringen konnten, ohne dass hierdurch die Qualität des Codes gefährdet wurde. Ich kann anderen nur empfehlen, mit Professional Services zusammenzuarbeiten, wenn sie sich auf eine solche Reise begeben“, so Muramula.

Optimierung von Data Sharing und Data Science

Mit der aktuellen Applikation konzentriert sich das Datenteam von Sanofi auf eine Handvoll Datenquellen. Es ist jedoch geplant, die Applikation auf weitere Datenquellen auszuweiten, damit die medizinische Fachwelt zusätzliche Krankheiten und Behandlungsmethoden erforschen kann. 

„Unsere Verfahren zur Datenerfassung und -verarbeitung entwickeln sich ständig weiter. Deshalb müssen wir Milliarden zusätzlicher Datasets bewältigen, um unsere analytischen Fähigkeiten zu verbessern“, erklärt Muramula. „Wir sind überzeugt, dass die Plattform von Snowflake auch in Zukunft eine zuverlässige Basis für dynamische Skalierbarkeit und Stabilität bleiben wird, die sich mühelos an die schnell wachsende Landschaft anpassen kann.“

Beginnen Sie Ihre 30-tägigekostenlose Testversion

Testen Sie Snowflake 30 Tage kostenlos und erleben Sie die Data Cloud – ohne die Komplexität, Kosten und Beschränkungen anderer Lösungen.