真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

hive怎么建立表存儲(chǔ)格式

本篇內(nèi)容主要講解“hive怎么建立表存儲(chǔ)格式”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“hive怎么建立表存儲(chǔ)格式”吧!

創(chuàng)新互聯(lián)建站成立10余年來(lái),這條路我們正越走越好,積累了技術(shù)與客戶(hù)資源,形成了良好的口碑。為客戶(hù)提供做網(wǎng)站、成都網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)頁(yè)設(shè)計(jì)、域名注冊(cè)、網(wǎng)絡(luò)營(yíng)銷(xiāo)、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。網(wǎng)站是否美觀、功能強(qiáng)大、用戶(hù)體驗(yàn)好、性?xún)r(jià)比高、打開(kāi)快等等,這些對(duì)于網(wǎng)站建設(shè)都非常重要,創(chuàng)新互聯(lián)建站通過(guò)對(duì)建站技術(shù)性的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究為客戶(hù)提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶(hù),共同發(fā)展進(jìn)步。

hive在建表是,可以通過(guò)‘STORED AS FILE_FORMAT’ 指定存儲(chǔ)文件格式
例如:

[plain]view plaincopy

  1. > CREATE EXTERNAL TABLE MYTEST(num INT, name STRING)  

  2. > ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t'  

  3. > STORED AS TEXTFILE  

  4. > LOCATION '/data/test';  

指定文件存儲(chǔ)格式為“TEXTFILE”。

hive文件存儲(chǔ)格式包括以下幾類(lèi):

  • TEXTFILE

  • SEQUENCEFILE

  • RCFILE

  • 自定義格式

TEXTFIEL
默認(rèn)格式,數(shù)據(jù)不做壓縮,磁盤(pán)開(kāi)銷(xiāo)大,數(shù)據(jù)解析開(kāi)銷(xiāo)大。
可結(jié)合Gzip、Bzip2使用(系統(tǒng)自動(dòng)檢查,執(zhí)行查詢(xún)時(shí)自動(dòng)解壓),但使用這種方式,hive不會(huì)對(duì)數(shù)據(jù)進(jìn)行切分,從而無(wú)法對(duì)數(shù)據(jù)進(jìn)行并行操作。
實(shí)例:

[plain]view plaincopy

  1. > create table test1(str STRING)  

  2. > STORED AS TEXTFILE;   

  3. OK  

  4. Time taken: 0.786 seconds  

  5. #寫(xiě)腳本生成一個(gè)隨機(jī)字符串文件,導(dǎo)入文件:  

  6. > LOAD DATA LOCAL INPATH '/home/work/data/test.txt' INTO TABLE test1;  

  7. Copying data from file:/home/work/data/test.txt  

  8. Copying file: file:/home/work/data/test.txt  

  9. Loading data to table default.test1  

  10. OK  

  11. Time taken: 0.243 seconds  


SEQUENCEFILE:
SequenceFile是Hadoop API提供的一種二進(jìn)制文件支持,其具有使用方便、可分割、可壓縮的特點(diǎn)。
SequenceFile支持三種壓縮選擇:NONE, RECORD, BLOCK。 Record壓縮率低,一般建議使用BLOCK壓縮。
示例:

[plain]view plaincopy

  1. > create table test2(str STRING)  

  2. > STORED AS SEQUENCEFILE;  

  3. OK  

  4. Time taken: 5.526 seconds  

  5. hive> SET hive.exec.compress.output=true;  

  6. hive> SET io.seqfile.compression.type=BLOCK;  

  7. hive> INSERT OVERWRITE TABLE test2 SELECT * FROM test1;  


RCFILE
RCFILE是一種行列存儲(chǔ)相結(jié)合的存儲(chǔ)方式。首先,其將數(shù)據(jù)按行分塊,保證同一個(gè)record在一個(gè)塊上,避免讀一個(gè)記錄需要讀取多個(gè)block。其次,塊數(shù)據(jù)列式存儲(chǔ),有利于數(shù)據(jù)壓縮和快速的列存取。RCFILE文件示例:

hive怎么建立表存儲(chǔ)格式

實(shí)例:

[plain]view plaincopy

  1. > create table test3(str STRING)  

  2. > STORED AS RCFILE;  

  3. OK  

  4. Time taken: 0.184 seconds  

  5. >  INSERT OVERWRITE TABLE test3 SELECT * FROM test1;  


自定義格式
當(dāng)用戶(hù)的數(shù)據(jù)文件格式不能被當(dāng)前 Hive 所識(shí)別的時(shí)候,可以自定義文件格式。
用戶(hù)可以通過(guò)實(shí)現(xiàn)inputformat和outputformat來(lái)自定義輸入輸出格式,參考代碼:
.\hive-0.8.1\src\contrib\src\java\org\apache\hadoop\hive\contrib\fileformat\base64
實(shí)例:
建表

[plain]view plaincopy

  1. > create table test4(str STRING)  

  2. > stored as  

  3. > inputformat 'org.apache.hadoop.hive.contrib.fileformat.base64.Base64TextInputFormat'  

  4. > outputformat 'org.apache.hadoop.hive.contrib.fileformat.base64.Base64TextOutputFormat';  

$ cat test1.txt 
aGVsbG8saGl2ZQ==
aGVsbG8sd29ybGQ=
aGVsbG8saGFkb29w
test1文件為base64編碼后的內(nèi)容,decode后數(shù)據(jù)為:
hello,hive
hello,world
hello,hadoop
load數(shù)據(jù)并查詢(xún):

[plain]view plaincopy

  1. hive> LOAD DATA LOCAL INPATH '/home/work/test1.txt' INTO TABLE test4;   

  2. Copying data from file:/home/work/test1.txt  

  3. Copying file: file:/home/work/test1.txt  

  4. Loading data to table default.test4  

  5. OK  

  6. Time taken: 4.742 seconds  

  7. hive> select * from test4;  

  8. OK  

  9. hello,hive  

  10. hello,world  

  11. hello,hadoop  

  12. Time taken: 1.953 seconds  


總結(jié):
相比TEXTFILE和SEQUENCEFILE,RCFILE由于列式存儲(chǔ)方式,數(shù)據(jù)加載時(shí)性能消耗較大,但是具有較好的壓縮比和查詢(xún)響應(yīng)。數(shù)據(jù)倉(cāng)庫(kù)的特點(diǎn)是一次寫(xiě)入、多次讀取,因此,整體來(lái)看,RCFILE相比其余兩種格式具有較明顯的優(yōu)勢(shì)。

到此,相信大家對(duì)“hive怎么建立表存儲(chǔ)格式”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!


文章名稱(chēng):hive怎么建立表存儲(chǔ)格式
鏈接地址:http://weahome.cn/article/gogsdd.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部