Hive 壓縮格式

2021-10-07 14:22:53 字數 2034 閱讀 4426

常見壓縮格式

壓縮方式

壓縮比壓縮速度

解壓縮速度

是否可分割

gzip

13.4%

21 mb/s

118 mb/s

否bzip2

13.2%

2.4mb/s

9.5mb/s

是lzo

20.5%

135 mb/s

410 mb/s

是22.2%

172 mb/s

409 mb/s

否壓縮格式對應的編/解碼器

壓縮格式

對應的編/解碼器

deflate

org.apache.hadoop.io.compress.defaultcodec

gzip

org.apache.hadoop.io.compress.gzipcodec

bzip2

org.apache.hadoop.io.compress.bzip2codec

lzocom.hadoop.compress.lzo.lzopcodec

壓縮引數配置

1.在hadoop中配置(mapred-site.xml檔案)

引數預設值

io.compression.codecs (在core-site.xml中配置)

org.apache.hadoop.io.compress.defaultcodec,

org.apache.hadoop.io.compress.gzipcodec,

org.apache.hadoop.io.compress.bzip2codec,

org.apache.hadoop.io.compress.lz4codec

mapreduce.map.output.compress

false

mapreduce.map.output.compress.codec

org.apache.hadoop.io.compress.defaultcodec

mapreduce.output.fileoutputformat.compress

false

mapreduce.output.fileoutputformat.compress.codec

org.apache.hadoop.io.compress.defaultcodec

mapreduce.output.fileoutputformat.compress.type

record

2.hive命令列session級別

(1) 開啟map輸出階段壓縮

#開啟hive中間傳輸資料壓縮功能

set hive.

exec

.compress.intermediate=

true

;#開啟map階段輸出壓縮功能

set mapreduce.map.output.compress=

true

;#設定map階段的壓縮方式

(2) 開啟reduce輸出階段壓縮

#開啟hive最終輸出壓縮

set hive.

exec

.compress.output=

true

;#開啟mapreduce最終輸出壓縮

set mapreduce.output.fileoutputformat.compress=

true

;#設定mapreduce最終輸出壓縮方式

#設定mapreduce最終輸出壓縮為塊壓縮

set mapreduce.output.fileoutputformat.compress.

type

=block;

總結
沒有一勞永逸的壓縮格式,要根據實際情況合理選用。選擇標準主要有如下三點:

壓縮比:壓縮比越高,壓縮後檔案越小;

壓縮效率:越快越好;

壓縮檔案是否支援再分割:這會影響map階段的並行;

Hive常見的壓縮格式

io.compression.codecsname org.apache.hadoop.io.compress.gzipcodec,org.apache.hadoop.io.compress.defaultcodec,com.hadoop.compression.lzo.lzocodec,com.h...

hive的資料壓縮格式和儲存格式

1.textfile hive資料表的預設格式 可以使用gzip壓縮演算法,但壓縮後的檔案不支援split 2.sequencefile sequence file是可分割的檔案格式,支援hadoop的block級壓縮。3.rcfile 資料按行分塊,每塊按列儲存 4.orcfile 資料按行分塊,...

建立GZIP壓縮格式的HIVE表

author kwu gzip為linux系統中最常用的壓縮格式,建立gzip壓縮格式的hive表具體步驟如下。1 以 stored as textfile 為儲存格式建立hive表 create table tracklog dateday string comment 日期 ip string ...