優點: 1,減少儲存磁碟空間,降低單節點的磁碟io。
2,由於壓縮後的資料占用的頻寬更少,因此可以加快資料在hadoop集群流動的速度。例如在不同節點建立3個replica的階段,或是shuffle階段。
首先說明mapreduce哪些過程可以設定壓縮:需要分析處理的資料在進入map前可以壓縮,然後解壓處理,map處理完成後的輸出可以壓縮,這樣可以減少網路i/o(reduce通常和map不在同一節點上),reduce拷貝壓縮的資料後進行解壓,處理完成後可以壓縮儲存在hdfs上,以減少磁碟佔用量。
3.1設定啟用壓縮:
有兩種方式可以設定資料壓縮:
方法一:在.sql指令碼設定如下引數
set hive.exec.compress.intermediate=true --啟用中間資料壓縮set hive.exec.compress.output=true; -- 啟用最終資料輸出壓縮
set mapreduce.output.fileoutputformat.compress=true; --啟用reduce輸出壓縮
set mapreduce.map.output.compress=true; --啟用map輸入壓縮
方法二:通過設定hive-site.xml檔案設定啟用中間資料壓縮,配置檔案如下:
hive.exec.compress.intermediate
true
hive.exec.compress.output
true
mapreduce.map.output.compress
true
mapreduce.map.output.compress.codec
mapreduce.output.fileoutputformat.compress
true
mapreduce.output.fileoutputformat.compress.codec
Hive 壓縮格式
常見壓縮格式 壓縮方式 壓縮比壓縮速度 解壓縮速度 是否可分割 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 否壓縮格式對應的編 解...
hive新增壓縮
hive在儲存資料時會對hdfs上的資料做對映,在mysql中僅僅儲存的是元資料資訊。所有的資料都是儲存在hdfs上的。現在有個需求是需要對hive操作生成的資料改為壓縮資料儲存,提高hdfs的儲存空間利用率。這裡有幾點需要記錄的 1.如果是本地檔案通過hadoop fs put 操作上傳到hdfs...
Hive之壓縮儲存
壓縮儲存有時候可以獲得更好的效能。使用textfile儲存時,可以使用gzip或者bzip2進行壓縮。操作如下 create table raw line string row format delimited fieldsterminated by t lines terminated by n ...