hive支援的壓縮演算法
阿新 • • 發佈:2022-12-08
壓縮格式的設定
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 |