简介
wtdbg2是一款针对 PacBio 或牛津纳米孔(ONT)长噪音读长的从头组装器。它直接组装原始读长、不预先纠错,再从中间组装结果构建一致性序列。wtdbg2 可组装人类基因组,甚至 32Gb 蝾螈基因组,速度比 CANU、FALCON快数十倍,同时产出的 contig 碱基准确度相当。
组装过程中,wtdbg2 将读长切分为1024bp 片段,把相似片段合并成图的顶点,再依据片段在原读长上的邻接关系连接顶点,形成模糊布鲁因图(Fuzzy Bruijn Graph, FBG)。它类似传统 De Bruijn 图,但允许错配 / 缺失,并在合并 k‑mer 时保留读长路径;这一点是 wtdbg2 与多数长读长组装器的核心区别。
https://github.com/ruanjue/wtdbg2 #官网安装
wtdbg2仅支持 64 位 Linux。 编译:在源码目录执行make,然后把wtdbg2、wtpoa-cns加入环境变量 PATH 即可。
附带工具:
- 近似比对器kbm
- 更快但精度略低的一致性工具wtdbg‑cns
- scripts 目录包含多种辅助脚本
git clone https://github.com/ruanjue/wtdbg2 cd wtdbg2 && make使用 wtdbg2.pl 快速运行 ./wtdbg2.pl -t 16 -x rs -g 4.6m -o dbg reads.fa.gz 分步命令行(推荐) 1)长读长组装 ./wtdbg2 -x rs -g 4.6m -i reads.fa.gz -t 16 -fo dbg 2)生成一致性序列 ./wtpoa-cns -t 16 -i dbg.ctg.lay.gz -fo dbg.raw.fa 3)对一致性序列进行抛光(若打算用其他工具抛光,此步可略) minimap2 -t16 -ax map-pb -r2k dbg.raw.fa reads.fa.gz | samtools sort -@4 >dbg.bam samtools view -F0x900 dbg.bam | ./wtpoa-cns -t 16 -d dbg.raw.fa -i - -fo dbg.cns.fa 4)用短读长进一步抛光(可选) bwa index dbg.cns.fa bwa mem -t 16 dbg.cns.fa sr.1.fa sr.2.fa | samtools sort -O SAM | ./wtpoa-cns -t 16 -x sam-sr -d dbg.cns.fa -i - -fo dbg.srp.fa使用说明
wtdbg2 包含两个核心组件:
- 组装器 wtdbg2:组装原始读长,输出
prefix.ctg.lay.gz(contig 布局与边序列) - 一致性工具 wtpoa‑cns:输入上述文件,输出最终 FASTA 一致性序列
标准流程:
./wtdbg2 -x rs -g 4.6m -t 16 -i reads.fa.gz -fo prefix ./wtpoa-cns -t 16 -i prefix.ctg.lay.gz -fo prefix.ctg.fa参数说明:
-g:预估基因组大小-x:测序平台(必须最先设置)rs:PacBio RSIIsq:PacBio Sequelccs:PacBio CCS(HiFi)ont:牛津纳米孔
组装不佳时可调参数:
-k:普通 k‑mer 长度-p:均聚物压缩(HPC)k‑mer长度-S:k‑mer 采样率(默认 1/4;低覆盖可减小-S提高采样率,但内存峰值显著上升)-e:图中边的最小覆盖度(默认 3;按测序深度调整)-A:低覆盖数据优化(牺牲速度)-L5000:PacBio 数据经验最优,推荐开启
查看完整参数:wtdbg2 --help或README‑ori.md
各数据集资源消耗(组装阶段)
| 数据集 | 基因组大小 | 覆盖度 | 组装参数 | 组装 CPU 时间 | 一致性 CPU 时间 | 实际总耗时 | 内存峰值 |
|---|---|---|---|---|---|---|---|
| 大肠杆菌 | 4.6Mb | PB ×20 | -x rs -g4.6m -t16 | 53 秒 | 8 分 54 秒 | 42 秒 | 1.0G |
| 秀丽隐杆线虫 | 100Mb | PB ×80 | -x rs -g100m -t32 | 1 小时 07 分 | 5 小时 06 分 | 13 分 42 秒 | 11.6G |
| 黑腹果蝇 A4 | 144m | PB ×120 | -x rs -g144m -t32 | 2 小时 06 分 | 5 小时 11 分 | 26 分 17 秒 | 19.4G |
| 黑腹果蝇 ISO1 | 144m | ONT ×32 | -x ont -g144m -t32 | 5 小时 12 分 | 4 小时 30 分 | 25 分 59 秒 | 17.3G |
| 拟南芥 | 125Mb | PB ×75 | -x sq -g125m -t32 | 11 小时 26 分 | 4 小时 57 分 | 49 分 35 秒 | 25.7G |
| 人类 NA12878 | 3Gb | ONT ×36 | -x ont -g3g -t31 | 793 小时 11 分 | 97 小时 46 分 | 31 小时 03 分 | 221.8G |
| 人类 NA19240 | 3Gb | ONT ×35 | -x ont -g3g -t31 | 935 小时 31 分 | 89 小时 17 分 | 35 小时 20 分 | 215.0G |
| 人类 HG00733 | 3Gb | PB ×93 | -x sq -g3g -t47 | 2114 小时 26 分 | 152 小时 24 分 | 52 小时 22 分 | 338.1G |
| 人类 NA24385 | 3Gb | CCS ×28 | -x ccs -g3g -t31 | 231 小时 25 分 | 58 小时 48 分 | 10 小时 14 分 | 112.9G |
| 人类 CHM1 | 3Gb | PB ×60 | -x rs -g3g -t96 | 105 小时 33 分 | 139 小时 24 分 | 5 小时 17 分 | 225.1G |
| 蝾螈 | 32Gb | PB ×32 | -x rs -g32g -t96 | 2806 小时 40 分 | 1456 小时 13 分 | 110 小时 16 分 | 1788.1G |
- 测试环境:三台不同配置服务器,运行间存在波动,你的机器耗时会有差异
- 组装结果下载:ftp://ftp.dfci.harvard.edu/pub/hli/wtdbg/
局限性
- 纳米孔数据组装结果往往比真实基因组偏小。
- 同时输入 FASTA + FASTQ 时,必须先放 FASTQ、后放 FASTA;否则程序无法识别
>,会把所有 FASTQ 合并成一条读长。
引用
Ruan, J. and Li, H. (2019) Fast and accurate long-read assembly with wtdbg2.Nat Methodsdoi:10.1038/s41592-019-0669-3