Name
GraphQL back end Beacon API
Description

The ever-increasing ease of genomic information acquisition is fostering a new era for data driven clinical practice and health care: Precision Medicine (PM). A cornerstone of PM relies upon access to comprehensive reference alleles catalogs for which the Beacon API has been an instrumental element by allowing individual privacy protected data sharing. In the Elixir reference implementation of the Beacon API, aggregated variant counts and frequencies and stored in a dedicated relational database. Across major population-scale PM projects, alternative database technologies such as SparkDB have been favored over RDMS to stored and efficiently processed the massive volumes of individuals’ genomic information generated. Akin the Spark/Hail/ElasticSearch/graphQL data analytics stack deployed by the Broad Institute and the Genome Aggregation Database (gnomAD) teams, no-SQL databases have also been a preferred choice to store and provide efficient access to aggregated genomic information.

We present here an alternative implementation of the Beacon API which, built upon such pre-existing data analytics stack, does not necessitate any additional aggregated genomic information ETL into a dedicated ad hoc relational database. Variant summary data are being stored in a unique Elasticsearch database serving both, via a graphQL interface, a gnomAD-inspired Node.js variant browser UI and a GA4GH Beacon RESTful API. In doing so, content updates are seamlessly propagating. In addition, the graphQL layer allows for decoupling the API front-end and the database query back-end. This common interface not only improves code reusability but also enables us to achieve a better level of separation of concern, which greatly eases code development and deployment cycles. Finally, given the flexible nature of ElasticSearch/graphQL, the beacon API back-end implementation presented here is more amenable to expand the scope of the data served by the beacon protocol beyond allele frequency and other metadata than its RDMS-backed current implementation.

VIEW POSTER