一文搞懂NCBI Blast本地数据库(NT/NR等)构建
背景介绍
blast+:ftp://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST
blast db:ftp://ftp.ncbi.nlm.nih.gov/blast/db
README:ftp://ftp.ncbi.nlm.nih.gov/blast/db/README
通过查看 README,我们知道 nt 和 nr 库的内容:nr 是蛋白库(非冗余的),nt 是核酸库(部分非冗余的)。
下载 blast 库
BLAST+程序包中提供了一个脚本update_blastdb.pl
可以方便地下载 blast 数据库。
首先用以下命令查看有哪些数据库可供下载:
perl update_blastdb.pl --showall
16S_ribosomal_RNA 18S_fungal_sequences 28S_fungal_sequences Betacoronavirus ITS_RefSeq_Fungi ITS_eukaryote_sequences LSU_eukaryote_rRNA LSU_prokaryote_rRNA SSU_eukaryote_rRNA cdd_delta env_nr env_nt human_genome landmark mouse_genome nr nt pataa patnt pdbaa pdbnt ref_euk_rep_genomes ref_prok_rep_genomes ref_viroids_rep_genomes ref_viruses_rep_genomes refseq_protein refseq_rna refseq_select_prot refseq_select_rna swissprot taxdb tsa_nr tsa_nt
如要下载 nt 库,用以下命令:
nohup perl update_blastdb.pl --decompress nt &> update.log &
后台下载并自动解压,如果中途断网,重启下载支持断点续传,很方便。
可惜的是,如果网速不好,80 多 GB 的压缩文件,很难下载下来,最好用我们之前介绍过的 Aspera 软件高速下载,其安装方法见之前文章:Aspera:基因组数据高速下载利器,以 NCBI 和 EBI 数据下载为例
Aspera 下载 nt 库:
ascp -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh -l 100M -k 1 -T anonftp@ftp.ncbi.nlm.nih.gov:/blast/db/FASTA/nt.gz ./
下载完毕,构建数据库索引:
makeblastdb -dbtype nucl -in nt.fa -out nt.fa
测试
准备查询文件:test.fa
>chr1
CGATAATTCATCTGGCCGCCTTCCACACCCAGCGCGCGCAAAAAGTGGTGGCGGAAACGATCCGCACTGAAAATACCGTGGAGATAGGTTCCCATGATACGACCATCGGGC
测试命令:
time blastn -query test.fa -db /path/to/nt.fa -num_threads 48 -max_target_seqs 5 -outfmt 6
结果如下:
chr1 CP046720.1 100.000 111 0 0 1 111 1286985 1287095 1.92e-49 206
chr1 CP044338.1 100.000 111 0 0 1 111 1283638 1283748 1.92e-49 206
chr1 MK355143.1 100.000 111 0 0 1 111 76 186 1.92e-49 206
chr1 MK355138.1 100.000 111 0 0 1 111 76 186 1.92e-49 206
chr1 MK355136.1 100.000 111 0 0 1 111 76 186 1.92e-49 206real 0m15.609s
user 1m17.647s
sys 0m31.350s
本地 NT 库构建成功。
![](/assets/blank.gif)
如果你喜欢这篇文章,请点个“赞”吧!或者点击“在看”让更多朋友看到,点击“阅读原文”可以在知乎专栏上给我留言
一文搞懂NCBI Blast本地数据库(NT/NR等)构建相关推荐
- 一文搞懂MySQL数据库分库分表
如果数据量过大,大家一般会分库分表.分库需要注意的内容比较少,但分表需要注意的内容就多了. 工作这几年没遇过数据量特别大的业务,那些过亿的数据,因为索引设置合理,单表性能没有影响,所以实战中一直没用过 ...
- 一文搞懂AWS EC2, IGW, RT, NAT, SG 基础篇下
B站实操视频更新 跟着拉面学习AWS--EC2, IGW, RT, NAT, SG 简介 长文多图预警,看结论可以直接拖到"总结"部分 本文承接上一篇文章介绍以下 AWS 基础概念 ...
- 一文搞懂 Python 的 import 机制
一.前言 希望能够让读者一文搞懂 Python 的 import 机制 1.什么是 import 机制? 通常来讲,在一段 Python 代码中去执行引用另一个模块中的代码,就需要使用 Python ...
- 一文搞懂如何使用Node.js进行TCP网络通信
摘要: 网络是通信互联的基础,Node.js提供了net.http.dgram等模块,分别用来实现TCP.HTTP.UDP的通信,本文主要对使用Node.js的TCP通信部份进行实践记录. 本文分享自 ...
- 一文搞懂 Traefik2.1 的使用
原文链接:一文搞懂 Traefik2.1 的使用 一文搞懂 Traefik2.1 的使用 核心概念 安装 ACME 中间件 灰度发布 流量复制 TCP 简单 TCP 服务 带 TLS 证书的 TCP ...
- 一文搞懂 Cocos Creator 3.0 坐标转换原理
一文搞懂 Cocos Creator 3.0 坐标转换原理 屏幕坐标 UI 触点坐标 UI 多分辨率适配方案 UI 触点获取 不同坐标之间的转换 屏幕坐标与 3D 节点世界坐标互转 3D 节点之间的坐 ...
- 一文搞懂指标采集利器 Telegraf
作者| 姜闻名 来源|尔达 Erda 公众号 导读:为了让大家更好的了解 MSP 中 APM 系统的设计实现,我们决定编写一个<详聊微服务观测>系列文章,深入 APM 系统的产品.架构 ...
- 都2021年了,再不学ES6你就out了 —— 一文搞懂ES6
JS干货分享 -- 一文搞懂ES6 导语:ES6是什么?用来做什么? 1. let 与 const 2. 解构赋值 3. 模板字符串 4. ES6 函数(升级后更爽) 5. Class类 6. Map ...
- 网络知识扫盲,一文搞懂 DNS
在找工作面试的过程中,面试官非常喜欢考察基础知识,除了数据结构与算法之外,网络知识也是一个非常重要的考察对象. 而网络知识,通常是很抽象,不容易理解的,有很多同学就在这里裁了跟头.为了更好地通过面试, ...
最新文章
- grep 正则表达式及选项以及注意
- Python遍历目录的4种方法
- 用delphi模仿.net的string.split
- bzoj 4443: [Scoi2015]小凸玩矩阵(二分+二分匹配)
- Swift中字典解析后的问题,!?两种拆包的差别
- 阅读go语言程序设计
- 惠普打印机驱动服务器系统,在打印机服务器(系统WIN2003)上安装了HP5100 打印机,客户机系统WIN7 64位,现没法添加HP5100的驱动...
- 智慧新泰时空大数据与云平台_智慧城市时空大数据与云平台建设技术大纲即将出台...
- keil5 社区版 使用教程 安装 下载 账号
- myqr制作动态二维码出错
- notability录音定位_请问如何在iPad上科学地使用good notes和notability?
- 185. 部门工资前三高的所有员工(重要)
- MySQL数据库getdate_MySQL数据库 DateTime 默认值是不是用getdate
- 【(类似DP)优化】 分梨子
- APS系统六大要素是什么?企业导入APS(高级生产计划与排程)有哪些好处?
- 将两条类似的sql合并
- 个人怎么制作微信小程序,微信小程序可以免费制作吗?微信小程序制作教程
- 【Linux 网络】IP校验和计算相关
- 一种双 SoC 智能座舱域控设计
- 美团面试 java后端开发