跳转至

生物信息学流程的开发 https://academic.oup.com/bib/article/18/3/530/2562749 转载自https://mp.weixin.qq.com/s?__biz=MzAxMDkxODM1Ng%3D%3D&mid=2247497665&idx=2&sn=f2fe49a26dfc78064da7da753bf6e395&scene=45#wechat_redirect 流程要求: - 并行运算 - 串行运算 - 依存关系 - 变化的数据类型 - 固定和可自定义的参数设定

高级功能

可显示分析进度、图形化界面调整参数

第一个是基于通配符

比如Nextflow、Snakemake等等,

第二个是基于步骤衔接

比如Ruffus和bpipe,参考《生信菜鸟团》的:Bpipe | 教你轻松搭建分析流程 其实就是在原有的shell脚本的基础上,将每个分析步骤进行包装,然后利用Bpipe的语法进行串联,就能高效地利用计算机资源以及进行断点重新运行。比如下面的这个bpipe流程,下载即可使用它: * https://github.com/fun-science-club-ntu/PET

第三个是基于配置文件

配置文件的格式是XML、YAML、TOML等,然后用对应的格式解释器以及执行步骤就能完成流程的分析。常见的流程有Galaxy等。

第四个是基于封装/打包

差不多是自己造轮子了,而不仅仅是流程串起来各种各样的工具,比如GATK等等,一个软件就包含了全部流程的各个步骤。

其实更多的流程框架是简单的shell脚本

shell、python、perl脚本对于断点运行、依赖项修改不够友好。许多时候,会出现程序异常中止需要重新运行,或者是运行后,又有新的输入文件需要一起分析。 image.png 星星越多,代表越容易开发、使用、并行效率高

目前使用比较多的流程编写工具

snakemake(基于python),bpipe,Ruffus,Nextflow(http://nextflow.io) bpipe的使用流程: 下载bpipe

 wget https://github.com/ssadedin/bpipe/releases/download/0.9.9.9/bpipe-0.9.9.9.tar.gz
tar -zxvf bpipe-0.9.9.9.tar.gz
cd bpipe-0.9.9.9//bin
./pipe -h
注意:新版本的可能不兼容旧版本的命令。版本之间兼容性可能有些问题。

bpipe命令参考https://mp.weixin.qq.com/s?__biz=MzUzMTEwODk0Ng==&mid=2247487816&idx=1&sn=c87971a6a506c24ac80bc0d988287d55&scene=21#wechat_redirect

回到页面顶部