数据下载:从NCBI上下载sra数据的方法
前言
今天,想在NCBI上下载lncRNA数据,突然发现Aspera的ascp(报错:ascp: Failed to open TCP connection for SSH, exiting)下载不了。
百度一波,这种问题很少。随后问了身边的小伙伴,大家都没及时回复。
然后就问了外校的小伙伴,发现一样的报错,考虑应该是NCBI在维护。
问题来了,除了ascp以外,其他的下载的方式有哪些呢?
pengzw@super-server:~/data/ncbi$ ascp -T -l 200M -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh -T --mode recv --host ftp-private.ncbi.nlm.nih.gov --user anonftp --file-list ./download_list.txt ./
ascp: Failed to open TCP connection for SSH, exiting.
Session Stop (Error: Failed to open TCP connection for SSH)
注意:
安装软件最好是最新版本,简单的安装不再描述
1.Aspera高速下载
①简介及安装:由于下载时,官方自动检测系统,linux最新版是师弟在ubuntu上下载传给我。
下载地址:https://downloads.asperasoft.com/en/downloads/8?list
wget https://download.asperasoft.com/download/sw/connect/3.8.1/ibm-aspera-connect-3.8.1.161274-linux-g2.12-64.tar.gz
tar zxf ~/downloads/ibm-aspera-connect-3.8.1.161274-linux-g2.12-64.tar.gz -C ~/biosoft/ #指定安装目录
cd ~/biosoft/
bash ibm-aspera-connect-3.8.1.161274-linux-g2.12-64.sh # 安装(我修改为bash解释器)
cd # 去根目录
ls -a # 查看是否有.aspera文件夹,如果看到.aspera文件夹,代表安装成功
echo 'PATH=$PATH:~/.aspera/connect/bin/' >> ~/.bashrc # 永久添加环境变量
source ~/.bashrc #让当前变量生效
ascp --help
②使用
从ncbi上批量下载
ascp -T -l -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh -T --mode recv --host ftp-private.ncbi.nlm.nih.gov --user anonftp --file-list ./download_list.txt ./
download_list_list.txt内容:
/sra/sra-instant/reads/ByRun/sra/SRR/SRR103/SRR1039508/SRR1039508.sra
/sra/sra-instant/reads/ByRun/sra/SRR/SRR103/SRR1039509/SRR1039509.sra
ascp [options] SRC... DEST
options:
• -T 不进行加密。若不添加此参数,可能会下载不了。
• -i string 输入私钥,安装aspera后在目录~/.aspera/connect/ect/下有私钥,linux服务器一般使用asperaweb_id_dsa.openssh
• --host=string ftp的host名,NCBI为ftp-private.ncbi.nlm.nih.gov;EBI为fasp.sra.ebi.ac.uk
• --user=string用户名,NCBI为anonftp,EBI为era-fasp
• --mode=string 选择模式,上传为send,下载为recv
• -I string 设置最大传输速度,如设置为200M表示最大传输速度为200M/s。不设置则一般可达10M/s
2.prefetch or fast-dump
①prefetch来自于软件NCBI SRA Toolkit(被称为manual最垃圾的软件之一),帮助mannul。
prefetch --option-file SRR_Acc_List.txt
prefetch -t ascp -a "~/.aspera/connect/bin/ascp|~/.aspera/connect/etc/asperaweb_id_dsa.openssh" --option-file SRR_Acc_List.txt -O ./ncbi
SRR_Acc_List.txt内容为SRRXXXXXXX
注意:
sra数据会下载到家目录下的ncbi/public/sra中,perfetch 默认aspera下载(如果存在于环境变量,否则使用https下载),也可设置aspera,Ex:prefetch -t ascp -a "/opt/aspera/bin/ascp|/opt/aspera/bin/asperaweb_id_dsa.openssh" --option-file file.txt; file.txt 格式为每一行一个SRR#,可以使用下载界面的RunInfo table下载的文件。
②fast-dump也来自于SRA Toolkit,可以转换sra为fq文件。整理发现也可以下载SRA数据,帮助manual。
fastq-dump -X 5 -Z SRR390728
3.wget
wget ftp://ftp-trace.ncbi.nlm.nih.gov/sra/sra-instant/reads/ByExp/sra/SRX/SRX215/SRX2159543/SRR4238252/SRR4238252.sra
如果按SRR下载文件的话,可见ftp构成:
ftp://ftp.ncbi.nlm.nih.gov/sra/sra-instant/reads/ByRun/sra/SRR/+SRR+登陆号前三位数字(548)+/SRR+完整登陆号(5483089)
如果按SRP下载文件的话,构成是
ftp://ftp.ncbi.nlm.nih.gov/sra/sra-instant/reads/ByStudy/sra/SRP/+SRP+SRP前三位数字 (105) +/SRP+SRP的完
4.参考
http://www.cnblogs.com/ywliao/p/7356528.html
https://blog.csdn.net/qq_29300341/article/details/76137939
https://www.jianshu.com/p/19ae29e54c59
http://www.chenlianfu.com/?p=2319