使用Aspera从EBI或NCBI下载基因组数据

做基因组数据分析,可能经常从NCBI的GEO/SRA或者EBI的ENA数据库下载高通量的数据,动辄几十G的数据用wget下载实在太纠结,这时就要用到神器-Aspera了。

使用Aspera,最简单的方法当然就是使用浏览器插件Aspera Connect了,跟迅雷、Flashget的用法差不多,直接单击Aspera支持的下载地址,就自动切换到Aspera的窗口开始下载了。

当我们登录到自己的服务器终端里面的时候,可能更希望在终端里直接下载数据,而不是先把数据下载到自己的硬盘里,再上传到服务器,这种情况下带有窗口界面的Aspera Connect就无法使用了吗?

当然可以,Aspera Connect安装包里内置了Aspera的命令行工具,这里对其安装和使用方法简要介绍一下:

安装

首先,到aspera网站下载你的操作系统对应的aspera connect。(如果选Linux,下载以后会是一个几M大,内嵌二进制代码的shell脚本。。) 。不需要root或者sudo权限,直接安装之:

$ sh aspera-connect-2.4.7.37118-linux-64.sh

安装好以后,会在HOME目录下新建一个叫.aspera的目录,有两个文件比较重要:

一个是ascp的可执行文件:

~/.aspera/connect/bin/ascp

另一个ascp的密钥文件:

~/.aspera/connect/etc/asperaweb_id_dsa.putty

建议将密钥备份到HOME目录下方便使用:

$ cp ~/.aspera/connect/etc/asperaweb_id_dsa.putty ~/

再把aspera-license复制到系统目录

~/.aspera/connect/etc$ sudo cp aspera-license /usr/local/bin/

再把ascp可执行文件的路径加入PATH变量中,或者将其拷贝到当前目录。

使用

执行以下两条命令(注意最后要加点号“.”,表示当前目录)

从EBI下载:

$ ascp -i ~/asperaweb_id_dsa.putty era-fasp@fasp.sra.ebi.ac.uk:/vol1/ERA012/ERA012008/sff/library08_GJ6U61T06.sff

从NCBI下载:

$ ascp -i ~/asperaweb_id_dsa.putty anonftp@ftp-private.ncbi.nlm.nih.gov:/sra/sra-instant/reads/ByRun/litesra/SRR/SRR096/SRR096072/SRR096072.lite.sra .

这个时候的速度相比于wget,应该已经很快了,大约能达到9Mb/s以上,如果还嫌慢,可以在-i 参数的前面添加几项设置,像这样:

ascp -QT -l 100M -i ~/asperaweb_id_dsa.putty era-fasp@fasp.sra.ebi.ac.uk:/vol1/ERA012/ERA012008/sff/library08_GJ6U61T06.sff

这样可以将速度提高到20Mb/s左右,偶尔能达到100Mb/s。

ascp下载地址的获取

以EBI上的SRR346368这套数据为例。首先到EBI页面里,找到你想要下载的文件,将指针移到这个文件的”ftp”这一列,即可看到其ftp地址,例如: ftp://ftp.sra.ebi.ac.uk/vol1/fastq/SRR346/SRR346368/SRR346368.fastq.gz,
然后呢:将 ftp://ftp.sra.ebi.ac.uk 换成 era-fasp@fasp.sra.ebi.ac.uk即可:

$ ascp -i ~/asperaweb_id_dsa.putty era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR346/SRR346368/SRR346368.fastq.gz .

NCBI的SRA数据库也是同样的方法,即可获取其ascp下载地址。

小技巧

如果嫌每次都输入密码太麻烦,可以在命令行或.profile中设置ASPERA_SCP_PASS这个环境变量:
export ASPERA_SCP_PASS=你的aspera密码
即可。

更多的说明

请参见官方的SRA下载手册:

NCBI: http://www.ncbi.nlm.nih.gov/books/NBK47540/

EBI: http://www.ebi.ac.uk/ena/about/sra_data_download

本文来自:http://www.samuthing.com/?p=347

评论  2  访客  1
    • xiaojiang 0

      aspera密码怎么来的?

    发表评论

    匿名网友

    拖动滑块以完成验证