Bearbeiten

Analysieren empirischer Patientendaten mithilfe von OHDSI und OMOP CDM

Azure Pipelines
Azure SQL-Datenbank
Skalierungsgruppen für virtuelle Azure-Computer
Azure Blob Storage
Azure Container Registry

Observational Health Data Sciences and Informatics (OHDSI) hat den Standard Observational Medical Outcomes Partnership Common Data Model (OMOP CDM) und die zugehörigen OHDSI-Softwaretools für die Visualisierung und Analyse klinischer Gesundheitsdaten entwickelt und kümmert sich um die Pflege des Standards und der Softwaretools. Diese Tools erleichtern das Entwerfen und Ausführen von Analysen auf der Grundlage standardisierter empirischer Patientendaten.

Mit OHDSI in Azure können Organisationen, die das -CDM und die zugehörigen Analysetools verwenden möchten, die Lösung mühelos auf der Azure-Plattform bereitstellen und betreiben.

Terraform ist entweder eine eingetragene Marke oder eine Marke von HashiCorp in den USA und/oder anderen Ländern. Die Verwendung dieser Marke impliziert keine Empfehlung durch HashiCorp.

Aufbau

Diagramm: Architektur zum Analysieren von Patientendaten mithilfe von OHDSI

Laden Sie eine Visio-Datei dieser Architektur herunter.

Das obige Diagramm veranschaulicht die allgemeine Lösungsarchitektur. Die Lösung setzt sich aus zwei Hauptressourcengruppen zusammen:

  • Bootstrap-Ressourcengruppe: Enthält einen grundlegenden Satz von Azure-Ressourcen, die die Bereitstellung der OMOP-Ressourcengruppe unterstützen.
  • OMOP-Ressourcengruppe: Enthält die OHDSI-spezifischen Azure-Ressourcen.

Die gesamte Bereitstellungsautomatisierung wird über Azure Pipelines orchestriert.

Dieser Artikel richtet sich in erster Linie an DevOps-Entwicklerteams. Wenn Sie dieses Szenario bereitstellen möchten, sollten Sie mit dem Azure-Portal und mit Azure DevOps vertraut sein.

Workflow

  1. Stellen Sie die Bootstrap-Ressourcengruppe bereit, um die Ressourcen und Berechtigungen zu unterstützen, die für die Bereitstellung der OHDSI-Ressourcen erforderlich sind.
  2. Stellen Sie die OMOP-Ressourcengruppe für die OHDSI-spezifischen Azure-Ressourcen bereit. Nach diesem Schritt sollte die infrastrukturbezogene Einrichtung abgeschlossen sein.
  3. Stellen Sie OMOP CDM und die Vokabulare zum Bereitstellen des Datenmodells bereit, und füllen Sie die OMOP-gesteuerten Vokabulare im CDM in Azure SQL auf.
  4. Stellen Sie die OHDSI-Anwendungen bereit:
    1. Richten Sie die Atlas-Benutzeroberfläche und die WebAPI-Ebene mithilfe des Images „BroadSea WebTools“ ein. Atlas ist eine Webbenutzeroberfläche, die Features aus verschiedenen OHDSI-Anwendungen integriert. Sie wird von der Ebene WebAPI unterstützt.
    2. Richten Sie Achilles und Synthea mithilfe des Images „BroadSea Methods“ ein. Achilles ist ein R-basiertes Skript, das Datencharakterisierungen und Qualitätsbewertungen für OMOP CDM ausführt. Das Skript Synthea ETL ist ein optionales Tool, mit dem Benutzer synthetische Patientendaten in OMOP CDM laden können.

Komponenten

  • Microsoft Entra ID ist ein mehrinstanzenfähiger, cloudbasierter Verzeichnis- und Identitätsverwaltungsdienst. Microsoft Entra ID wird verwendet, um Berechtigungen für die Umgebungsbereitstellung zu verwalten.
  • Azure Pipelines erstellt und testet Codeprojekte automatisch. Dieser Azure DevOps-Dienst kombiniert Continuous Integration (CI) und Continuous Delivery (CD). Diese Praktiken werden von Azure Pipelines genutzt, um Code kontinuierlich und konsistent zu testen und zu erstellen und ihn an ein beliebiges Ziel zu liefern. Pipelines definieren diesen Bereitstellungsansatz für OHDSI in Azure und führen ihn aus.
  • Azure Virtual Machine Scale Sets ermöglicht die Erstellung und Verwaltung einer Gruppe heterogener virtueller Computer (virtual machines, VMs) mit Lastenausgleich. Diese virtuellen Computer koordinieren die Bereitstellung der Umgebung.
  • Azure Blob Storage ist ein zum Speichern großer Mengen unstrukturierter Daten optimierter Speicherdienst. Blob Storage wird verwendet, um die Terraform-Zustandsdatei und die unformatierten OMOP-Vokabulardateien zu speichern (vor der Erfassung im CDM).
  • Azure Key Vault ist ein Azure-Dienst, der es ermöglicht, Geheimnisse, Schlüssel und Zertifikate mit verbesserter Sicherheit zu speichern und auf sie zuzugreifen. Key Vault bietet HSM-gestützte Sicherheit und überwachten Zugriff über rollenbasierte Zugriffssteuerungen mit Microsoft Entra ID-Integration. In dieser Architektur werden alle Geheimnisse (einschließlich API-Schlüssel, Kennwörter, kryptografische Schlüssel und Zertifikate) in Key Vault gespeichert.
  • Azure SQL-Datenbank ist eine vollständig verwaltete PaaS-Datenbank-Engine (Platform-as-a-Service). SQL-Datenbank wird für Datenbankverwaltungsfunktionen wie Upgrades, Patches, Sicherungen und Überwachung genutzt. In diesem Dienst befinden sich OMOP CDM und alle zugeordneten relationalen Daten.
  • Azure Web Application Firewall trägt dazu bei, Anwendungen vor gängigen webbasierten Angriffen zu schützen. Hierzu zählen unter anderem OWASP-Sicherheitsrisiken, Angriffe durch Einschleusung von SQL-Befehlen und Cross-Site Scripting. Diese Technologie ist cloudnativ. Sie muss nicht lizenziert werden, und die Bezahlung ist nutzungsbasiert.
  • Azure Container Registry ermöglicht die Erstellung, Speicherung und Verwaltung von Containerimages und -artefakten in einer privaten Registrierung für alle Arten von Containerbereitstellungen. In dieser Lösung werden OHDSI-Anwendungsimages („BroadSea WebTools“ und „BroadSea Methods“) für die Bereitstellung in Azure App Service gespeichert.
  • Azure App Service ist ein HTTP-basierter Dienst zum Hosten von Webanwendungen, REST-APIs und mobilen Back-Ends. Dieser Dienst unterstützt die WebAPI- und die Atlas-Anwendung von OHDSI.

Alternativen

Wenn Sie mehr Skalierbarkeit oder Kontrolle benötigen, können Sie ggf. folgende Alternativen verwenden:

Szenariodetails

Die Möglichkeit, klinische Patientendaten zusammenzuführen, zu harmonisieren, zu visualisieren, zu segmentieren und zu analysieren hat sich in der Gesundheitsbranche schnell zu einem gängigen Anwendungsfall entwickelt. Viele Organisationen – einschließlich akademischer Institutionen, Behörden und Organisationen im privaten Sektor – möchten die ihnen zur Verfügung stehenden Gesundheitsdaten von Patienten nutzen, um die Forschung und Entwicklung voranzutreiben. Leider haben die meisten IT-Teams Probleme damit, effektiv mit Forschern zusammenzuarbeiten, um eine Arbeitsumgebung bereitzustellen, in der Forscher produktiv und ungehindert arbeiten können.

OHDSI ist eine Initiative mit mehreren tausend Projektmitarbeitern in über 70 Ländern/Regionen. Sie bietet eine der wenigen verfügbaren Lösungen in einem Open-Source-Format für Forscher. OHDSI hat den Standard OMOP CDM und die zugehörigen OHDSI-Softwaretools für die Visualisierung und Analyse klinischer Gesundheitsdaten entwickelt und kümmert sich um die Pflege des Standards und der Softwaretools.

Mögliche Anwendungsfälle

Von dieser Lösung können verschiedene Arten von Organisationen im Gesundheitswesen profitieren. Hierzu zählen beispielsweise:

  • Akademische Institutionen, die Wissenschaftlern die Durchführung empirischer Kohortenstudien mit klinischen Daten ermöglichen möchten
  • Behörden, die einen Verbund aus zahlreichen verschiedene Datenquellen bilden möchten, um wissenschaftliche Entdeckungen zu beschleunigen
  • Unternehmen aus dem privaten Sektor, die die Identifizierung potentieller Patienten für klinische Studien optimieren möchten

Überlegungen

Diese Überlegungen bilden die Säulen des Azure Well-Architected Framework, einer Reihe von Leitprinzipien, die Sie zur Verbesserung der Qualität eines Workloads verwenden können. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.

Zuverlässigkeit

Zuverlässigkeit stellt sicher, dass Ihre Anwendung Ihre Verpflichtungen gegenüber den Kunden erfüllen kann. Weitere Informationen finden Sie in der Überblick über die Säule „Zuverlässigkeit“.

SQL-Datenbank umfasst zonenredundante Datenbanken, Failovergruppen, Georeplikation und automatische Sicherungen. Diese Features sorgen dafür, dass Ihre Anwendung im Falle eines Wartungsereignisses oder Ausfalls weiterhin ausgeführt werden kann. Weitere Informationen finden Sie unter Verfügbarkeitsfunktionen.

Verwenden Sie ggf. Application Insights, um die Integrität Ihrer Anwendung zu überwachen. Mit Application Insights können Sie Warnungen generieren und auf Leistungsprobleme reagieren, die die Benutzerfreundlichkeit beeinträchtigen. Weitere Informationen finden Sie unter Was ist Application Insights?.

Weitere Informationen zur Zuverlässigkeit finden Sie unter Entwerfen zuverlässiger Azure-Anwendungen.

Sicherheit

Sicherheit bietet Schutz vor vorsätzlichen Angriffen und dem Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Übersicht über die Säule „Sicherheit“.

In diesem Szenario werden verwaltete Identitäten für Azure-Ressourcen verwendet, um eine Identität für eine Anwendung bereitzustellen, die bei der Verbindungsherstellung mit Ressourcen verwendet werden kann, die die Microsoft Entra-Authentifizierung unterstützen. Durch verwaltete Identitäten müssen keine Geheimnisse und Anmeldeinformationen für die einzelnen Azure-Ressourcen verwaltet werden.

SQL-Datenbank verwendet einen mehrschichtigen Ansatz zum Schutz von Kundendaten. Dieser umfasst Netzwerksicherheit, Zugriffsverwaltung, Bedrohungsschutz und Informationsschutz. Weitere Informationen zur Sicherheit von SQL-Datenbank finden Sie unter Erweiterte Sicherheit und Konformität.

Wenn hohe Netzwerksicherheit eine kritische Anforderung ist, empfiehlt es sich gegebenenfalls, Azure Private Link zu verwenden, um App Service mit Azure SQL zu verbinden. Dadurch kann nicht mehr über das öffentliche Internet auf die SQL-Datenbank zugegriffen werden. (Der Zugriff über das öffentliche Internet ist ein häufig genutzter Angriffsvektor.) Sie können auch private Endpunkte für Azure Storage verwenden, um die Sicherheit beim Zugriff auf Daten über eine private Azure-Verbindung zu erhöhen. Diese Implementierungen sind derzeit nicht in der Lösung enthalten, können aber bei Bedarf von Ihnen hinzugefügt werden.

Einen allgemeinen Leitfaden zum Entwerfen sicherer Lösungen finden Sie in der Dokumentation zur Azure-Sicherheit.

Kostenoptimierung

Bei der Kostenoptimierung geht es darum, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Übersicht über die Säule „Kostenoptimierung“.

Verwenden Sie den Azure-Preisrechner, um einen besseren Überblick über die Kosten für eine Umsetzung dieses Szenarios in Azure zu erhalten. Diese Schätzung basiert auf der Standardkonfiguration, bei der alle Azure-Ressourcen über Infrastructure-as-Code bereitgestellt werden. Diese Kostenschätzungen können sich abhängig von der Größe Ihrer Daten sowie aufgrund anderer ggf. gemeinsam genutzter Ressourcen in Ihrer Organisation (z. B. Microsoft Entra ID oder Azure DevOps) ändern.

Effiziente Leistung

Leistungseffizienz ist die Fähigkeit Ihrer Workload, auf effiziente Weise eine den Anforderungen der Benutzer entsprechende Skalierung auszuführen. Weitere Informationen finden Sie unter Übersicht über die Säule „Leistungseffizienz“.

In diesem Szenario wird App Service verwendet. Mit diesem Dienst kann optional auch die Anzahl von Instanzen, die die Atlas-Benutzeroberfläche unterstützen, automatisch skaliert werden. Dadurch können Sie mit dem Bedarf der Endbenutzer Schritt halten. Weitere Informationen zur automatischen Skalierung finden Sie unter Empfohlene Methoden für die automatische Skalierung.

Weitere Informationen finden Sie unter Prüfliste zur Leistungseffizienz.

Bereitstellen dieses Szenarios

Weitere Informationen zur Bereitstellung einer OHDSI-Toolsuite sowie zusätzliche detaillierte Dokumentationen finden Sie in den folgenden Ressourcen:

Beitragende

Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:

Hauptautoren:

Andere Mitwirkende:

Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.

Nächste Schritte