Artikel
Feasibility Studies with HL7 FHIR® and Clinical Quality Language
Suche in Medline nach
Autoren
Veröffentlicht: | 26. Februar 2021 |
---|
Gliederung
Text
Background: In medical research, feasibility studies are an important tool to discover cohorts of interest. HL7 FHIR® is an emerging international interoperability standard in the medical domain. The Clinical Quality Language (CQL) is a high-level, domain-specific query language targeted at clinical quality measures. Within the German Biobank Alliance, we employ CQL to realize feasibility studies over biosamples and data from more than 18 biobanks in Germany via a newly developed tool for federated search, the SampleLocator.
Methods: A FHIR server with an internal, fast CQL evaluation engine called Blaze was built.
Blaze was implemented in Clojure a functional, dynamically typed language and a LISP which runs on the JVM with tight integration into the existing Java ecosystem.
As database backend, RocksDB was chosen. RocksDB is an open-source, embedded, key-value store maintained by Facebook. On top of RocksDB, a document store for FHIR resources, indices for search parameters and an MVCC mechanism inspired by Datomic and Crux was built.
The CQL evaluation engine was built on top of the search indices were a compiler outputs optimized code that uses the search indices to retrieve the resources, which are further traversed to obtain the results.
The Quality Measure Implementation Guide was followed to provide interoperable access to the internal CQL engine. The FHIR resources, Library, Measure, and MeasureReport together with the operation $evaluate-measure were implemented to allow executing CQL in a quality measure use case.
Results: Blaze is the first FHIR server able to execute CQL directly. It is used in production in the German Biobank Alliance and is available open-source as part of the Samply suite cf. https://github.com/samply/blaze. Blaze is able to execute feasibility queries as required in GBA.
Using a test data generator covering all FHIR resources used in GBA, up to 1 billion resources were loaded into Blaze. The server used had 24 cores, 128 GB RAM and 500 GB spinning disks. The import used all cores for resource indexing with an average speed of about 10.000 resources per second.
CQL queries were tested with a dataset of about 1 million patients and 20 million other resources. Using the same server query evaluation took about 10 seconds on a warm instance and about 30 seconds on a cold one.
It was shown that both indexing performance and query performance scales at least up to 24 cores.
Conclusion: First discussions with the German National Medical Informatics Initiative (MII), that has already adopted FHIR, has shown that CQL is suitable, not only for feasibility studies but also to specify data exports, in many use cases. Furthermore, major commercial FHIR server vendors have shown interest in implementing CQL in their products. In the future, CQL could be one cornerstone to leverage large sets of FHIR data.
The authors declare that they have no competing interests.
The authors declare that an ethics committee vote is not required.