Observational Health Datawetenschap s and Computations (OHDSI) heeft de norm Observational Medical Outcomes Partnership Common Data Model (OMOP CDM) en bijbehorende OHDSI-softwarehulpprogramma's gemaakt en onderhouden om klinische gezondheidsgegevens te visualiseren en te analyseren. Deze hulpprogramma's faciliteren het ontwerp en de uitvoering van analyses op gestandaardiseerde, patiëntniveau, observationele gegevens.
Met OHDSI in Azure kunnen organisaties die de OMOP CDM en de bijbehorende analytische hulpprogramma's willen gebruiken om de oplossing eenvoudig te implementeren en te gebruiken op het Azure-platform.
"Terraform" is een gedeponeerd handelsmerk of een handelsmerk van HashiCorp in de Verenigde Staten en/of andere landen. Er wordt geen goedkeuring door HashiCorp geïmpliceerd door het gebruik van dit merk.
Architectuur
Een Visio-bestand van deze architectuur downloaden.
Het voorgaande diagram illustreert de oplossingsarchitectuur op hoog niveau. De oplossing bestaat uit twee belangrijke resourcegroepen:
- Bootstrap-resourcegroep. Bevat een basisset Azure-resources die ondersteuning bieden voor de implementatie van de OMOP-resourcegroep.
- OMOP-resourcegroep. Bevat de OHDSI-specifieke Azure-resources.
Azure Pipelines organiseert alle automatisering van implementaties.
Dit artikel is voornamelijk bedoeld voor DevOps-engineeringteams. Als u van plan bent dit scenario te implementeren, moet u ervaring hebben met Azure Portal en Azure DevOps.
Workflow
- Implementeer de Bootstrap-resourcegroep ter ondersteuning van de resources en machtigingen die nodig zijn voor de implementatie van de OHDSI-resources.
- Implementeer de OMOP-resourcegroep voor de OHDSI-specifieke Azure-resources. Deze stap moet uw infrastructuurgerelateerde installatie voltooien.
- Richt de OMOP CDM en vocabulaires in om het gegevensmodel te implementeren en vul de door OMOP beheerde woordenlijsten in de CDM in Azure SQL.
- De OHDSI-toepassingen implementeren:
- Stel de Atlas UI en WebAPI in met behulp van de afbeelding BroadSea WebTools. Atlas is een webgebruikersinterface die functies van verschillende OHDSI-toepassingen integreert. Dit wordt ondersteund door de WebAPI-laag .
- Stel De Afbeeldingen en Synthea in met behulp van de BroadSea Methods-installatiekopieën. Shells is een R-script dat gegevenskarakterings- en kwaliteitsevaluaties uitvoert op het OMOP CDM. Het Synthea ETL-script is een optioneel hulpprogramma waarmee gebruikers synthetische patiëntgegevens kunnen laden in het OMOP CDM.
Onderdelen
- Microsoft Entra ID is een cloudgebaseerde directory- en identiteitsbeheerservice voor meerdere tenants. Microsoft Entra-id wordt gebruikt voor het beheren van machtigingen voor de implementatie van de omgeving.
- Azure Pipelines bouwt en test automatisch codeprojecten. Deze Azure DevOps-service combineert continue integratie (CI) en continue levering (CD). Azure Pipelines gebruikt deze procedures om voortdurend en consistent code te testen en te bouwen en naar elk doel te verzenden. Pijplijnen definiëren en voeren deze implementatiebenadering uit voor OHDSI in Azure.
- Met Virtuele-machineschaalsets van Azure kunt u een groep heterogene virtuele machines met gelijke taakverdeling (VM's) maken en beheren. Deze VM's coördineren de implementatie van de omgeving.
- Azure Blob Storage is een opslagservice die is geoptimaliseerd voor het opslaan van enorme hoeveelheden ongestructureerde gegevens. Blob Storage wordt gebruikt voor het opslaan van het Terraform-statusbestand en de onbewerkte OMOP-woordenlijstbestanden (vóór opname in het CDM).
- Azure Key Vault is een Azure-service voor het opslaan en openen van geheimen, sleutels en certificaten met verbeterde beveiliging. Key Vault biedt door HSM ondersteunde beveiliging en gecontroleerde toegang via op rollen gebaseerde toegangsbeheer die zijn geïntegreerd met Microsoft Entra-id. In deze architectuur slaat Key Vault alle geheimen op, waaronder API-sleutels, wachtwoorden, cryptografische sleutels en certificaten.
- Azure SQL Database is een volledig beheerde PaaS-database-engine (Platform as a Service). SQL Database verwerkt databasebeheerfuncties zoals upgraden, patchen, back-ups en bewaking. Deze service bevat het OMOP CDM en alle bijbehorende relationele gegevens.
- Azure Web Application Firewall helpt toepassingen te beschermen tegen veelvoorkomende webaanvallen, zoals OWASP-beveiligingsproblemen , SQL-injectie en scripts op meerdere sites. Deze technologie is cloudeigen. Hiervoor is geen licentie vereist en is betalen per gebruik.
- Met Azure Container Registry kunt u containerinstallatiekopieën en artefacten bouwen, opslaan en beheren in een privéregister voor alle typen containerimplementaties. In deze oplossing worden OHDSI-toepassingsinstallatiekopieën (BroadSea WebTools en BroadSea Methods) opgeslagen voor implementatie in Azure-app Service.
- Azure App Service is een op HTTP gebaseerde service voor het hosten van webtoepassingen, REST API's en mobiele back-ends. Deze service ondersteunt de OHDSI WebAPI- en Atlas-toepassingen.
Alternatieven
Als u meer schaalbaarheid of beheer nodig hebt, kunt u de volgende alternatieven overwegen:
- Azure Kubernetes Service (AKS) of Azure Container Apps in plaats van App Service.
- Azure Synapse in plaats van SQL Database.
Scenariodetails
De mogelijkheid om klinische patiëntgegevens te federeren, te harmoniseren, visualiseren, segmenteren en analyseren, is snel een populaire use case in de gezondheidszorg geworden. Veel organisaties, waaronder academische instellingen, overheidsinstanties en organisaties in de particuliere sector, zijn op zoek naar manieren om hun gezondheidsgegevens van patiënten te gebruiken om onderzoek en ontwikkeling te versnellen. Helaas hebben de meeste IT-teams moeite om effectief samen te werken met onderzoekers om een werkomgeving te bieden waar onderzoekers productief en krachtig kunnen voelen.
OHDSI is een initiatief dat duizenden medewerkers in meer dan 70 landen/regio's omvat. Het biedt een van de weinige beschikbare oplossingen in een opensource-indeling voor onderzoekers. OHDSI heeft de OMOP CDM-standaard en bijbehorende OHDSI-softwarehulpprogramma's gemaakt en onderhouden om klinische gezondheidsgegevens te visualiseren en te analyseren.
Potentiële gebruikscases
Verschillende soorten gezondheidszorgorganisaties kunnen profiteren van deze oplossing, waaronder:
- Academische instellingen die wetenschappelijke onderzoekers in staat stellen om observationele cohortstudies aan te pakken met behulp van klinische gegevens.
- Overheidsinstanties die grote hoeveelheden verschillende gegevensbronnen willen federeren om wetenschappelijke ontdekking te versnellen.
- Bedrijven in de particuliere sector die de identificatie van potentiële patiënten voor klinische proeven willen stroomlijnen.
Overwegingen
Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die u kunt gebruiken om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie.
Betrouwbaarheid
Betrouwbaarheid zorgt ervoor dat uw toepassing kan voldoen aan de toezeggingen die u aan uw klanten hebt gedaan. Zie Overzicht van de betrouwbaarheidspijler voor meer informatie.
SQL Database bevat zoneredundante databases, failovergroepen, geo-replicatie en automatische back-ups. Met deze functies kan uw toepassing blijven werken als er een onderhouds gebeurtenis of storing is. Zie de beschikbaarheidsmogelijkheden van Azure SQL Database voor meer informatie.
U kunt overwegen om Application Insights te gebruiken om de status van uw toepassing te bewaken. Met Application Insights kunt u waarschuwingen genereren en reageren op prestatieproblemen die van invloed zijn op de klantervaring. Zie Wat is Application Insights? voor meer informatie.
Zie Betrouwbare Azure-toepassingen ontwerpen voor meer informatie over betrouwbaarheid.
Beveiliging
Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie Overzicht van de beveiligingspijler voor meer informatie.
In dit scenario worden beheerde identiteiten gebruikt voor Azure-resources, die een identiteit bieden voor een toepassing die moet worden gebruikt wanneer deze verbinding maakt met resources die ondersteuning bieden voor Microsoft Entra-verificatie. Beheerde identiteiten elimineren de noodzaak om geheimen en referenties voor elke Azure-resource te beheren.
SQL Database maakt gebruik van een gelaagde benadering om klantgegevens te beveiligen. Het omvat netwerkbeveiliging, toegangsbeheer, bedreigingsbeveiliging en informatiebeveiliging. Zie Azure SQL Database-beveiliging en -naleving voor meer informatie over SQL Database-beveiliging.
Als netwerken met hoge beveiliging een essentiële vereiste zijn, kunt u Overwegen Om Azure Private Link te gebruiken om App Service te verbinden met Azure SQL. Als u dit doet, wordt openbare internettoegang tot de SQL-database verwijderd. Dit is een veelgebruikte aanvalsvector. U kunt ook privé-eindpunten voor Azure Storage gebruiken om toegang te krijgen tot gegevens via een privékoppeling van Azure met een verhoogde beveiliging. Deze implementaties zijn momenteel niet opgenomen in de oplossing, maar u kunt ze desgewenst toevoegen.
Raadpleeg de Documentatie voor Azure Security voor algemene richtlijnen voor het ontwerpen van beveiligde oplossingen.
Kostenoptimalisatie
Kostenoptimalisatie gaat over het verminderen van onnodige uitgaven en het verbeteren van operationele efficiëntie. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.
Gebruik de Azure-prijscalculator om meer inzicht te krijgen in de kosten van het uitvoeren van dit scenario in Azure. Deze schatting maakt gebruik van de standaardconfiguratie van alle Azure-resources die zijn geïmplementeerd via infrastructuur als code. Deze kostenramingen kunnen veranderen op basis van de grootte van uw gegevens en vanwege andere resources in uw organisatie die mogelijk worden gedeeld, zoals Microsoft Entra-id of Azure DevOps.
Prestatie-efficiëntie
Prestatie-efficiëntie is de mogelijkheid om op efficiënte wijze uw werkbelasting te schalen om te voldoen aan de vereisten die gebruikers eraan stellen. Zie overzicht van de pijler Prestatie-efficiëntie voor meer informatie.
In dit scenario wordt Gebruikgemaakt van App Service, dat u desgewenst kunt gebruiken om het aantal exemplaren dat ondersteuning biedt voor de Atlas-gebruikersinterface automatisch te schalen. Met deze functionaliteit kunt u de vraag van eindgebruikers bijhouden. Zie aanbevolen procedures voor automatisch schalen voor meer informatie over automatisch schalen.
Zie de controlelijst prestatie-efficiëntie voor meer informatie.
Dit scenario implementeren
Zie deze bronnen voor meer informatie over het implementeren van een OHDSI-hulpprogrammapakket en voor aanvullende gedetailleerde documentatie:
Medewerkers
Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.
Belangrijkste auteurs:
- Andy Gee | Senior Software Engineer
- Kaipo Lucas | Senior Program Manager
- Yvonne Radsmikham | Senior Software Engineer
- Cory Stevenson | Senior Specialist
Andere Inzenders:
- Mick Alberts | Technische schrijver
- Heather Camm | Senior Program Manager
- Gayatri Jaiswal | Program Manager
Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.
Volgende stappen
- Microsoft Entra-documentatie
- Wat is Azure Pipelines?
- Wat is Azure DevOps?
- Wat is Azure SQL Database?
- OhDSI-startpagina
- OhDSI Atlas-demoomgeving
- OHDSI GitHub
- OHDSI YouTube-kanaal