欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Hive的存儲(chǔ)格式對(duì)比

在生產(chǎn)中可以通過Hive表的文件格式及查詢速度的對(duì)比來確定使用哪種文件格式,以節(jié)省空間和提高查詢速度;

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),浚縣企業(yè)網(wǎng)站建設(shè),浚縣品牌網(wǎng)站建設(shè),網(wǎng)站定制,浚縣網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,浚縣網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

官方參考文檔:https://cwiki.apache.org/confluence/display/HIVE

結(jié)論:

????壓縮效果:

????????最好的是:bzip2;bzip2壓縮比很高,但是占用時(shí)間較久

????? ? 其次:orc和parquet的壓縮幾乎一致;生產(chǎn)建議選擇orc或者parquet;?

????查詢性能:由于數(shù)據(jù)量太小,得出的結(jié)果不準(zhǔn)確;大佬的生產(chǎn)經(jīng)驗(yàn)是parquet的查詢性能要優(yōu)于orc;

Hive支持的存儲(chǔ)格式有:

? ? Text File

????SequenceFile

????RCFile

????Avro Files

????ORC Files

????Parquet

注:Hive默認(rèn)的格式為Text File,可以通過set hive.default.fileformat查看

>?set?hive.default.fileformat;
hive.default.fileformat=TextFile

以下將對(duì)每種文件格式進(jìn)行對(duì)比:

創(chuàng)建TextFile表

#原始數(shù)據(jù)格式為TextFile,大小為65M
[hadoop@hadoop001?~]$?hadoop?fs?-du?-s?-h?/input/*
64.9?M??194.7?M??/input/part-r-00000

#創(chuàng)建表并加載TextFile數(shù)據(jù)
CREATE?EXTERNAL?TABLE?textfile?(
cdn?string,?
region?string,?
level?string,?
time?string,?
ip?string,?
domain?string,?
url?string,?
traffic?bigint)
ROW?FORMAT?DELIMITED?FIELDS?TERMINATED?BY?'\t';?

load?data?local?inpath?'/home/hadoop/part-r-00000'?overwrite?into?table?textfile;

可以看到此數(shù)據(jù)大小的64.9M

Hive的存儲(chǔ)格式對(duì)比

從上面的表中創(chuàng)建一個(gè)bzip2壓縮的表:

hive支持在創(chuàng)建表的時(shí)候?qū)?shù)據(jù)進(jìn)行壓縮,配置如下:

設(shè)置開啟壓縮:set?hive.exec.compress.output=true;

查看壓縮的格式:set mapreduce.output.fileoutputformat.compress.codec;

配置壓縮的格式:set mapreduce.output.fileoutputformat.compress.codec=org.apache.hadoop.io.compress.BZip2Codec

#創(chuàng)建一個(gè)bzip2壓縮的表
create?table?textfile_bzip2?as?select?*?from?textfile;

可以看到啟動(dòng)壓縮以后,大小只有13.84M,格式為bz2

Hive的存儲(chǔ)格式對(duì)比

創(chuàng)建SequenceFile表

#創(chuàng)建SequenceFile表
CREATE?EXTERNAL?TABLE?seqfile?(
cdn?string,?
region?string,?
level?string,?
time?string,?
ip?string,?
domain?string,?
url?string,?
traffic?bigint)
ROW?FORMAT?DELIMITED?FIELDS?TERMINATED?BY?'\t'
stored?as?sequencefile;

#加載數(shù)據(jù)
insert?into?table?seqfile?select?*?from?textfile;
注:默認(rèn)用load加載數(shù)據(jù)時(shí),由于源文件是textfile,而表格式為sequencefile,所以無法直接加載,要借用一個(gè)臨時(shí)表使用insert?into進(jìn)行加載

可以看到sequencefile格式的表數(shù)據(jù)比原始文件還要大,這是因?yàn)閟equencefile表在創(chuàng)建時(shí),增加了很多額外信息,在生產(chǎn)中不使用此種類型的文件格式;

Hive的存儲(chǔ)格式對(duì)比

創(chuàng)建RCFile表

#創(chuàng)建RCFile表
CREATE?EXTERNAL?TABLE?rcfile?(
cdn?string,?
region?string,?
level?string,?
time?string,?
ip?string,?
domain?string,?
url?string,?
traffic?bigint)
ROW?FORMAT?DELIMITED?FIELDS?TERMINATED?BY?'\t'
stored?as?rcfile;

#加載數(shù)據(jù)
insert?into?table?rcfile?select?*?from?textfile;

rcfile的作用僅僅是將存儲(chǔ)空間節(jié)省了10%左右,在生產(chǎn)中不使用此種文件格式;

創(chuàng)建ORC Files:orc是基于rc,是優(yōu)化過后的列式存儲(chǔ)

關(guān)于orc的官方介紹:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+ORC

#創(chuàng)建orc格式的表;默認(rèn)orcfile是采用zlib格式進(jìn)行壓縮
CREATE?EXTERNAL?TABLE?orcfile?(
cdn?string,?
region?string,?
level?string,?
time?string,?
ip?string,?
domain?string,?
url?string,?
traffic?bigint)
ROW?FORMAT?DELIMITED?FIELDS?TERMINATED?BY?'\t'
stored?as?orcfile;

#加載數(shù)據(jù)
insert?into?table?orcfile?select?*?from?textfile;

#創(chuàng)建orc格式的表,指定不采用zlib壓縮;通過"orc.compress"="NONE"指定
create?table?orcfile_none
stored?as?orc?tblproperties?("orc.compress"="NONE")?
as?select?*?from?textfile;

orcfile采用zlib壓縮:

Hive的存儲(chǔ)格式對(duì)比

orcfile不采用zlib壓縮:

Hive的存儲(chǔ)格式對(duì)比

總結(jié):通過對(duì)比,采用zlib壓縮時(shí),節(jié)省的空間更多一點(diǎn)

創(chuàng)建Parquet格式的表

#創(chuàng)建Parquet格式不使用壓縮
create?table?parquetfile
stored?as?parquet
as?select?*?from?textfile;


#創(chuàng)建Parquet格式使用gzip壓縮
set?parquet.compression=gzip;

create?table?parquetfile_gzip
stored?as?parquet
as?select?*?from?textfile;

注:通過對(duì)比,Parquet格式使用gzip壓縮時(shí),可以節(jié)省大量的空間

parquet不經(jīng)過gzip壓縮:可以看到幾乎沒有壓縮多少空間

Hive的存儲(chǔ)格式對(duì)比

parquet經(jīng)過gzip壓縮:可以看到壓縮后的數(shù)據(jù)很代;

Hive的存儲(chǔ)格式對(duì)比

????

查詢性能對(duì)比:

查詢語句:select count(*) from textfile|rcfile|orcfile|parquetfile where ip='210.35.230.31';

查詢條數(shù):

????textfile:查詢了全表的所有數(shù)據(jù),查詢68085397條數(shù)據(jù);

????rcfile:查詢1973371條數(shù)據(jù);

????orcfile:查詢2883851條數(shù)據(jù);

????parquetfile:查詢了8622602條數(shù)據(jù);

新聞標(biāo)題:Hive的存儲(chǔ)格式對(duì)比
文章鏈接:http://chinadenli.net/article44/gsghhe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)ChatGPT網(wǎng)站營銷建站公司App設(shè)計(jì)網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作