可能是下载公共数据fastq.gz最快的方法【new】

参考:

批量下载SRR数据
从NCBI-SRA和EBI-ENA数据库下载数据

最近下载了一些比较大数据,自己感觉下载公共数据,最快的方法用ascp 下载 EBI sra 数据,再使用faster-dump 解压,如果需要压缩使用pigz 进行压缩。

举例

  • Step1: 准备数据列表
$ cat down.txt
SRR7585921
SRR7591443
SRR7591444
  • Step2:下载sra数据
cat  down.txt |while read id; do 
echo "$id  is downloading" ;
if [ ${#id} == 9 ] ; then
( nohup ascp  -QT -l 300m -P33001 -k1 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh [email protected]:/vol1/srr/${id:0:6}/$id/$id . & );
else
( nohup ascp  -QT -l 300m -P33001 -k1 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh [email protected]:/vol1/srr/${id:0:6}/00${id:0-1}/$id ./ & );
fi;
done

## 参数
-k1 : 支持断点续传
  • Step3:解压sra 为fastq
ls *.sra | while read id; 
do 
echo $id; ( nohup fasterq-dump -e 16 --split-files -O ./ $id  & ); 
done
  • Step4:压缩为fastq.gz
nohup time pigz -k -p 16 test.fastq




思考:

1.为什么选择从EBI下载sra,为什么不直接下载fastq.gz呢?

如果带宽有限,下载sra数据更小,但是需要多一个解压缩步骤.个人感觉多线程解压缩还是比下载更快,所以选择下载sra

$ ll
total 72846298
-rw-r--r-- 1 kcao GLLi          44 Sep 11 22:21 down.txt
-rw-r--r-- 1 kcao GLLi  9995426477 Jul 26  2018 SRR7585921.sra
-rw-r--r-- 1 kcao GLLi 32299591228 Sep 11 13:56 SRR7585921.sra_1.fastq
-rw-r--r-- 1 kcao GLLi 32299591228 Sep 11 13:55 SRR7585921.sra_2.fastq
-rw-r--r-- 1 kcao GLLi  6762973455 Sep 11 13:56 SRR7585921_1.fastq.gz
-rw-r--r-- 1 kcao GLLi  7760784688 Sep 11 13:55 SRR7585921_2.fastq.gz

2.如何确认EBI sra 路径(fasp.sra.ebi.ac.uk:/vol1/srr/${id:0:6}/00${id:0-1}/$id)正确呢?

  • 使用EBI website 显示fasp 地址信息

    image.png

  • 确认格式是否正确


    image.png

3.为什么不直接从NCBI下载sra,或者直接用perfetch 调用ascp 下载sra 呢 ?

网上看到说ncbi 数据存储到云端了,用ascp 下载速度提升不明显。
之前用过ascp下载ncbi sra数据,结果发现,一直报错。

4.为什么选择fasterq-dump 工具进行解压缩,而不是fastq-dump呢?

最新版sratoolkit 已经包含了faster-dump,最大差别支持多线程,一般推荐16或者32线程,太多线程提升想过不明显,而且占用计算资源。
faster-dump 不支持将sra 解压为gz格式,所以需要工具,进行压缩为gz(如果需要压缩文件)

5.为什么选择pigz 工具进行解压缩呢?

gzip相比 ,支持多线程,结果为gz文件.

欢迎大家评论交流~

你可能感兴趣的:(可能是下载公共数据fastq.gz最快的方法【new】)