当前位置:   article > 正文

diamond安装与使用-diamond-2.1.8(bioinfomatics tools-010)_diamond makedb

diamond makedb
01 背景

DIAMOND 是一款用于蛋白质翻译后DNA搜索的序列比对工具,专为大规模序列数据的高性能分析设计。其主要特点包括:

- 与BLAST相比,蛋白质和翻译后DNA的成对比对速度快100倍至10000倍。
- 能够聚类多达数十亿个蛋白质。
- 适用于长读取分析的帧移比对。
- 资源需求低,适合在标准桌面或笔记本电脑上运行。
- 多种输出格式,包括BLAST成对比对、表格和XML,以及分类学分类。

blast一万倍!blast详见Blast安装及使用-Blast+2.14.0(bioinfomatics tools-001)

02 参考
  1. https://github.com/bbuchfink/diamond #参考github
  2. http://www.diamondsearch.org #软件开发官网
03 安装
  1. wget -c https://github.com/bbuchfink/diamond/releases/download/v2.1.8/diamond-linux64.tar.gz #下载
  2. tar -zxvf diamond-linux64.tar.gz #解压
  3. ##method2
  4. # 下载工具
  5. wget http://github.com/bbuchfink/diamond/releases/download/v2.1.9/diamond-linux64.tar.gz
  6. tar xzf diamond-linux64.tar.gz
04 使用

很像blast,具体没啥太大区别。主要还是比对蛋白序列

  1. ./diamond help
  2. diamond v2.1.8.162 (C) 马克斯·普朗克科学促进会,本杰明·布赫芬克,蒂宾根大学
  3. 文档、支持和更新可在 http://www.diamondsearch.org 获得
  4. 请引用:http://dx.doi.org/10.1038/s41592-021-01101-x Nature Methods (2021)
  5. 语法:diamond 命令 [选项]
  6. 命令:
  7. makedb 从FASTA文件构建DIAMOND数据库
  8. prepdb 为Diamond使用准备BLAST数据库
  9. blastp 将氨基酸查询序列与蛋白质参考数据库对齐
  10. blastx 将DNA查询序列与蛋白质参考数据库对齐
  11. cluster 聚类蛋白序列
  12. linclust 线性时间内聚类蛋白序列
  13. realign 重新对齐聚类序列与它们的中心点
  14. recluster 重新计算聚类以修复错误
  15. reassign 重新分配聚类序列到最近的中心点
  16. view 查看DIAMOND对齐档案(DAA)格式的文件
  17. merge-daa 合并DAA文件
  18. help 生成帮助信息
  19. version 显示版本信息
  20. getseq 从DIAMOND数据库文件检索序列
  21. dbinfo 打印关于DIAMOND数据库文件的信息
  22. test 运行回归测试
  23. makeidx 制作数据库索引
  24. greedy-vertex-cover 计算贪心顶点覆盖
  25. 可以用语法看到命令的可能 [选项]:diamond 命令
  26. 在线文档可在 http://www.diamondsearch.org 查看
4.1 diamond makedb
  1. /diamond makedb
  2. diamond v2.1.8.162 (C) 马克斯·普朗克科学促进会,本杰明·布赫芬克,蒂宾根大学
  3. 文档、支持和更新可在 http://www.diamondsearch.org 获得
  4. 请引用:http://dx.doi.org/10.1038/s41592-021-01101-x Nature Methods (2021)
  5. 选项:
  6. --threads CPU线程数
  7. --verbose 详细控制台输出
  8. --log 启用调试日志
  9. --quiet 禁用控制台输出
  10. --tmpdir 临时文件目录
  11. --db 数据库文件
  12. --in 输入参考文件,FASTA格式/合并-daa的输入DAA文件
  13. --taxonmap 蛋白质访问号到taxid的映射文件
  14. --taxonnodes 来自NCBI的分类学nodes.dmp
  15. --taxonnames 来自NCBI的分类学names.dmp
  16. --file-buffer-size 文件缓冲区大小,以字节为单位(默认=67108864)
  17. --no-unlink 不删除临时文件。
  18. --ignore-warnings 忽略警告
  19. --no-parse-seqids 打印原始seqids,不进行解析
4.2 diamond blastp
  1. ./diamond blastp
  2. diamond v2.1.8.162 (C) 马克斯·普朗克科学促进会,本杰明·布赫芬克,蒂宾根大学
  3. 文档、支持和更新可在 http://www.diamondsearch.org 获得
  4. 请引用:http://dx.doi.org/10.1038/s41592-021-01101-x Nature Methods (2021)
  5. 选项:
  6. --threads CPU线程数
  7. --verbose 详细控制台输出
  8. --log 启用调试日志
  9. --quiet 禁用控制台输出
  10. --tmpdir 临时文件目录
  11. --db 数据库文件
  12. --out 输出文件
  13. --header 在表格输出格式中使用标题行(0/简单/详细)。
  14. --comp-based-stats 基于组成的统计模式(0-4)
  15. --masking 掩码算法(无,seg,tantan=默认)
  16. --soft-masking 软掩码(无=默认,seg,tantan)
  17. --evalue 报告比对的最大e值(默认=0.001)
  18. --motif-masking 软掩蔽丰富的基序(0/1)
  19. --approx-id 报告比对/聚类序列的最小近似身份%
  20. --ext 扩展模式(banded-fast/banded-slow/full)
  21. --max-target-seqs 报告比对的最大目标序列数(默认=25)
  22. --top 报告与顶级比对分数范围内的此百分比的比对(覆盖--max-target-seqs)
  23. --faster 启用更快模式
  24. --fast 启用快速模式
  25. --mid-sensitive 启用中等灵敏度模式
  26. --sensitive 启用灵敏度模式
  27. --more-sensitive 启用更灵敏度模式
  28. --very-sensitive 启用非常灵敏度模式
  29. --ultra-sensitive 启用超级灵敏度模式
  30. --shapes 种子形状数(默认=所有可用)
  31. --query 输入查询文件
  32. --strand 搜索的查询链(双向/负向/正向)
  33. --un 未比对查询的文件
  34. --al 比对查询的文件或文件
  35. --unfmt 未比对查询文件的格式(fasta/fastq)
  36. --alfmt 比对查询文件的格式(fasta/fastq)
  37. --unal 报告未比对查询(0=否,1=是)
  38. --max-hsps 每个查询报告的每个目标序列的最大HSP数(默认=1)
  39. --range-culling 将命中剔除限制在重叠的查询范围内
  40. --compress 输出文件的压缩(0=无,1=gzip,zstd)
  41. --min-score 报告比对的最小比特分数(覆盖e值设置)
  42. --id 报告比对的最小身份%
  43. --query-cover 报告比对的最小查询覆盖%
  44. --subject-cover 报告比对的最小主题覆盖%
  45. --swipe 对所有数据库序列进行详尽的比对
  46. --iterate 以增加的灵敏度进行迭代搜索
  47. --global-ranking 全球排名的目标数
  48. --block-size 以十亿字母为单位的序列块大小(默认=2.0)
  49. --index-chunks 索引处理的块数(默认=4)
  50. --parallel-tmpdir 多处理用的临时文件目录
  51. --gapopen 缺口开启罚分
  52. --gapextend 缺口扩展罚分
  53. --matrix 蛋白质比对的得分矩阵(默认=BLOSUM62)
  54. --custom-matrix 包含自定义评分矩阵的文件
  55. --frameshift 帧移罚分(默认=禁用)
  56. --long-reads 简化 --
  57. range-culling --top 10 -F 15
  58. --query-gencode 用于翻译查询的遗传密码(参见用户手册)
  59. --salltitles 在DAA文件中包含完整的主题标题
  60. --sallseqid 在DAA文件中包含所有主题id
  61. --no-self-hits 抑制报告相同的自身命中
  62. --taxonlist 将搜索限制在税种id列表(逗号分隔)
  63. --taxon-exclude 排除税种id列表(逗号分隔)
  64. --seqidlist 通过访问号列表过滤数据库
  65. --skip-missing-seqids 忽略数据库中缺失的访问号
  66. --outfmt 输出格式
  67. 0 = BLAST成对
  68. 5 = BLAST XML
  69. 6 = BLAST表格
  70. 100 = DIAMOND比对档案(DAA)
  71. 101 = SAM
  72. 102 = 分类学分类
  73. 103 = PAF
  74. 104 = JSON(扁平)
  75. 6和104的值可能后接一个由这些关键词组成的空格分隔列表:
  76. qseqid 表示查询序列 - id
  77. qlen 表示查询序列长度
  78. sseqid 表示主题序列 - id
  79. sallseqid 表示所有主题序列 - id,用';'分隔
  80. slen 表示主题序列长度
  81. qstart 表示查询中的比对开始
  82. qend 表示查询中的比对结束
  83. sstart 表示主题中的比对开始
  84. send 表示主题中的比对结束
  85. qseq 表示比对的查询序列部分
  86. qseq_translated 表示比对的查询序列部分(翻译后)
  87. full_qseq 表示查询序列
  88. full_qseq_mate 表示伴侣的查询序列
  89. sseq 表示比对的主题序列部分
  90. full_sseq 表示主题序列
  91. evalue 表示期望值
  92. bitscore 表示比特分数
  93. corrected_bitscore 表示边缘效应校正的比特分数
  94. score 表示原始得分
  95. length 表示比对长度
  96. pident 表示相同匹配的百分比
  97. approx_pident 表示大约的相同匹配百分比
  98. nident 表示相同匹配的数量
  99. mismatch 表示不匹配的数量
  100. positive 表示积极评分匹配的数量
  101. gapopen 表示缺口开启的数量
  102. gaps 表示总缺口数量
  103. ppos 表示积极评分匹配的百分比
  104. qframe 表示查询框架
  105. btop 表示Blast回溯操作(BTOP)
  106. cigar 表示CIGAR字符串
  107. staxids 表示唯一的主题分类学ID,用';'分隔(按数字顺序)
  108. sscinames 表示唯一的主题科学名称,用';'分隔
  109. sskingdoms 表示唯一的主题超级王国,用';'分隔
  110. skingdoms 表示唯一的主题王国,用';'分隔
  111. sphylums 表示唯一的主题门类,用';'分隔
  112. stitle 表示主题标题
  113. salltitles 表示所有主题标题,用'<>'分隔
  114. qcovhsp 表示查询每HSP的覆盖率
  115. scovhsp 表示主题每HSP的覆盖率
  116. qtitle 表示查询标题
  117. qqual 表示比对部分的查询质量值
  118. full_qqual 表示查询质量值
  119. qstrand 表示查询链
  120. 默认:qseqid sseqid pident length mismatch gapopen qstart qend sstart send evalue bitscore
  121. --file-buffer-size 文件缓冲区大小,以字节为单位(默认=67108864)
  122. --no-unlink 不删除临时文件。
  123. --ignore-warnings 忽略警告
  124. --no
  125. -parse-seqids 打印原始seqids,不进行解析
  126. --bin 用于种子搜索的查询分区数
  127. --ext-chunk-size 自适应排名的块大小(默认=自动)
  128. --no-ranking 禁用排名启发式
  129. --dbsize 有效数据库大小(以字母为单位)
  130. --no-auto-append 禁用自动添加DAA和DMND文件扩展名
  131. --tantan-minMaskProb 用于掩蔽的最小重复概率(默认=0.9)
  132. --algo 种子搜索算法(0=双索引/1=查询索引/ctg=连续种子)
  133. --min-orf 忽略没有至少这个长度开放阅读框的翻译序列
  134. --seed-cut 种子复杂度的截断
  135. --freq-masking 基于频率掩蔽种子
  136. --freq-sd 忽略频繁种子的标准偏差数
  137. --id2 第一阶段命中的最小身份数
  138. --linsearch 仅考虑与相同种子的最长目标的种子命中
  139. --lin-stage1 仅考虑与相同种子的最长查询的种子命中
  140. --xdrop 无缝隙比对的xdrop
  141. --gapped-filter-evalue 缝隙过滤的E值阈值(自动)
  142. --band 动态规划计算的带宽
  143. --shape-mask 种子形状
  144. --multiprocessing 启用分布式内存并行处理
  145. --mp-init 初始化多处理运行
  146. --mp-recover 启用中断多处理运行的继续
  147. --mp-query-chunk 仅处理指定的单个查询块
  148. --culling-overlap 与得分更高的命中重叠的最小范围,以删除命中(默认=50%)
  149. --taxon-k 每个物种报告的最大目标数
  150. --range-cover 范围剔除的查询范围覆盖百分比(默认=50%)
  151. --xml-blord-format 在XML输出中使用gnl|BL_ORD_ID|样式格式
  152. --sam-query-len 将查询长度添加到SAM格式(标签ZQ)
  153. --stop-match-score 设置终止密码子之间的匹配得分。
  154. --target-indexed 启用目标索引模式
  155. --daa DIAMOND比对档案(DAA)文件
  156. --window 本地命中搜索的窗口大小
  157. --ungapped-score 继续本地扩展的最小比对得分
  158. --hit-band 命中验证的带宽
  159. --hit-score 保留临时比对的最小得分
  160. --gapped-xdrop 缝隙比对的xdrop,以比特为单位
  161. --rank-ratio2 包括最后一次命中的这个比例内的主题(第二阶段)
  162. --rank-ratio 包括最后一次命中的这个比例内的主题
  163. --lambda 自定义矩阵的lambda参数
  164. --K 自定义矩阵的K参数
4.3 diamond blastx
  1. ./diamond blastx
  2. diamond v2.1.8.162 (C) 马克斯·普朗克科学促进会,本杰明·布赫芬克,蒂宾根大学
  3. 文档、支持和更新可在 http://www.diamondsearch.org 获得
  4. 请引用:http://dx.doi.org/10.1038/s41592-021-01101-x Nature Methods (2021)
  5. 选项:
  6. --threads CPU线程数
  7. --verbose 详细控制台输出
  8. --log 启用调试日志
  9. --quiet 禁用控制台输出
  10. --tmpdir 临时文件目录
  11. --db 数据库文件
  12. --out 输出文件
  13. --header 在表格输出格式中使用标题行(0/简单/详细)。
  14. --comp-based-stats 基于组成的统计模式(0-4)
  15. --masking 掩码算法(无,seg,tantan=默认)
  16. --soft-masking 软掩码(无=默认,seg,tantan)
  17. --evalue 报告比对的最大e值(默认=0.001)
  18. --motif-masking 软掩蔽丰富的基序(0/1)
  19. --approx-id 报告比对/聚类序列的最小近似身份%
  20. --ext 扩展模式(banded-fast/banded-slow/full)
  21. --max-target-seqs 报告比对的最大目标序列数(默认=25)
  22. --top 报告与顶级比对分数范围内的此百分比的比对(覆盖--max-target-seqs)
  23. --faster 启用更快模式
  24. --fast 启用快速模式
  25. --mid-sensitive 启用中等灵敏度模式
  26. --sensitive 启用灵敏度模式
  27. --more-sensitive 启用更灵敏度模式
  28. --very-sensitive 启用非常灵敏度模式
  29. --ultra-sensitive 启用超级灵敏度模式
  30. --shapes 种子形状数(默认=所有可用)
  31. --query 输入查询文件
  32. --strand 搜索的查询链(双向/负向/正向)
  33. --un 未比对查询的文件
  34. --al 比对查询的文件或文件
  35. --unfmt 未比对查询文件的格式(fasta/fastq)
  36. --alfmt 比对查询文件的格式(fasta/fastq)
  37. --unal 报告未比对查询(0=否,1=是)
  38. --max-hsps 每个查询报告的每个目标序列的最大HSP数(默认=1)
  39. --range-culling 将命中剔除限制在重叠的查询范围内
  40. --compress 输出文件的压缩(0=无,1=gzip,zstd)
  41. --min-score 报告比对的最小比特分数(覆盖e值设置)
  42. --id 报告比对的最小身份%
  43. --query-cover 报告比对的最小查询覆盖%
  44. --subject-cover 报告比对的最小主题覆盖%
  45. --swipe 对所有数据库序列进行详尽的比对
  46. --iterate 以增加的灵敏度进行迭代搜索
  47. --global-ranking 全球排名的目标数
  48. --block-size 以十亿字母为单位的序列块大小(默认=2.0)
  49. --index-chunks 索引处理的块数(默认=4)
  50. --parallel-tmpdir 多处理用的临时文件目录
  51. --gapopen 缺口开启罚分
  52. --gapextend 缺口扩展罚分
  53. --matrix 蛋白质比对的得分矩阵(默认=BLOSUM62)
  54. --custom-matrix 包含自定义评分矩阵的文件
  55. --frameshift 帧移罚分(默认=禁用)
  56. --long-reads 简化 --
  57. range-culling --top 10 -F 15
  58. --query-gencode 用于翻译查询的遗传密码(参见用户手册)
  59. --salltitles 在DAA文件中包含完整的主题标题
  60. --sallseqid 在DAA文件中包含所有主题id
  61. --no-self-hits 抑制报告相同的自身命中
  62. --taxonlist 将搜索限制在税种id列表(逗号分隔)
  63. --taxon-exclude 排除税种id列表(逗号分隔)
  64. --seqidlist 通过访问号列表过滤数据库
  65. --skip-missing-seqids 忽略数据库中缺失的访问号
  66. --outfmt 输出格式
  67. 0 = BLAST成对
  68. 5 = BLAST XML
  69. 6 = BLAST表格
  70. 100 = DIAMOND比对档案(DAA)
  71. 101 = SAM
  72. 102 = 分类学分类
  73. 103 = PAF
  74. 104 = JSON(扁平)
  75. 6和104的值可能后接一个由这些关键词组成的空格分隔列表:
  76. qseqid 表示查询序列 - id
  77. qlen 表示查询序列长度
  78. sseqid 表示主题序列 - id
  79. sallseqid 表示所有主题序列 - id,用';'分隔
  80. slen 表示主题序列长度
  81. qstart 表示查询中的比对开始
  82. qend 表示查询中的比对结束
  83. sstart 表示主题中的比对开始
  84. send 表示主题中的比对结束
  85. qseq 表示比对的查询序列部分
  86. qseq_translated 表示比对的查询序列部分(翻译后)
  87. full_qseq 表示查询序列
  88. full_qseq_mate 表示伴侣的查询序列
  89. sseq 表示比对的主题序列部分
  90. full_sseq 表示主题序列
  91. evalue 表示期望值
  92. bitscore 表示比特分数
  93. corrected_bitscore 表示边缘效应校正的比特分数
  94. score 表示原始得分
  95. length 表示比对长度
  96. pident 表示相同匹配的百分比
  97. approx_pident 表示大约的相同匹配百分比
  98. nident 表示相同匹配的数量
  99. mismatch 表示不匹配的数量
  100. positive 表示积极评分匹配的数量
  101. gapopen 表示缺口开启的数量
  102. gaps 表示总缺口数量
  103. ppos 表示积极评分匹配的百分比
  104. qframe 表示查询框架
  105. btop 表示Blast回溯操作(BTOP)
  106. cigar 表示CIGAR字符串
  107. staxids 表示唯一的主题分类学ID,用';'分隔(按数字顺序)
  108. sscinames 表示唯一的主题科学名称,用';'分隔
  109. sskingdoms 表示唯一的主题超级王国,用';'分隔
  110. skingdoms 表示唯一的主题王国,用';'分隔
  111. sphylums 表示唯一的主题门类,用';'分隔
  112. stitle 表示主题标题
  113. salltitles 表示所有主题标题,用'<>'分隔
  114. qcovhsp 表示查询每HSP的覆盖率
  115. scovhsp 表示主题每HSP的覆盖率
  116. qtitle 表示查询标题
  117. qqual 表示比对部分的查询质量值
  118. full_qqual 表示查询质量值
  119. qstrand 表示查询链
  120. 默认:qseqid sseqid pident length mismatch gapopen qstart qend sstart send evalue bitscore
  121. --file-buffer-size 文件缓冲区大小,以字节为单位(默认=67108864)
  122. --no-unlink 不删除临时文件。
  123. --ignore-warnings 忽略警告
  124. --no
  125. -parse-seqids 打印原始seqids,不进行解析
  126. --bin 用于种子搜索的查询分区数
  127. --ext-chunk-size 自适应排名的块大小(默认=自动)
  128. --no-ranking 禁用排名启发式
  129. --dbsize 有效数据库大小(以字母为单位)
  130. --no-auto-append 禁用自动添加DAA和DMND文件扩展名
  131. --tantan-minMaskProb 用于掩蔽的最小重复概率(默认=0.9)
  132. --algo 种子搜索算法(0=双索引/1=查询索引/ctg=连续种子)
  133. --min-orf 忽略没有至少这个长度开放阅读框的翻译序列
  134. --seed-cut 种子复杂度的截断
  135. --freq-masking 基于频率掩蔽种子
  136. --freq-sd 忽略频繁种子的标准偏差数
  137. --id2 第一阶段命中的最小身份数
  138. --linsearch 仅考虑与相同种子的最长目标的种子命中
  139. --lin-stage1 仅考虑与相同种子的最长查询的种子命中
  140. --xdrop 无缝隙比对的xdrop
  141. --gapped-filter-evalue 缝隙过滤的E值阈值(自动)
  142. --band 动态规划计算的带宽
  143. --shape-mask 种子形状
  144. --multiprocessing 启用分布式内存并行处理
  145. --mp-init 初始化多处理运行
  146. --mp-recover 启用中断多处理运行的继续
  147. --mp-query-chunk 仅处理指定的单个查询块
  148. --culling-overlap 与得分更高的命中重叠的最小范围,以删除命中(默认=50%)
  149. --taxon-k 每个物种报告的最大目标数
  150. --range-cover 范围剔除的查询范围覆盖百分比(默认=50%)
  151. --xml-blord-format 在XML输出中使用gnl|BL_ORD_ID|样式格式
  152. --sam-query-len 将查询长度添加到SAM格式(标签ZQ)
  153. --stop-match-score 设置终止密码子之间的匹配得分。
  154. --target-indexed 启用目标索引模式
  155. --daa DIAMOND比对档案(DAA)文件
  156. --window 本地命中搜索的窗口大小
  157. --ungapped-score 继续本地扩展的最小比对得分
  158. --hit-band 命中验证的带宽
  159. --hit-score 保留临时比对的最小得分
  160. --gapped-xdrop 缝隙比对的xdrop,以比特为单位
  161. --rank-ratio2 包括最后一次命中的这个比例内的主题(第二阶段)
  162. --rank-ratio 包括最后一次命中的这个比例内的主题
  163. --lambda 自定义矩阵的lambda参数
  164. --K 自定义矩阵的K参数
05 常用命令行

同blast,常用三个命令makedbblastp、blastx如下:

  1. # 创建一个diamond格式的数据库文件
  2. ./diamond makedb --in reference.fasta -d reference
  3. # 以blastp模式运行搜索
  4. ./diamond blastp -d reference -q queries.fasta -o matches.tsv
  5. # 以blastx模式运行搜索
  6. ./diamond blastx -d reference -q reads.fasta -o matches.tsv
  7. # 下载并使用BLAST数据库
  8. update_blastdb.pl --decompress --blastdb_version 5 swissprot
  9. ./diamond prepdb -d swissprot
  10. ./diamond blastp -d swissprot -q queries.fasta -o matches.tsv
  11. 需要考虑的一些重要点:
  12. - 默认情况下,重复掩蔽会应用于查询和参考序列。要禁用它,请使用 --masking 0。
  13. - DIAMOND 为大型输入文件优化,>1 百万蛋白质。当然,该工具也可以用于较小的文件,但算法将不会达到其全部效率。
  14. - 该程序可能会使用相当多的内存和临时磁盘空间。如果程序因内存或磁盘空间不足而失败,您需要为块大小参数 -b 设置一个较低的值。
  15. - 可以使用选项 --fast、--mid-sensitive、--sensitive、--more-sensitive、--very-sensitive 和 --ultra-sensitive 调整灵敏度。

同时,diamond也是一些共线性分析同源序列分析的必备工具,对于大型转录组,基因组分析,blast就很慢,可能要跑几天,而blast就很快!必备!时间就是效率

06 参考文献
  • Buchfink B, Reuter K, Drost HG, "Sensitive protein alignments at tree-of-life scale using DIAMOND", Nature Methods 18, 366–368 (2021). doi:10.1038/s41592-021-01101-x
  • Buchfink B, Xie C, Huson DH, "Fast and sensitive protein alignment using DIAMOND", Nature Methods 12, 59-60 (2015). doi:10.1038/nmeth.3176
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/453740
推荐阅读
相关标签
  

闽ICP备14008679号