教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Hive2.x壓縮配置教程

更新時間:2020年07月30日15時24分 來源:傳智播客 瀏覽次數(shù):

Map輸出壓縮

除了創(chuàng)建表時指定保存數(shù)據(jù)時壓縮,在查詢分析過程中,Map的輸出也可以進(jìn)行壓縮。由于map任務(wù)的輸出需要寫到磁盤并通過網(wǎng)絡(luò)傳輸?shù)絩educer節(jié)點(diǎn),所以通過使用LZO、LZ4或者Snappy這樣的快速壓縮方式,是可以獲得性能提升的,因?yàn)樾枰獋鬏數(shù)臄?shù)據(jù)減少了。

·MapReduce配置項(xiàng):

mapreduce.map.output.compress

·設(shè)置是否啟動map輸出的壓縮機(jī)制,默認(rèn)為false。在需要減少網(wǎng)絡(luò)傳輸?shù)臅r候,可以設(shè)置為true。

mapreduce.map.output.compress.codec

設(shè)置map輸出壓縮機(jī)制,默認(rèn)為org.apache.hadoop.io.compress.DefaultCodec,推薦使用SnappyCodec:org.apache.hadoop.io.compress.SnappyCodec。

Hive2.x壓縮配置01


Reduce結(jié)果壓縮

是否對任務(wù)輸出產(chǎn)生的結(jié)果進(jìn)行壓縮,默認(rèn)值false。對傳輸數(shù)據(jù)進(jìn)行壓縮,既可以減少文件的存儲空間,又可以加快數(shù)據(jù)在網(wǎng)絡(luò)不同節(jié)點(diǎn)之間的傳輸速度。

配置項(xiàng):mapreduce.output.fileoutputformat.compress

Hive2.x壓縮配置02

Hive執(zhí)行過程通用壓縮設(shè)置

主要包括壓縮/解碼器設(shè)置和壓縮方式設(shè)置:

·mapreduce.output.fileoutputformat.compress.codec(Yarn)

map輸出所用的壓縮codec,默認(rèn)為org.apache.hadoop.io.compress.DefaultCodec,推薦使用SnappyCodec:org.apache.hadoop.io.compress.SnappyCodec。

·mapreduce.output.fileoutputformat.compress.type

輸出產(chǎn)生任務(wù)數(shù)據(jù)的壓縮方式,默認(rèn)值RECORD,可配置值有:NONE、RECORD、BLOCK。推薦使用BLOCK,即針對一組記錄進(jìn)行批量壓縮,壓縮效率更高。

Hive2.x壓縮配置03

Hive的Map-Reduce之間是否進(jìn)行壓縮

控制 Hive 在多個 map-reduce 作業(yè)之間生成的中間 files 是否被壓縮。壓縮編解碼器和其他選項(xiàng)由上面Job的變量mapreduce.output.fileoutputformat.compress.*確定。

set hive.exec.compress.intermediate=true;

Hive查詢最終結(jié)果壓縮

控制是否壓縮查詢的最終輸出(到 local/hdfs 文件或 Hive table)。壓縮編解碼器和其他選項(xiàng)由 上面Job中的變量mapreduce.output.fileoutputformat.compress.*確定。

set hive.exec.compress.output=true;


猜你喜歡:
大數(shù)據(jù)培訓(xùn)課程

0 分享到:
和我們在線交談!