Category: IBM FHIR Server
-
Recipe: Building a custom IBM FHIR Server container with Bulk Data Parquet Support
The IBM FHIR Server has early support for Bulk Data export to the Apache Parquet format using the Apache Spark libraries. This document outlines using Parquet.
-
Recipe: Reindexing with fhir-bucket and the IBM FHIR Server
The IBM FHIR Server enables user defined and implementation guide defined SearchParameter definitions and is constantly improving Specification conformance. Given these dynamic changes, the IBM FHIR Server Search parameter values may require refresh to optimize the Search and Retrieval of the data in the operational data store.
-
Recipe: Running the IBM FHIR Server behind a Reverse Proxy
A common deployment pattern for the IBM FHIR Server is to run the Application Server behind a reverse proxy (e.g. OpenShift Route, Kubernetes Ingress, NGINX or API Gateway). By default, the IBM FHIR Server runs under the https://localhost:9443/fhir-server/api/v4 context root and URI. With a modest configuration change, one can change to a context root (baseUrl)…
-
Postgres and Vacuum with the IBM FHIR Server: Debugging Details
The IBM FHIR Server stores resources in the PostgreSQL database and uses a relational model to store historical FHIR Resource and enable search on the latest FHIR resources. The resource data is spread in a relational model that is occasionally tweaked in order to improve search or optimize the retrieval using the relational model. This…
-
Recipe: Testing Restricted Policies with OpenShift and the IBM FHIR Server Schema Tool
Docker: ibmcom/ibm-fhir-schematool supports onboarding and offboarding of a schema in support of the IBM FHIR Server. I am working on a project that runs on OpenShift using CodeReadyContainers, and I needed to test the image with a restricted policy.
-
Recipe: IBM FHIR Server – Adding a Custom Extended Operation to the IBM FHIR Server
The IBM FHIR Server has support for extended operations beyond the standard C-R-U-D. The Extended Operations are supported at the System, Resource, and Instance levels. Operations are packaged as JAR files, and the IBM FHIR Server loads the specific Operation using the Java ServiceLoader framework at startup. This document outlines how to add a custom…
-
Recipe: IBM FHIR Server – Add Tenant Key, Revoke Tenant Key and Revoke All Tenant Keys
The IBM FHIR Server supports many different persistence stores – Apache Derby, Postgres, and IBM Db2. The IBM Db2 offering includes a multi-tenancy feature with row-level permissions. Each tenant is assigned a unique internal id for the tenantName and tenantKey. The tenantKey on each JDBC connection is verified using a one-way hash, and supports `allocating`…
-
Recipe: IBM FHIR Server – Using Hard Delete with the $erase Operation
The IBM FHIR Server supports hard delete using the custom FHIR Operation Framework. The operation is called $erase; you can always read the design document.
-
Recipe: IBM FHIR Server – Using Bulk Data with the Azure Blob Service
The IBM FHIR Server has support for exporting and importing Bulk Data using extended operations for Bulk Data $import, $export and $bulkdata-status, which are implemented as Java Maven projects. The IBM FHIR Server uses JSR252 JavaBatch jobs running in the Open Liberty Java Batch Framework. The IBM FHIR Server supports storage providers S3 (aws-s3,ibm-cos), File…
-
IBM FHIR Server – Debug Drop Tablespace
I’ve been debugging a drop tablespace issue on Db2 – IBM/FHIR: 2354. The core issue was a timing problem with lots of partitions dettaching. This adds a delay to the dropTablespace so the async operation can complete, and cleanly exit with a specific error code so downstream consumers can work around the issue.