5 releases (3 breaking)
|new 0.5.1||Mar 14, 2023|
|0.5.0||Mar 6, 2023|
|0.4.0||Feb 9, 2023|
|0.3.0||Feb 3, 2023|
|0.2.1||Jan 31, 2023|
#528 in Database interfaces
51 downloads per month
VarFish Server Worker
This repository contains the worker used by VarFish Server to execute certain background task. They are written in the Rust programming language to speed up the execution of certain tasks. At the moment, the following sub commands exist:
db compile-- compile files from
varfish-db-downloaderto be useable by the query sub commands
db mk-inhouse-- compile per-case structural variant into an in-house database previously created by
sv query-- perform SV (overlap) annoation and filtration
For running queries, the worker tool is installed into the VarFish Server image and are run as executables. The VarFish Server Celery task writes out file(s) with the input for the worker. The worker then reads in this file, may use some static database files but also the VarFish server postgres database, and can write out out a result file or store the results in the postgres database. The celery worker will then process any worker output further. The book keeping is done by the Celery worker that runs from the code of VarFish server.
Future versions may provide persistently running HTTP/REST servers that provide functionality without startup cost.
db compile Command
Convert output of
varfish-db-downloader to a directory with databases to be used by query commands such as
$ varfish-server-worker db compile \ --path-db-downloader SRC/varfish-db-downloader \ --path-worker-db DST/varfish-server-worker-db
db mk-inhouse Command
Import multiple files created by
varfish-annotator annotate_svs into a database previously created by
You can specify the files individually.
Paths starting with an at (
@) character are interpreted as files with lists of paths.
You can mix paths with
@ and without.
$ varfish-server-worker db mk-inhouse \ --path-worker-db WORK/varfish-server-worker-db \ IN/file1.gts.tsv.gz [IN/file1.gts.tsv.gz] \ # OR: $ varfish-server-worker db mk-inhouse \ --path-worker-db WORK/varfish-server-worker-db \ @IN/path-list.txt [@IN/path-list2.txt]
sv query Command
This is for actually running the queries.
$ varfish-server-worker sv query \ --path-db PATH_DB \ --path-query-json QUERY.json \ --path-input-svs VARFISH_ANNOTATED.gts.tsv.gz
server rest Command
This runs the REST API.
$ varfish-server-worker server rest \ --path-db PATH_DB
You will need a recent version of flatbuffers, e.g.:
# bash utils/install-flatbuffers.sh # export PATH=$PATH:$HOME/.local/share/flatbuffers/bin