Cromwell WDL Bioinformatics workflows at any scale Jeff Gentry Data Sciences Platform The backdrop: data generation set to explode Story begins here Quarterly output (in TBases) of the Genomics Platform Plenty of workflow solutions to go
"Cromwell & WDL Bioinformatics workflows at any" is the property of its rightful owner. Permission is granted to
download and print the materials on this website for personal, non-commercial use only, and to display it
on your personal computer provided you do not modify the materials and that you retain all copyright
notices contained in the materials. By downloading content from our website, you accept the terms of this
agreement.
Presentation Transcript
01
Cromwell & WDLBioinformatics workflows at any scale Jeff Gentry
Data Sciences Platform<br>
02
The backdrop: data generation set to explode Story begins here Quarterly output (in TBases) of the Genomics Platform<br>
03
Plenty of workflow solutions to go around Randall Munroe, XKCD
https://www.xkcd.com/927/ So of course we decided to create a new one.<br>
04
Workflow language that humans can read/write
Methods developers and biomedical scientists at large
https://software.broadinstitute.org/wdl/
Execution engine that can
Run on any platform (on-prem and on Cloud)
Scale elastically based on workflow needs
https://github.com/broadinstitute/cromwell Meet WDL + Cromwell<br>
05
Workflow Description Language https://software.broadinstitute.org/wdl/<br>
Cromwell execution engine Cromwell … HPC GA4GH Local Google Funnel Multiple backends formaximum flexibility Coming Soon: AWS, Azure, Alicloud<br>
08
One-off Simple self-contained command
Appropriate for independent analysts Server mode API endpoints
More scalable
Some devops needs
Appropriate for productionenvironments
Call-caching! (aka “ka-ching”) Two main ways to run Cromwell java -jar cromwell.jar \
run hello.wdl \
hello_inputs.json<br>
09
Our production system: Genomes On The Cloud NFS Broad on-premises systems Zamboni workflow engine GS databuckets ad-hoc GCE cluster (created on the fly) PAPI Google Cloud Persistent Cromwell server<br>
10
Our development setup: on-prem + on-cloud GS databuckets ad-hoc GCE cluster (created on the fly) PAPI Google Cloud Persistent Cromwell server REST API Direct
CLI<br>
11
Example external implementation: Google wdl_runner GS databucket ad-hoc GCE cluster (created on the fly) Creates GCE VM
Executes wdl_runner.py
Sets up Cromwell
Parses WDL workflow
Submits jobs to PAPI
Polls for completion
Copies metadata & outputs to output path
Destroys GCE VM https://cloud.google.com/genomics/v1alpha2/gatk Barebones implementation:<br>
12
Example external implementation: wdlRunR Submit workflows to Cromwell
Use R values as inputs
Monitor jobs for completion
Retrieve data back into R
Outputs
Logs
Job metadata https://github.com/seandavi/wdlRunR Direct integration with R:<br>
13
Dan Billings
Miguel Covarrubias
Thibault Jeandet
Chris Llanwarne
Ruchi Munshi
Khalid Shakir
Kate Voss The rest of the team<br>
14
Thanks! My Email:
jgentry@broadinstitute.org
User Forum:
https://gatkforums.broadinstitute.org/wdl/categories/ask-the-wdl-team
More Information:
https://software.broadinstitute.org/wdl
https://www.github.com/broadinstitute/wdl
https://www.github.com/broadinstitute/cromwell<br>