Skip to content
This repository was archived by the owner on Jul 9, 2019. It is now read-only.
Brian L. Cremeans edited this page Jul 28, 2015 · 33 revisions

High Level System Architecture

The figure below outlines the information flow of a variant DB query.

Variant Flow

##1 User query about variant

  • A user has a question to ask about variants. They generate the query and ask through Galaxy, or an Online query system.

##2 Send GA4GH query

  • Whether generated by the user, or by their tool, a GA4GH query is sent to our GA4GH provider (Flask / Python interface)

##3 Variant Query

  • QueryThe GA4GH decides what resources (Meta, TileDB, other) to query and consolidate the information for a response

##4 Query Handling

###4a Lookup Array information from Metadata system (SQL?) to be used in TileDB query

  • The GA4GH backend does a search against the metadata store (MariaDB) to lookup non-tileDB held information and translate the query to array format

-###4b Query TileDB for variant Information

  • The translated query is sent to the TileDB backend, and the data collected, filtered, and constructed into a GA4GH response for return to the user / tool

###4c Meta data lookup

  • lookupBased on the query and the results of the TileDB query, we may need to query the metadata again, for example, to retrieve callSet information

##5 Apply external annotation information

  • The online app, galaxy tool, or user calls the Annotation system on the resultant data to obtain the annotated result (if required)

Getting Started

  • [Prepare the Variant DB](Loading\ Variant\ DB)
  • [Setup and Initialize GA4GH](Setup\ and\ Initialization)
  • [Query Variant DB](Querying\ Variant\ DB)
Clone this wiki locally