PART 1 : Continuously Loading Synthea Patients Data to Azure FHIR API

October 8, 2021 · Healthcare

What is FHIR ?

Fast Healthcare Interoperability Resources (FHIR, pronounced “fire”) is a standard describing data formats and elements (known as “resources”) and an application programming interface (API) for exchanging electronic health records (EHR). The standard was created by the Health Level Seven International (HL7) health-care standards organization.

FHIR is organized by resources (e.g., patient, observation).Such resources can be specified further by defining FHIR profiles (for example, binding to a specific terminology). A collection of profiles can be published as an implementation guide (IG), such as The U.S. Core Data for Interoperability

Because FHIR is implemented on top of the HTTPS (HTTP Secure) protocol, FHIR resources can be retrieved and parsed by analytics platforms for real-time data gathering. In this concept, healthcare organizations would be able to gather real-time data from specified resource models. FHIR resources can be streamed to a data store where they can be correlated with other informatics data. Potential use cases include epidemic tracking, prescription drug fraud, adverse drug interaction warnings, and the reduction of emergency room wait times.

Architecture

Part 1

Here we will try ti use Github Actions to automate the ingestion from Synthea using Azure DevOps

Part 2: in a future blog post we will look more into the data and do some ML on data

Synthea

github project : https://github.com/synthetichealth/synthea

Synthea is a Synthetic Patient Population Simulator. The goal is to output synthetic, realistic (but not real), patient data and associated health records in a variety of formats.

Currently, Synthea features include:

Azure FHIR API

Azure Healthcare APIs provides pipelines that help you manage protected health information (PHI) data at scale. Rapidly exchange data and run new applications with APIs for health data standards including Fast Healthcare Interoperability Resources (FHIR) and Digital Imaging Communications in Medicine (DICOM). Ingest, standardize, and transform data with easy-to-deploy tools and connectors for device and unstructured data. Expand discovery of insights by connecting to tools for visualizations, machine learning (ML), and AI.

Setup Azure FHIR API :

In azure portal : search for

FhirLoader :

I used a FHIR loader developed by Michael Hansen

it’s a dotnet application that can be run using client ID and secret ID :

dotnet run -- --client-secret "XXXX" --client-id "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" --input-folder ..\synthea\output\fhir\ --authority "https://login.microsoftonline.com/{tenant-id}" --fhir-server-url "https://{myfhirserver}.azurehealthcareapis.com" --max-degree-of-parallelism 14

Github Actions :

In order to automate the process of ingestion of patients data to Azure FHIR API, we will use a GitHub action file :

for all the credentials used for authentication I used Github Secrets :

After running the job :

Synthea created this patient data :

To check on the Azure FHIR API side , I use postman

In Next blog we will see how load data to Azure databricks and work on training and deploying models.

Originally published on mohamedbenachour.net on October 8, 2021. View the original post.