Smile CDR Inc. empowers health organizations to build interconnected health solutions. Their core product is a comprehensive clinical data repository, which is the commercially supported version of the open-sourced HAPI FHIR.
To support current and upcoming needs, Smile CDR Inc. sought a strategic partner with expertise in their product and the health industry to support deployments of their solution in different environments, clouds and customization settings.
For the initial project, Smile CDR Inc. approached 3XM Group to help customize their solution for the Pan American Health Organization (PAHO). The objective of the PAHO was to collect ESAVI (Adverse Events Supposedly Attributable to Vaccination and Immunization) information for countries using FHIR APIs and then export this information to their proprietary database. The information was sent using the “Questionnaire Response” FHIR resource.
As part of their requirements, Smile CDR Inc. needed a solution that enforced isolation of the information (the users of one country couldn’t access the information of another country), scalability, availability and reliability while also leveraging the Azure Cloud where PAHO already had their solution deployed.
As an initial step, 3XM Group assembled a multidisciplinary team and proposed the following architecture to allow reliability and scalability of the solution:
This solution was deployed in the Azure cloud environment using Infrastructure as Code (Terraform). It works as follows: it retrieves the docker image from the Smile Docker Hub repository and deploys it in the Azure cloud, performing the required configuration to make it work. Once configured, the Smile CDR application starts exposing the FHIR APIs’ endpoints. When a call is made to the APIs, the information is stored in the Smile CDR’s internal PostgreSQL database.
To fulfill PAHO’s requirement for exporting data to the PAHO proprietary database, the “Real Time Export“ (RTE) feature was set and configured to map the values (using FHIR Path) of received “Questionnaire Responses” against the Ms SQL Database fields.
To isolate the information between countries, a multiple tenant solution was created:
→ Storage layer with:
- Multiple Logical Partitions for the FHIR Database
- 1 Partition per country
→ Multiple SmileCDR Users: One/multiple user per tenant
→ GET/PUT/POST restriction per tenant
Through our partnership, Smile CDR quickly assembled a multidisciplinary team to refine requirements, design an architecture, implement and deploy a solution without having to dedicate internal resources to this project.
Once the solution was deployed, PAHO was able to collect ESAVI information of the countries belonging to the organization. The members could easily utilize the standard FHIR APIs to send and update information in real time, making it simple for PAHO to collect, group and analyze the received information. At the same time, given the multi-tenant solution, the information remained isolated, protecting the privacy and security of the stored “Questionnaire Responses.”
Our solution makes use of:
→ Azure Cloud
- Azure Container Instances
- Azure Container Registries
- PostgreSQL 9.4
- MSSQL 2012
→ Smile CDR
→ Docker Container
→ FHIR Path
→ HL7 FHIR v4
→ Infrastructure as Code: Terraform