本地Blast的安装与使用

写在前面

这一篇教程写于很久之前,那时候才刚开始学着记录下自己的学习过程,今天将其正式贴出来,供自己也供读者参考。

Blast的安装

  • 说明:BLAST工具是由NCBI所提供。

以下摘自NCBI官网
BLAST (Basic Local Alignment Search Tool) finds regions of similarity between biological sequences. The program compares nucleotide or protein sequences to sequence databases and calculates the statistical significance.

  • 功能:BLAST 是一套在蛋白质数据库或DNA数据库中进行相似性比较的分析工具。[BLAST]程序能迅速与公开数据库进行相似性序列比较。BLAST结果中的得分是对一种对相似性的统计说明。

  • 下载地址ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/

旧地址已失效,新链接为 ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.10.1+-x64-linux.tar.gz

  • 具体安装
wget ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.10.1+-x64-linux.tar.gz
tar -zxvf ncbi-blast-2.7.1+-x64-linux.tar.gz ‘解压’
mv ncbi-blast-2.7.1+-x64-linux.tar.gz blast ‘改名’

可以通过绝对路径来直接使用BLAST的相关命令,但为了使用方便,还需要进一步配置。将BLAST+可执行目录(bin)的绝对路径加入到环境变量PATH中,方便直接通过命令名进行调用。主要有两种方法:

方法一:
执行以下命令
PATH=$PATH:/usr/local/BLAST/blast/bin

PATH="PATH":/usr/local/BLAST/blast/bin

PATH=${PATH}:/usr/local/BLAST/blast/bin
这种方法只在当前终端生效,退出重新进入终端后就无法使用,要想永久生效,参见方法二。

方法二:
编辑~/.bashrc文件,在最后加上:
export PATH=/usr/local/BLAST/blast/bin:$PATH
如果不会使用vi/vim等编辑器,可直接运行下列一行命令,将上述内容添加到~/.bashrc文件
echo "export PATH=/usr/local/BLAST/blast/bin:\$PATH" >> ~/.bashrc

最后,重启终端或执行以下命令让配置生效:
source ~/.bashrc

需要注意的是如果你只想在普通用户身份下使用BLAST的相关命令,那需在普通用户身份下执行上述命令,因为root和一般用户的PATH变量的内容不一样。

配置本地Blast库

BLAST分为在线和本地两种,你可以直接在NCBI网站上在线使用BLAST进行相关分析,也可以在本地进行分析。当需要进行大量对比的时候,将BLAST数据库本地化能极大提高效率。下面以一个具体例子讲一下配置本地BLAST库的方法。

BLAST数据库分为两类,核酸数据库和氨基酸数据库,可以用makeblastbd创建
执行help参数简单看下说明(help说明中可以看到该命令所支持的文件格式)

从数据库网站上下载长瓜两个品种的核酸数据库

wget ftp://cucurbitgenomics.org/pub/cucurbit/genome/cucumber/Chinese_long/v2/cucumber_ChineseLong_v2_genome.fa.gz
wget ftp://cucurbitgenomics.org/pub/cucurbit/genome/cucumber/Gy14/V2/ Gy14_v2.cds.fa.gz

解压

gzip -d cucumber_ChineseLong_v2_genome.fa.gz
gzip -d Gy14_v2.cds.fa.gz

构建数据库

makeblastdb -in cucumber_ChineseLong_v2_genome.fa -dbtype nucl -out cucumber -parse_seqids
makeblastdb -in Gy14_v2.cds.fa -dbtype nucl -out Gy14 -parse_seqids

需要注意的是设置-parse_seqids参数时,建库时会对输入fasta文件的序列ID进行检查,注意不要有空格,不然会报错。

到此,本地数据库就已经建好了。下面来尝试进行比对

echo '>test' > query.fa 
echo TGAAAGCAAGAAGAGCGTTTGGTGGTTTCTTAACAAATCATTGCAACTCCACAAGGCGCCTGTAATAGACAGCTTGTGCATGGAACTTGGTCCACAGTGCCCTACCACTGATGATGTTGATATCGGAAAGTGGGTTGCAAAAGCTGTTGATTGTTTGGTGATGACGCTAACAATCAAGCTCCTCTGGT >> query.fa

用blastn检索核酸数据库。最简单的方法就是提供数据库所在位置和需要检索的序列文件。
blastn -db cucumber -query querry.fa -out [email protected] -evalue 1e-2
这样,序列比对的结果就会存储在 [email protected] 这个文件中。

你可能感兴趣的:(本地Blast的安装与使用)