滴水穿石

种一棵树最好的时间是十年前,其次是现在

0%

如何高速下载SRA

介绍国内如何利用aspera和enaDataGet/enaGroupGet从EMBL-EBI的ENA数据库下载高速下载SRA。

软件

  • Aspera
    High-performace transfer brower plugin,IBM旗下的高速下载插件。
    1
    2
    3
    4
    5
    6
    # 下载
    wget wget https://download.asperasoft.com/download/sw/connect/3.9.9/ibm-aspera-connect-3.9.9.177872-linux-g2.12-64.tar.gz
    # 解压
    tar -zxvf ibm-aspera-connect-3.9.9.177872-linux-g2.12-64.tar.gz
    # 安装 软件安装路径是用户根目录的 .aspera/
    ./ibm-aspera-connect-3.9.9.177872-linux-g2.12-64.sh
  • enaBrowserTools
    enaDataGet/enaGroupGet是enaBrowserTools的一个python脚本,enaBrowserTools是基于python3的与ENA web services接口的套件,可以方便访问ENA。安装方式简单,直接上github下载源代码,然后解压即可。
    enaDataGet: all data for a given sequence, assembly, read or analysis accession or WGS set.
    enaGroupGet: all data for a particular group(sequence, WGS, assembly, read or analysis) for a given sample or study accession.

配置

  • 配置aspera:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    # 配置许可(这一步需要账户有root权限,普通用户无法设置,也可以不需要设置)
    sudo cp ~/.aspera/connect/etc/aspera-license /usr/local/bin/
    # 添加环境变量
    echo 'export PATH=~/.aspera/connect/bin:$PATH' >> ~/.bashrc
    source ~/.bashrc
    # 配置秘钥
    mkdir /home/zouhua/.aspera/config/
    # 复制到配置目录
    cp ~/.aspera/connect/etc/asperaweb_id_dsa.openssh /home/zouhua/.aspera/config/
  • 配置enaDataGet
    如果使用Aspera下载数据,则需要配置aspera_settings.ini文件
1
2
# step1 配置aspera_settings.ini
cd /disk/share/toolkits/enaBrowserTools-1.6 & vi aspera_settings.ini

配置前

1
2
3
4
5
[aspera]
ASPERA_BIN = /path/to/ascp
ASPERA_PRIVATE_KEY = /path/to/aspera_dsa.openssh
ASPERA_OPTIONS =
ASPERA_SPEED = 100M

配置后: 1. 指定ascp脚本;2.指定密钥;3.设置下载速度
1
2
3
4
5
[aspera]
ASPERA_BIN = /home/zouhua/.aspera/connect/bin/ascp
ASPERA_PRIVATE_KEY = /home/zouhua/.aspera/connect/etc/asperaweb_id_dsa.openssh
ASPERA_OPTIONS =
ASPERA_SPEED = 100M

1
2
# step2 配置aspera
export ENA_ASPERA_INIFILE="enaBrowserTools-1.6/aspera_settings.ini"

  • enaDataGet:重要参数 1. -f 指定数据类型;2. -d 指定本地下载目录;3. -a 指定是否使用aspera

使用

enaDataGet和enaGroupGet可配置aspera使用,参数为-a/—aspera,添加此参数则调用aspera。

  • step1 先搜索accession在EBI的api接口;
  • step2 本地创建下载日志文件目录 logs;
  • step3 使用ascp软件下载accession;
    1
    2
    enaBrowserTools-1.6/python3/enaDataGet -f sra -a SRR212430 -d ./sra
    # enaBrowserTools-1.6/python3/enaDataGet -f sra SRR212430 -d ./sra

下载失败: 出现session stop即为失败

  • 完全下载失败
    img
  • 部分下载失败
    img
    不使用aspera下载
    img

引用

zouhua - 如何在国内高速下载SRA

参考文章如引起任何侵权问题,可以与我联系,谢谢。

-------- 本文结束 感谢阅读 --------
# 添加内容