前言
众所周知,在做生信分析的过程中,数据获取是关键,而数据的来源就那么几个途径,我们难免要到NCBI上去下载数据,而在NCBI上下载数据又比较慢,所以需要寻求其他软件的辅助,而sra-toolki恰好解决了这个问题,本文主要是对sra-toolki的安装与下载做了相关的阐述,希望能够帮到刚接触这块的友友们。
一、SRA-Toolkit是什么?
sra-toolkit是NCBI中推出的一个软件,支持windows、linux等,下面主要针对linux环境下的操作进行说明。
二、使用步骤
1、 软件下载
(1)在Windows下NCBI官网里,下载sratoolkit(具体到版本号,系统为Centos,操作系统为Linux64位),具体如下:
第一步:在NCBI的主界面,点击进入Download
第二步:在Download界面,点击进入Download Tools
第三步:在SRA Toolkit栏目下,点击进入下载
第四步:点击下载需要的版本,一般下载CentoOS Linux 64 bit architecture
(2)在Windows下找到下载的文件,把下载的压缩文件传输到Linux服务器,本人用的Linux辅助软件是Mobaxterm,界面如下:
ps:可能有人就会说,为什么不直接在Linux中用wget命令下载?
据笔者亲身比较,这种方法会比较快。
2、文件解压
(1)在Linux下找到上传的文件,然后使用命令:
tar -zxvf sratoolkit.2.8.2-centos_linux64.tar.gz
(Ps:具体看自己下载的sratoolki的版本号)
(2)出现以下文件,代表软件下载成功:
3、 配置环境
(1)将环境写入.bashrc中:
echo "export PATH=\$PATH:\$home/local/app/sratoolkit.3.1.2-centos_linux64/bin" >> ~/.bashrc
(Ps:具体路径看自己安装软件的位置)
(2)运行环境:
source ~/.bashrc
(3)调配软件环境:
vdb-config -i
(Ps:这个是在软件的bin下执行的,出现一个界面,代表配置存储环境成功,默认环境即可)
(4)环境配置失败原因总结:
之前安装过旧版本,并把它的bin写入了PATH变量(即.bashrc)中,那么我现在运行的vdb-config –interactive可能是上个版本的,而不是我现在版本下的。这样需要删除之前的环境变量,换成现在版本的位置,写入环境变量。
ps:当然,如果有人是在windows下的Ubuntu中运行的,则可能需要使用命令./bin/vdb-config –i(在与bin的同级目录下)
4、测试
(1)Ubuntu中在与软件bin的同级目录下执行以下命令:
./bin/fastq-dump
./bin/prefetch
若显示相关信息就代表软件安装成功
(2)linux中在软件bin的目录下执行以下命令:
fastq-dump -h
prefetch -h
若显示相关信息就代表软件安装成功
5、数据下载
(1)linux远程下载数据:
软件的bin目录下执行:
prefetch ERR6683659
其中ERR6683659为NCBI下SRA中编号(统一的)
(2)Ubuntu远程下载数据:
与软件bin的同级目录下:./bin/prefetch SRR1553610
(ps:不太建议使用这种方式下载数据,相当于在NCBI中下载,推荐在Linux中,当出现ERR6683659.sra代表下载完成)
6、数据处理
(1)Linux下:
下载完后使用命令:
fastq-dump --split-files ERR6683659
(ps:这条命令是在软件的bin内运行)
(2)Ubuntu下:
使用命令:
./bin/fastq-dump --split-files SRR1553610
(ps:这条命令是在与软件bin的同级目录下执行)
(3)这里获得的文件是根据数据的类型决定的,若是单端测序的数据,则只会获得一个文件,若是双端测序的数据,则会获得两个文件。
7、批量数据处理
(1)背景:想获得NCBI上批量的SRA数据
(2)打开ncbi 中需要下载的数据界面,搜索想要下载数据的关键信息
(3)具体的对象
(4)具体的实验数据
(6)下载数据清单
(7)将清单信息传输到服务器
(8)脚本实现流程化(shell脚本):
for line in `cat SRR_list`
do
prefetch ${line}
fastq-dump --split-files ${line}
done
(9)整理目录可以这样:
mv *.fastq file
#指定文件夹
总结
例如:以上就是今天要讲的内容,主要是针对NCBI下载数据慢的问题,该方法不是唯一,据笔者了解,还有其他的解决办法。虽然这种方法处理数据不是最快的,但却是最稳的,不至于经常报出错,这种方法适合刚接触NCBI,需要在其中下载数据的初学者,这是笔者的一些经验总结,供各位道友参考!