Use Azure Health Data Services - Data export in healthcare data solutions
Note
This content is currently being updated.
Azure Health Data Services - Data export helps you bring your Fast Healthcare Interoperability Resources (FHIR) data to Fabric OneLake from the Azure Health Data Services FHIR service. To learn more about the capability and understand how to deploy and configure it, see:
- Overview of Azure Health Data Services - Data export
- Deploy and configure Azure Health Data Services - Data export
Run the Azure Health Data Services - Data export pipeline
After completing the prerequisites and deployment steps, you can begin ingesting FHIR data from your Azure Health Data Services FHIR service and transform it through the bronze and silver lakehouse layers. This section provides guidance on using the Bring Your Own Storage (BYOS) ingestion pattern to ingest FHIR data.
Note
Azure Health Data Services FHIR service supports FHIR R4 v4.0.1. For more information on the supported FHIR formats, see Usage considerations for ingesting clinical data.
To ingest data, run the healthcare#_msft_clinical_ahds_fhirservice_export data pipeline. The healthcare#_msft_ahds_fhirservice_export notebook first exports data from the Azure Health Data Services FHIR service to the specified Azure Data Lake Storage Gen2 container. The subsequent notebooks, healthcare#_msft_fhir_ndjson_bronze_ingestion and healthcare#_msft_bronze_silver_flatten, further process the data as outlined in Ingest clinical data using healthcare data foundations.
The healthcare#_msft_ahds_fhirservice_export notebook performs the following actions:
- Retrieves the function key from the Azure Key Vault associated with the Azure Marketplace offer.
- Uses this function key to trigger the Azure Function deployed with the Azure Marketplace offer.
- Requests a bulk export from the Azure Health Data Services FHIR service using the FHIR service URL from the global configuration.
- Polls the FHIR service to confirm bulk export completion, retrying until either a success status or the maximum polling days threshold is reached.
After the bulk export completes, the pipeline sequentially runs the healthcare#_msft_fhir_ndjson_bronze_ingestion and healthcare#_msft_bronze_silver_flatten notebooks to transform and load the data.
Security recommendations
After deploying the Azure Marketplace offer for healthcare data solutions in Microsoft Fabric, consider the following security recommendations:
Follow best practices for rotating Azure Functions access keys.
Use managed identities for OneLake private endpoints instead of shared access signature (SAS).
Troubleshoot Azure Health Data Services - Data export
This section outlines common issues or errors you might encounter when using the Azure Health Data Services - Data export capability and provides the resolution steps.
Resolve authorization errors with the FHIR export notebook
When you run the FHIR export notebook healthcare#_msft_ahds_fhirservice_export, you might see an HTTP 401: Unauthorized error if you didn't assign the required permissions to the Azure function app or to the FHIR server.
Make sure you assign the FHIR Data Exporter role to the function app on the FHIR service and the Storage blob data contributor role to the FHIR service on the configured export storage account.
For more information, see Deploy Azure Marketplace offer and set up resources.
Resolve conflict errors with the FHIR export notebook
When you run the FHIR export notebook healthcare#_msft_ahds_fhirservice_export, you might sometimes see an HTTP 409: Conflict error.
The Azure function app is configured to run only one instance of export at any point. An HTTP 409 error means that another export operation is already running. Wait until it finishes, and then trigger another export.
Monitor function app logs with Azure Log Analytics
You can monitor the export function app service's logs in the Log Analytics workspace deployed to your Azure resource group. Here's a sample Kusto query to view the function app traces:
AppTraces
| where AppRoleName startswith "msft-func-datamanager-export"