hive支持的压缩算法
压缩格式的设置
set mapred.output.compression=
压缩格式 | 工具 | 算法 | 扩展名 | 是否支持分割 | Hadoop编码/解码器 |
---|---|---|---|---|---|
default | deflate | .deflate | No | org.apache.hadoop.io.compress.DefaultCodec | |
gzip | gzip | deflate | .gz | No | org.apache.hadoop.io.compress.GzipCodec |
bzip2 | bzip2 | bzip2 | .bz2 | Yes | org.apache.hadoop.io.compress.BZip2Codec |
LZO | Lzop | LZO | .lzo | Yes(if index) | org.apache.hadoop.lzo.LzoCodec |
LZ4 | LZ4 | .lz4 | No | org.apache.hadoop.io.compress.Lz4Codec | |
Snappy | Snappy | .snappy | No | org.apache.hadoop.io.compress.SnappyCodec |
案例
压缩格式压缩率
压缩格式 | 解压缩速度 | 压缩比 | 是否支持分片 | 优缺点 |
---|---|---|---|---|
Snappy | 解压缩速度快 | 压缩比低 | 不支持分片 | 支持hadoop native库;hadoop本身不支持,需要安装;linux系统下没有对应的命令 |
LZO | 解压缩速度快 | 压缩比低 | 支持分片 | 需在linux系统下自行安装lzop命令,使用方便;lzo虽然支持split,但需要对lzo文件建索引,否则hadoop会把lzo文件看成一个普通文件。 |
GZIP | 解压缩速度慢 | 压缩比高 | 不支持分片 | hadoop本身支持,在应用中处理gzip格式的文件和直接处理文本一样,有hadoop native库,大部分linux系统都自带gzip命令。 |
BZIP2 | 解压缩速度慢 | 压缩比高 | 支持分片 | hadoop本身支持,在linux系统下自带bzip2命令;不支持native |
本文来自博客园,作者:jsqup,转载请注明原文链接:https://www.cnblogs.com/jsqup/p/16966228.html