hadoop3.x:HDFS文件压缩格式

介绍

类似 rar、zip、gzip 压缩格式,Hadoop 也支持文件压缩

Hadoop支持的压缩算法

Haodop对文件压缩均实现org.apache.hadoop.io.compress.CompressionCodec 接口

所有的实现类都在 org.apache.hadoop.io.compress 包下

Hadoop支持的压缩对比

压缩格式 工具 算法 文件扩展名 是否可切分
Default 无 Default .deflate 否
Gzip gzip gzip .gz 否
bzip2 bzip2 bzip2 .bz2 是
LZO lzop LZO .lzo 是(切分点索引)
LZ4 无 LZ4 .lz4 否
Snappy 无 Snappy .snappy 否

提示: Snappy 在 hadoop2.x版本中 需要重新编译才支持;在hadoop3.x版本中,已经内置了

比较

压缩格式 压缩前大小(byte) 压缩后大小(byte) 压缩时间(ms) 解压缩时间(ms) CPU(%)
bzip2 35984 8677 11591 2362 29.5
gzip 35984 8804 2179 389 26.5
Default 35984 9704 680 344 20.5
lzo 35984 13069 581 230 22
lz4 35984 16355 327 147 12.6
snappy 35984 13602 424 88 11

Snappy压缩

由谷歌提出

优点:高速压缩速度和合理的压缩率。

缺点:压缩率比较差;hadoop2.x本身不支持,需要安装;3.x版本中,已经内置了

综合来看,比较好