Linux系统中NCBI BLAST+本地化教程

本文提供在Linux系统中进行NCBI BLAST+本地化的方法。实测环境为Linux64位系统,无ROOT权限。

本文面向初学者(最好还是懂得基本的linux使用),高手可直接忽视。不介绍Windows系统中的安装方法,一是因为思路一样,二是因为Linux中BLAST效率更高,系统更稳定,不会卡死。所以,请用Linux服务器,我想你也不忍心让自己心爱的本本跑几十个小时的程序吧。

请不要因为篇幅长,而觉得很困难,只是为了初学者能懂,叙述比较详(luo)细(suo)而已

——————-[ 做好心理准备,开始了]——————-


1. 安装配置BLAST+程序

ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/中下载最新的BLAST可执行程序(不要下载源代码`,源码编译非常慢),选择预编译版本,如ncbi-blast-2.2.30+-x64-linux.tar.gz。如果服务器能联网,可直接用wget下载。或者,下载后用SFTP客户端传输到服务器上。

wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.2.30+-x64-linux.tar.gz

解压缩:

tar -zxvf ncbi-blast-2.2.30+-x64-linux.tar.gz

(按理说解压缩后就可以通过绝对路径直接使用了,但为了今后的方便,还是继续配置吧)为了方便,将其移动到我安装本地程序的目录(参考《[Linux上设置良好的目录结构][1]》),并重命名(固定命名,不带版本号,避免因升级而修改配置文件),统一管理。

mv ncbi-blast-2.2.30+ ~/local/app/ # 移动
cd ~/local/app/                    # 进入本地程序安装路径
mv ncbi-blast-2.2.30+ blast        # 修改目录名

现在,已经将BLAST+安装到~/local/app/blast 中了(~知道吧,就是用户的家目录,可用环境变量$HOME代替)。

[shenwei@mu01 blast]$ pwd # 查看当前目录的绝对路径
/db/home/shenwei/local/app/blast
[shenwei@mu01 blast]$ ls  # 查看当前目录的内容
bin  ChangeLog  doc  LICENSE  ncbi_package_info  README

将BLAST+可执行程序所在目录(bin)的绝对路径加入到环境变量$PATH中,方便通过程序名直接调用。编辑~/.bashrc文件,在最后加入以下行:

export PATH=/db/home/shenwei/local/app/blast/bin:$PATH

如果不会使用vi/vim等编辑器,可直接运行下列一行命令,将上述内容添加到~/.bashrc文件(看清楚,和上面不同的是:$被转义了的):

echo "export PATH=/db/home/shenwei/local/app/blast/bin:\$PATH" >> ~/.bashrc

让配置生效:

source ~/.bashrc

到此,你就可以直接输入BLAST的子程序,如blastn进行比对了。试试输入blast -version ,看看是否如下显示:

[shenwei@mu01 blast]$ blastn -version
blastn: 2.2.30+
Package: blast 2.2.30, build Dec 10 2013 14:41:40

——————-[ 休息一下,鼓励一下自己 ]  ——————-


2. 配置本地BLAST库

当需要进行大量比对的时候,将BLAST数据库本地化能极大提高效率。

我存放库文件的目录为~/data/blast 。建立并编辑(如果还不会编辑,就复制到本地的一个文本文件ncbirc.txt,然后传到服务器,再改名mv ncbirc.txt .ncbirc )NCBI BLAST全局配置文件(在家目录),内容如下:

[shenwei@mu01 ~]$ cat .ncbirc  # 这是查看文件内容的命令,下面才是内容
; Start the section for BLAST configuration

[BLAST]

; Specifies the path where BLAST databases are installed
BLASTDB=/db/home/shenwei/data/blast

; Specifies the data sources to use for automatic resolution

; for sequence identifiers
DATA_LOADERS=blastdb

; Specifies the BLAST database to use resolve protein sequences
BLASTDB_PROT_DATA_LOADER=/db/home/shenwei/data/blast/nr

; Specifies the BLAST database to use resolve protein sequences
BLASTDB_NUCL_DATA_LOADER=/db/home/shenwei/data/blast/nt

BATCH_SIZE=10G

; Windowmasker settings

[WINDOW_MASKER]
WINDOW_MASKER_PATH=/db/home/shenwei/data/blast/windowmasker

; end of file

配置好后,后面选择库的时候就可以只输入名称(比如nr),不用输入绝对路径了。


3. 下载库文件

配置好之后,使用BLAST+自带的update_blastdb.pl脚本下载nr和nt等库文件(不建议下载序列文件,一是因为后者文件更大,二是因为可以从库文件中提取序列blastdbcmd -db nr -dbtype prot -entry all -outfmt "%f" -out nr.fa ,最主要是建库需要花费很长时间),直接运行下列命令即可自动下载。

update_blastdb.pl nt nr

提醒:下载文件较大,耗费时间较长,最好将任务转入后台。详见《Shell Note》中“用screen运行大量后台任务”部分。简单的做法,也可用nohup命令(下面nohup后面用了time命令,是为了看看整个消耗的时间):

nohup time update_blastdb.pl nt nr > log &

监控库文件是否下载完成,如何判断? 1. 查看log文件是否有提示;2. 查看update_blastdb.pl是否还在运行:执行ps -aef | grep update_blastdb.pl | grep -v update_blastdb.pl 命令,如过没有结果,则说明没有运行了。

下载完成后解压所有tar.gz文件(用通配符)即可:

nohup time tar -zxvf *.tar.gz > log2 &

提示:今后要更新库文件的时候,按照上述方法重新下载解压即可。

常用的BLAST库文件(比如基因组参考序列)也可以加入其中,今后调用的时候就不用输入库 文件的绝对路径了。

——————-[ 赞扬一下自己 ]  ——————-


4. 基本用法

可直接Google中文教程。更权威,更详细的请参考BLAST手册《BLAST Command Line Applications User Manual》。具体参数信息可直接输入blastn -help` 查阅。

提示blast输出格式有多种,其中11包含信息最全,其它格式都可用blast_formatter程序由11转化为其它格式。所以,比对结果请使用11格式。

1)如果本地化了nt库,直接在nt库中比对,部分参数的中文意义可见《BLAST+使用方法》。

blastn -query test.fa -db nt -outfmt 11 -out "test.blastn@nr.asn" -num_threads 8

其中输出文件名test.blastn@nr.asn是个人习惯,即“序列文件名.blast子程序名@库名.结果格式”,这样是不是很直观?

转换格式(如自定义表格格式):

blast_formatter -archive "test.blastn@nr.asn" -outfmt "7 qseqid sseqid pident length mismatch gapopen qstart qend sstart send evalue bitscore staxids salltitles" > "test.blastn@nr.tab"

转为默认格式 :

blast_formatter -archive "test.blastn@nr.asn" -outfmt 0 > "test.blastn@nr.blast"

2)如果没有本地化nt库,可添加-remote选项(就不能使用-num_threads参数了),进行在线比对(当然要慢一些,适合数据不多的情况):

blastn -query test.fa -db nt -outfmt 11 -out "test.blastn@nr.asn" -remote

3)用自己的序列建库

makeblastdb -in db.fasta -dbtype nucl -parse_seqids -out dbname

如果该库需要经常使用,可将库文件移到前面配置的库文件的目录,今后在其它目录运行blast的时候,便可直接输入库名(不用输入绝对路径),直接使用。

mv dbname.* ~/data/blast

————- [ 在实践中学习,不会的请google、看手册] ————-


转载自:http://blog.shenwei.me/local-blast-installation/

  • 17
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
### 回答1: NCBI-BLAST-2.13.0-win64是一种基于谷氨酰胺脲和其他生物信息学技术的序列比对软件包。这个软件被广泛用于分析DNA,RNA和蛋白质序列,使得比对过程能够更加快速精确。该软件包含了多个工具,如核酸和蛋白质序列比对,重排序,序列相似性搜索,基于模板的序列比对等。 NCBI-BLAST-2.13.0-win64具有许多特性和功能,例如可以查询各种序列数据库,对于不同的序列类型具有不同的比对策略,可以进行加速计算和多进程处理,支持多种输出格式,可以进行本地安装等等。此外,其还具有自定义参数和调整比对参数等高级设置。 该软件包已经成为生物医学研究的重要工具之一,用于生物数据处理、统计学分析以及建立模型和预测。NCBI-BLAST-2.13.0-win64能够帮助研究人员更好的理解生物序列之间的相似性,从而推断其功能和进化关系。这对于进行生物大数据分析和快速挖掘生物信息,为生物医学研究提供更多帮助的重要性无法忽视。 ### 回答2: NCBI-BLAST-2.13.0 -win64 是一款开源软件,是 National Center for Biotechnology Information (NCBI) 提供的序列比对工具之一。该软件适用于 Windows 64 位操作系统,可以在命令行下运行。其BLAST 是 Basic Local Alignment Search Tool 的缩写,指的是基本局部比对搜索工具,常用于在大量的生物序列寻找相似的序列。 NCBI-BLAST-2.13.0 -win64 支持多种输入文件格式,包括 FASTA、GenBank、EMBL 等。它可以对两种或多种序列之间进行 BLAST 分析,查找它们之间的相似性和差异性。与其他序列比对软件相比,NCBI-BLAST-2.13.0 -win64 具有高速度、高准确度、灵活性等特点。此外,它也可以进行多种参数的自定义设置,以适应不同的比对需求。 总之,NCBI-BLAST-2.13.0 -win64 是一款强大的生物信息学工具,可以帮助研究者在大量的生物序列数据寻找相似的序列,从而推测它们的结构、功能、演化关系等重要信息,为生物学研究提供有力支持。 ### 回答3: ncbi-blast-2.13.0 -win64是一个基于NCBI平台开发的Blast程序的版本号,在Windows操作系统下可用。Blast是一种用于生物信息学研究的算法,用于比对和分析DNA、RNA和蛋白质序列。NCBI-Blast是由美国国家医学图书馆(National Library of Medicine)所提供的一个全球著名的互联网爬虫、文献检索和生物信息资源的网站。NCBI-Blast提供了多个版本,用于不同的平台和操作系统NCBI-Blast-2.13.0 -win64是专门为Windows 64位操作系统设计开发的版本。它具有以下特点:可以快速比对大规模的DNA、RNA和蛋白质序列;提供多种比对算法,可以根据需要选择适合的算法;支持本地计算机和远程服务器,方便用户按照不同的需求进行使用。总之,NCBI-Blast-2.13.0 -win64是专门为方便Windows 64位用户利用Blast算法比对和分析生物序列而开发的一个工具,可以极大地提高生命科学研究的效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值