hadoop的压缩格式

列举了常用的hadoop压缩格式以及效率占比图

Posted by Woods on January 13, 2017

hadoop的常用压缩格式

压缩格式 可分割 算法 扩展名 Linux工具
gzip DEFLATE .gz gzip
lzo 是(加索引) LZO .lzo lzop
snappy Snappy .snappy
Bzip2 Bzip2 .bz2 bzip2
deflate DEFLATE .deflate
zip ZIP .zip zip

各个压缩格式的优缺点

压缩格式 优点 缺点
gzip 压缩比在四种压缩方式中较高;hadoop本身支持,在应用中处理gzip格式的文件就和直接处理文本一样;有hadoop native库;大部分linux系统都自带gzip命令,使用方便。 不支持split
lzo 压缩/解压速度也比较快,合理的压缩率;支持split,是hadoop中最流行的压缩格式;支持hadoop native库;需要在linux系统下自行安装lzop命令,使用方便。 压缩率比gzip要低;hadoop本身不支持,需要安装;lzo虽然支持split,但需要对lzo文件建索引,否则hadoop也是会把lzo文件看成一个普通文件(为了支持split需要建索引,需要指定inputformat为lzo格式)
snappy 压缩速度快;支持hadoop native库。 不支持split;压缩比低;hadoop本身不支持,需要安装;linux系统下没有对应的命令d. bzip2
bzip2 支持split;具有很高的压缩率,比gzip压缩率都高;hadoop本身支持,但不支持native;在linux系统下自带bzip2命令,使用方便。 压缩/解压速度慢;不支持native

压缩比对比图

压缩比对比图 可见Bzip2的压缩率最高

解压缩时间对比图

解压缩时间对比图 Bzip2压缩时间最长 Snappy压缩时间最短