Hadoop上常用压缩格式对比:
压缩格式 | 扩展名 | 多文件 | 支持切片 | 压缩比排行 | 解压速度排行 | 工具 | hadoop自带 |
---|---|---|---|---|---|---|---|
gzip | .gz | 否 | 否 | 2 | 3 | gzip | 是 |
bzip2 | .bz2 | 是 | 是 | 1 | 4 | bzip2 | 是 |
lzo | .lzo | 否 | 是 | 3 | 2 | lzop | 否 |
snappy | .snappy | 否 | 否 | 4 | 1 | 无 | 否 |
压缩率 : BZip2 > GZip > Lzo > Snappy
压缩速率 : Snappy > Lzo > GZIp > BZip2
支持切片 : BZIp2、LZo
Lzo支持切片,对于压缩后文件还是比较大,需要切片的情况下使用比较多
Snappy解压速度最快,对解压速度要求高的场景使用比较多,Hadoop平台上使用最广泛
Bzip2压缩解压的速度都非常慢,现在使用愈来愈少
检查Hadoop压缩格式
hadoop checknative
19/07/02 09:12:58 INFO bzip2.Bzip2Factory: Successfully loaded & initialized
native-bzip2 library system-native
19/07/02 09:12:58 INFO zlib.ZlibFactory: Successfully loaded & initialized native-zlib library
Native library checking:
hadoop: true /opt/cloudera/parcels/CDH-5.16.1-1.cdh5.16.1.p0.3/lib/hadoop/lib/native/libhadoop.so.1.0.0
zlib: true /lib/x86_64-linux-gnu/libz.so.1
snappy: true /opt/cloudera/parcels/CDH-5.16.1-1.cdh5.16.1.p0.3/lib/hadoop/lib/native/libsnappy.so.1
lz4: true revision:10301
bzip2: true /lib/x86_64-linux-gnu/libbz2.so.1
openssl: true /usr/lib/x86_64-linux-gnu/libcrypto.so