欧美成人午夜免费全部完,亚洲午夜福利精品久久,а√最新版在线天堂,另类亚洲综合区图片小说区,亚洲欧美日韩精品色xxx

扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)之Hive實(shí)踐分享之存儲(chǔ)和壓縮問(wèn)題的詳解

2018-12-25 14:58:19 1547瀏覽

今天扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)老師給大家分享一篇關(guān)于Hive實(shí)踐分享之存儲(chǔ)和壓縮的坑詳解,首先大多數(shù)同學(xué)在學(xué)習(xí)大數(shù)據(jù)技術(shù)的過(guò)程中,Hive是非常重要的技術(shù)之一,但我們?cè)陧?xiàng)目上經(jīng)常會(huì)遇到一些存儲(chǔ)和壓縮的坑,本文通過(guò)科多大數(shù)據(jù)的武老師整理,分享給大家。



大家都知道,由于集群資源有限,我們一般都會(huì)針對(duì)數(shù)據(jù)文件的「存儲(chǔ)結(jié)構(gòu)」和「壓縮形式」進(jìn)行配置優(yōu)化。在我實(shí)際查看以后,發(fā)現(xiàn)集群的文件存儲(chǔ)格式為Parquet,一種列式存儲(chǔ)引擎,類似的還有ORC。而文件的壓縮形式為Snappy。具體的操作形式如下:

①創(chuàng)建Parquet結(jié)構(gòu)的表(Hive0.13andlater):

CREATE TABLE CRM.DEMO(A INT) STORED AS PARQUET ; 

②確認(rèn)表的文件存儲(chǔ)格式:

desc formatted crm.demo; 

結(jié)果輸出如下

# Storage Information              
SerDe Library:          org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe       
InputFormat:                 org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat      
OutputFormat:               org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat 

③創(chuàng)建Snappy壓縮格式的Parquet結(jié)構(gòu)的表(待考察):

ALTER TABLE crm.demo SET TBLPROPERTIES ('parquet.compression'='SNAPPY') ; 

或,寫入時(shí)
SET parquet.compression=SNAPPY ; 

回到最初的問(wèn)題,如果是按Snappy壓縮的格式,這份用戶行為數(shù)據(jù)沒(méi)辦法分析了,因此有兩種辦法去解決:

①安裝Snappy的解壓工具

可自行百度,由于沒(méi)有權(quán)限,所以這條路行不通;

②更改數(shù)據(jù)的壓縮格式可以

最初我試了一下更改Parquet格式表的壓縮格式,但是沒(méi)有用!因?yàn)槲易詈笫切枰獙⒉樵償?shù)據(jù)導(dǎo)出到本地文件系統(tǒng),如下語(yǔ)句所示:

insert overwrite local directory '/home/etl/tmp/data' 
select * from crm.demo 

所以,通過(guò)這樣的形式得到的數(shù)據(jù),壓縮格式依然是.Snappy。因此,這里就需要配置Hive執(zhí)行過(guò)程中的中間數(shù)據(jù)和最終數(shù)據(jù)的壓縮格式。

如MapReduce的shuffle階段對(duì)mapper產(chǎn)生的中間結(jié)果數(shù)據(jù)壓縮:

hive> set mapred.map.output.compression.codec;  
mapred.map.output.compression.codec=org.apache.hadoop.io.compress.SnappyCodec 

如對(duì)最終生成的Hive表的數(shù)據(jù)壓縮:

hive> set mapred.output.compression.codec;  
mapred.output.compression.codec=org.apache.hadoop.io.compress.SnappyCodec 

這里,我們要設(shè)置結(jié)果表數(shù)據(jù)的壓縮格式,語(yǔ)句如下:

set mapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec; 

最終的結(jié)果就是.gz的壓縮格式

-rw-r--r-- 1 etl etl 342094 May 10 11:13 000000_0.gz 

最后,我們直接下載到電腦本地,直接解壓就可以通過(guò)Excel分析用戶行為路徑數(shù)據(jù)了。從Hive應(yīng)用層的角度來(lái)說(shuō),關(guān)于數(shù)據(jù)文件的「存儲(chǔ)結(jié)構(gòu)」和「壓縮形式」,這兩個(gè)點(diǎn)我們不需要關(guān)心,只是在導(dǎo)出數(shù)據(jù)的時(shí)候需要結(jié)合文件大小,以及數(shù)據(jù)類型去設(shè)置合適的壓縮格式。不過(guò)從Hive底層維護(hù)的角度來(lái)說(shuō),涉及到各種各樣的「存儲(chǔ)結(jié)構(gòu)」和「壓縮形式」,都需要開發(fā)者去研究和調(diào)整,這樣才能保證集群上的文件在「時(shí)間」和「空間」上相對(duì)平衡。

以上就是關(guān)于扣丁學(xué)堂大數(shù)據(jù)培訓(xùn)之Hive實(shí)踐分享之存儲(chǔ)和壓縮問(wèn)題的詳解,希望對(duì)同學(xué)們學(xué)習(xí)大數(shù)據(jù)開發(fā)有所幫助,想要了解更多內(nèi)容的小伙伴可以登錄扣丁學(xué)堂官網(wǎng)咨詢。想要學(xué)好大數(shù)據(jù)開發(fā)小編給大家推薦口碑良好的扣丁學(xué)堂,扣丁學(xué)堂有專業(yè)老師制定的大數(shù)據(jù)學(xué)習(xí)路線圖輔助學(xué)員學(xué)習(xí),此外還有與時(shí)俱進(jìn)的大數(shù)據(jù)視頻直播課供大家學(xué)習(xí),想要學(xué)好大數(shù)據(jù)開發(fā)技術(shù)的小伙伴快快行動(dòng)吧??鄱W(xué)堂大數(shù)據(jù)學(xué)習(xí)群:209080834


扣丁學(xué)堂微信公眾號(hào)


【關(guān)注微信公眾號(hào)獲取更多學(xué)習(xí)資料】 


查看更多關(guān)于“大數(shù)據(jù)培訓(xùn)資訊”的相關(guān)文章>


標(biāo)簽: 大數(shù)據(jù)培訓(xùn) 大數(shù)據(jù)視頻教程 大數(shù)據(jù)分析培訓(xùn) 大數(shù)據(jù)學(xué)習(xí)視頻 Hadoop生態(tài)圈

熱門專區(qū)

暫無(wú)熱門資訊

課程推薦

微信
微博
15311698296

全國(guó)免費(fèi)咨詢熱線

郵箱:codingke@1000phone.com

官方群:148715490

北京千鋒互聯(lián)科技有限公司版權(quán)所有   北京市海淀區(qū)寶盛北里西區(qū)28號(hào)中關(guān)村智誠(chéng)科創(chuàng)大廈4層
京ICP備2021002079號(hào)-2   Copyright ? 2017 - 2022
返回頂部 返回頂部