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

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

Hive2.x壓縮配置教程

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

Map輸出壓縮

除了創(chuàng)建表時指定保存數據時壓縮,在查詢分析過程中,Map的輸出也可以進行壓縮。由于map任務的輸出需要寫到磁盤并通過網絡傳輸到reducer節(jié)點,所以通過使用LZO、LZ4或者Snappy這樣的快速壓縮方式,是可以獲得性能提升的,因為需要傳輸的數據減少了。

·MapReduce配置項:

mapreduce.map.output.compress

·設置是否啟動map輸出的壓縮機制,默認為false。在需要減少網絡傳輸的時候,可以設置為true。

mapreduce.map.output.compress.codec

設置map輸出壓縮機制,默認為org.apache.hadoop.io.compress.DefaultCodec,推薦使用SnappyCodec:org.apache.hadoop.io.compress.SnappyCodec。

Hive2.x壓縮配置01


Reduce結果壓縮

是否對任務輸出產生的結果進行壓縮,默認值false。對傳輸數據進行壓縮,既可以減少文件的存儲空間,又可以加快數據在網絡不同節(jié)點之間的傳輸速度。

配置項:mapreduce.output.fileoutputformat.compress

Hive2.x壓縮配置02

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

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

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

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

·mapreduce.output.fileoutputformat.compress.type

輸出產生任務數據的壓縮方式,默認值RECORD,可配置值有:NONE、RECORD、BLOCK。推薦使用BLOCK,即針對一組記錄進行批量壓縮,壓縮效率更高。

Hive2.x壓縮配置03

Hive的Map-Reduce之間是否進行壓縮

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

set hive.exec.compress.intermediate=true;

Hive查詢最終結果壓縮

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

set hive.exec.compress.output=true;


猜你喜歡:
大數據培訓課程

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