搜索
查看: 2563|回复: 1

[linux] 两个高效工具 axel[下载] pigz[压缩/解压缩]

[复制链接]

13

主题

30

帖子

263

积分

中级会员

Rank: 3Rank: 3

积分
263
发表于 2017-3-12 14:54:44 | 显示全部楼层 |阅读模式
全基因组的样本数据越来越普遍 , 在面临如此‘肥’的数据量的时候


下载和压缩/解压缩。是两个基本的需求


小文件还可以  但是面临300GB 以上的fastq 以及下载比较多的数据的时候


wget 和 gzip 的劣势就显现出来了:慢!


这里介绍两个小的“利器” axel 和 pigz。可以作为其完美替代


安装的话很简单 可以在root 下[centos 7 为例]


[AppleScript] 纯文本查看 复制代码
yum install axel

yun install pigz



pigz官网
http://www.zlib.net/pigz/


pigz的简单用法:
[Bash shell] 纯文本查看 复制代码
#压缩 默认会耗费很多的CPU 
pigz a.fastq
#解压缩
unpigz a.fastq.gz



测评:
pigz默认用法(默认并发线程是逻辑cpu个数)可比gzip快5.3倍,CPU消耗则是gzip的8倍,压缩比则相当;
并发8线程对比4线程提升:41.2%,16线程对比8线程提升:27.9%,32线程对比16线程提升:3%;在对压缩效率要求较高、但对短时间内CPU消耗较高不受影响的场景,使用pigz非常合适。pigz参考博客
axel是Linux下一个不错的HTTP/ftp高速下载工具。支持多线程下载、断点续传,且可以从多个地址或者从一个地址的多个连接来下载同一个文件。适合网速不给力时多线程下载提高下载速度。
http://man.linuxde.net/axel
比如前面提到的BGI 数据的下载
[Bash shell] 纯文本查看 复制代码
#BGI-SEQ500 NA12878 WGS download
for i in $(seq 54 61) 
do
axel -n 20 [url]ftp://ftp.sra.ebi.ac.uk/vol1/err/ERR183/004/ERR18313[/url]${i}
done

下载速度比wget快很多










上一篇:AI, machine learning, and deep learning的区别
下一篇:七个RNAseq高级分析技术
回复

使用道具 举报

5

主题

22

帖子

172

积分

注册会员

Rank: 2

积分
172
发表于 2017-3-20 13:21:27 | 显示全部楼层
axel 应该不在默认的yum源里,需要另外安装 epel 源。
[Shell] 纯文本查看 复制代码
yum install epel-release
yum install axel


如果是Amazon EC2之类的云主机,可能已经安装了epel源,但是默认不启用。可以用这个方法启用:
[Shell] 纯文本查看 复制代码
sudo yum-config-manager --enable epel


pigz 是通用压缩软件中效果比较好的,如果只针对fasta文件的话可以看参考文献[1]中的一张表格:
DBB5295F-12DF-4BBD-B416-11063708F226.png

DSRC2压缩和解压都是最快的,压缩率也略高于pigz,缺点在于过大的文件就无法进行压缩。LFQC压缩率虽然很高(其实也高不了太多),但是耗时太长,不太实用。

参考文献:
[1] Numanagić, I., Bonfield, J. K., Hach, F., Voges, J., Ostermann, J., Alberti, C., et al. (2016). Comparison of high-throughput sequencing data compression tools. Nature Methods, 13(12), 1005–1008. http://doi.org/10.1038/nmeth.4037
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树 ( 粤ICP备15016384号  

GMT+8, 2019-12-16 11:33 , Processed in 0.024528 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.