基因分析应用

本文介绍基因分析平台中的应用定义,如何在工作空间中创建、编辑和运行应用。

基因数据分析工作,需要用户使用不同的生物信息学工具软件,进行一系列复杂的计算过程,才能得到最终的分析结果。以遗传病的数据分析举例,需要进行数据质控、序列比对、变异检测和变异注释等多个步骤。

遗传解读△图1: 基因数据分析流程(来源/《中华医学遗传学杂志》)

我们以工作流(Pipeline or Workflow)来指代这些分析脚本。简单的来说,它可以是一段由用户编写的、会执行多个命令的shell或者python脚本,能够从头到尾完成特定的基因数据分析任务。大多数分析流程被设计成在本地运行,这使得它们的软件依赖和流程逻辑通常都与特定的执行环境(如HPC集群)绑定,而无法迁移、无法重复分析结果。

流程描述语言,如Snakemake、CWL、WDL、Nexfflow等的出现,就是为了解决这些问题。他们是一类领域特定语言(Domain-specific Langue, DSL),有着自己的语法和规则,帮助用户简单高效的编写标准化、可迁移、可重复的生物信息工具流程。

阿里云基因分析平台采用GA4GH社区支持的流程描述语言(Workflow Description Langue,WDL)作为平台应用的定义标准,为应用的开发、测试和运行提供生产级别的产品支持。

应用

借助统一的流程语言标准,用户可以导入研究社区里公开的WDL流程,也能够使用平台开发者提供的公共应用,极大了降低生信分析的门槛,简单高效的完成基因数据分析任务。