Hadoop和HBase中的壓縮算法讳嘱、壓縮比和壓縮配置介紹(詳細(xì))

adoop中常用的壓縮算法有bzip2、gzip酿愧、lzo沥潭、snappy,其中l(wèi)zo嬉挡、snappy需要操作系統(tǒng)安裝native庫(kù)才可以支持钝鸽。

下面這張表,是比較官方一點(diǎn)的統(tǒng)計(jì)庞钢,不同的場(chǎng)合用不同的壓縮算法寞埠。bzip2和GZIP是比較消耗CPU的,壓縮比最高焊夸,GZIP不能被分塊并行的處理仁连;Snappy和LZO差不多,稍微勝出一點(diǎn)阱穗,cpu消耗的比GZIP少饭冬。

通常情況下,想在CPU和IO之間取得平衡的話揪阶,用Snappy和lzo比較常見一些昌抠。

Comparison between compression algorithms

其中:

1)GZIP的壓縮率最高,但是其實(shí)CPU密集型的鲁僚,對(duì)CPU的消耗比其他算法要多炊苫,壓縮和解壓速度也慢;

2)LZO的壓縮率居中冰沙,比GZIP要低一些侨艾,但是壓縮和解壓速度明顯要比GZIP快很多,其中解壓速度快的更多拓挥;

3)Zippy/Snappy的壓縮率最低唠梨,而壓縮和解壓速度要稍微比LZO要快一些。

對(duì)于數(shù)據(jù)格式為TextFile侥啤,Sequence当叭,以及其他用戶自定義的文件格式的文件茬故,都可以采用以上的壓縮算法進(jìn)行壓縮;

TextFile在壓縮以后蚁鳖,不能split磺芭,壓縮出來的數(shù)據(jù)當(dāng)做job的輸入是一個(gè)文件作為一個(gè)map。SequenceFile本身是分塊的醉箕,加上lzo的壓縮格式徘跪,文件可以實(shí)現(xiàn)lzo方式的split操作,可以按照record琅攘、block進(jìn)行壓縮,一般采用block效率更高一些松邪。

一坞琴、hadoop(hive)對(duì)mapreduce壓縮參數(shù)設(shè)置

1、mapreduce的中間結(jié)果對(duì)壓縮的支持

方法一:

hadoop 中 mapred-site.xml

mapred.compress.map.output

true

mapred.map.output.compression.codec

com.hadoop.compression.lzo.LzoCodec

方法二

hive中hive-site.xml

hive.exec.compress.intermediate

true

Should the outputs of the maps be compressed before being

sent across the network. Uses SequenceFile compression.

hive.intermediate.compression.codec

org.apache.hadoop.io.compress.LzoCodec

If the map outputs are compressed, how should they be

compressed?

方法三

hive中shell

set hive.exec.compress.intermediate=true;

set hive.intermediate.compression.codec="org.apache.hadoop.io.compress.LzoCodec";

2逗抑、mapreduce的輸出結(jié)果對(duì)壓縮的支持

hive-site.xml中配置:

hive.exec.compress.output

true

Should the job outputs be compressed?

mapred.output.compression.codec

org.apache.hadoop.io.compress.LzoCodec

If the job outputs are compressed, how should they be compressed?

或者在hadoop-site.xml中添加:

io.compression.codecs

org.apache.hadoop.io.compress.DefaultCodec,org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.BZip2Codec,org.apache.hadoop.io.compress.LzoCodec

A list of the compression codec classes that can be used

for compression/decompression.

mapred.output.compress

true

Should the job outputs be compressed?

mapred.output.compression.codec

org.apache.hadoop.io.compress.LzoCodec

If the job outputs are compressed, how should they be compressed?

二剧辐、HBASE對(duì)這三種壓縮格式的支持

HBase中可以對(duì)HFile進(jìn)行g(shù)zip、lzo邮府、snappy方式的壓縮存儲(chǔ)荧关。

1、對(duì)于gzip壓縮的支持

hbase(main):001:0> create 'testtable', { NAME => 'colfam1',

COMPRESSION => 'GZ' }

或者alter 'testtable'褂傀,不過要先disable table忍啤,完成壓縮后,再enable table

2仙辟、對(duì)于lzo的支持同波,需要系統(tǒng)安裝lzo動(dòng)態(tài)庫(kù),以及hadoop lzo相關(guān)的native庫(kù)叠国,后把native庫(kù)jar文件copy到hadoop/lib/native 及 hbase/lib/native中

同時(shí)在core-site.xml中未檩,配置lzo壓縮

io.compression.codecs

org.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.DefaultCodec,com.hadoop.compression.lzo.LzoCodec,com.hadoop.compression.lzo.LzopCodec

io.compression.codec.lzo.class

com.hadoop.compression.lzo.LzoCodec

org.apache.hadoop.io.compress.DefaultCodec是hadoop默認(rèn)的zlib壓縮

hbase(main):001:0> create 'testtable', { NAME => 'colfam1',

COMPRESSION => 'lzo' }

3、 對(duì)于synappy的支持粟焊,需要安裝snappy冤狡,并且 將 hadoop-snappy-0.0.1-SNAPSHOT.tar.gz 的native中的動(dòng)態(tài)靜態(tài)鏈接庫(kù)文件拷到hadoop以及hbase lib的native下面,將hadoop-snappy-0.0.1-SNAPSHOT.jar考到hadoop 以及hbase 的lib下

在core-site.xml中项棠,配置lzo壓縮

io.compression.codecs

org.apache.hadoop.io.compress.SnappyCodec

hbase(main):001:0> create 'testtable', { NAME => 'colfam1',

COMPRESSION => 'synappy' }

小編這里整理了更多相關(guān)的 學(xué)習(xí)資料和 學(xué)習(xí)視頻悲雳,可免費(fèi)領(lǐng)取。

加 VX:17778119562? ? ? ? 通過驗(yàn)證備注:111(備注必填香追,方便通過)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末怜奖,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子翅阵,更是在濱河造成了極大的恐慌歪玲,老刑警劉巖迁央,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異滥崩,居然都是意外死亡岖圈,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門钙皮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蜂科,“玉大人,你說我怎么就攤上這事短条〉枷唬” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵茸时,是天一觀的道長(zhǎng)贡定。 經(jīng)常有香客問我,道長(zhǎng)可都,這世上最難降的妖魔是什么缓待? 我笑而不...
    開封第一講書人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮渠牲,結(jié)果婚禮上旋炒,老公的妹妹穿的比我還像新娘。我一直安慰自己签杈,他們只是感情好瘫镇,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著答姥,像睡著了一般汇四。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上踢涌,一...
    開封第一講書人閱讀 51,754評(píng)論 1 307
  • 那天通孽,我揣著相機(jī)與錄音,去河邊找鬼睁壁。 笑死背苦,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的潘明。 我是一名探鬼主播行剂,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼钳降!你這毒婦竟也來了厚宰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎铲觉,沒想到半個(gè)月后澈蝙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡撵幽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年灯荧,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盐杂。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡逗载,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出链烈,到底是詐尸還是另有隱情厉斟,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布强衡,位于F島的核電站擦秽,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏食侮。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一目胡、第九天 我趴在偏房一處隱蔽的房頂上張望锯七。 院中可真熱鬧,春花似錦誉己、人聲如沸眉尸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)噪猾。三九已至,卻和暖如春筑累,著一層夾襖步出監(jiān)牢的瞬間袱蜡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工慢宗, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留坪蚁,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓镜沽,卻偏偏與公主長(zhǎng)得像敏晤,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子缅茉,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1 gzip壓縮 優(yōu)點(diǎn):壓縮率比較高嘴脾,而且壓縮/解壓速度也比較快;hadoop本身支持蔬墩,在應(yīng)用中處理gzip格式的...
    scottzcw閱讀 5,643評(píng)論 0 0
  • github鏈接 針對(duì)Hive的優(yōu)化主要有以下幾個(gè)方面: map reduce file format shuff...
    zoyanhui閱讀 6,174評(píng)論 2 33
  • Spark SQL, DataFrames and Datasets Guide Overview SQL Dat...
    草里有只羊閱讀 18,327評(píng)論 0 85
  • 手頭積攢著兩本《無償獻(xiàn)血證》译打。 之所以說積攢耗拓,是自從2011年開始,自己這幾年來斷斷續(xù)續(xù)獻(xiàn)血的記錄累計(jì)扶平。 其實(shí)很早...
    怣慧閱讀 707評(píng)論 12 8
  • 已經(jīng)快進(jìn)入十月份了帆离,天氣還是熱,早晚已經(jīng)有了點(diǎn)秋涼结澄,總體是舒適哥谷。 昨天傍晚,待嘎娃返校后麻献,嘎爹嘎娘回老家们妥。 路邊玉...
    a宮雨閱讀 256評(píng)論 0 3