Hive基礎(chǔ)知識(shí)的示例分析-創(chuàng)新互聯(lián)

這篇文章主要介紹了Hive基礎(chǔ)知識(shí)的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

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

  Hive的元數(shù)據(jù)一般存儲(chǔ)在關(guān)系型數(shù)據(jù)庫(kù)中,如MySql;

  底層存儲(chǔ)用到的是HDFS分布式存儲(chǔ)系統(tǒng)。它的優(yōu)點(diǎn):1.?簡(jiǎn)單易上手:提供了類(lèi)SQL查詢(xún)語(yǔ)言HQL;2.可擴(kuò)展:為超大數(shù)據(jù)集設(shè)計(jì)了計(jì)算/擴(kuò)展能力(MR作為計(jì)算引擎,HDFS作為存儲(chǔ)系統(tǒng));3.提供統(tǒng)一的元數(shù)據(jù)管理;4.Hive支持用戶(hù)自定義函數(shù),用戶(hù)可以根據(jù)自己的需求來(lái)實(shí)現(xiàn)自己的函數(shù):繼承hive的UDF類(lèi),重寫(xiě)evaluate方法;5.容錯(cuò):良好的容錯(cuò)性,節(jié)點(diǎn)出現(xiàn)問(wèn)題SQL仍可完成執(zhí)行;

  缺點(diǎn):1.Hive的HQL表達(dá)能力有限;2.效率比較低,自動(dòng)生成的Mapreduce作業(yè),通常情況下不夠智能化,且調(diào)優(yōu)比較困難;

  Hive用戶(hù)接口

  1)HiveCLI(HiveCommandLine,Hive命令行),客戶(hù)端可以直接在命令行模式下進(jìn)行操作

  2)HWI(HiveWebInterface,HiveWeb接口),Hive提供了更直觀的Web界面

  3)hiveserver,Hive提供了Thrift服務(wù),Thrift客戶(hù)端目前支持C++/Java/PHP/Python/Ruby

  Hive常用文件格式:

  Textfile:默認(rèn)格式,數(shù)據(jù)不做壓縮,磁盤(pán)開(kāi)銷(xiāo)大,數(shù)據(jù)解析開(kāi)銷(xiāo)大;

  SEQUENCEFILE:SequenceFile是HadoopAPI提供的一種二進(jìn)制文件支持,其具有使用方便、可分割、可壓縮的特點(diǎn);

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

  parquet:ApacheParquet是Hadoop生態(tài)圈中一種新型列式存儲(chǔ)格式,它可以兼容Hadoop生態(tài)圈中大多數(shù)計(jì)算框架;

  Hive數(shù)據(jù)導(dǎo)入導(dǎo)出

  Hive表中的數(shù)據(jù),同時(shí)支持從本地?cái)?shù)據(jù)導(dǎo)入、從其他表導(dǎo)入數(shù)據(jù)、導(dǎo)出數(shù)據(jù)到本地文件系統(tǒng)、導(dǎo)出數(shù)據(jù)到HDFS中

  Hive基本語(yǔ)句

  Hive建表語(yǔ)句基本跟關(guān)系型數(shù)據(jù)庫(kù)建表語(yǔ)句相同,區(qū)別在于語(yǔ)句尾端指定了列分隔符:

  ROWFORMATDELIMITEDFIELDSTERMINATEDBY‘,’

  指定了列分隔符為“,”;

  對(duì)于分區(qū)表,會(huì)有分區(qū)字段的說(shuō)明:

  PARTITIONEDBY(countrySTRING,stateSTRING)

  用“country“、”state”兩個(gè)字段分區(qū);

  以及指定存儲(chǔ)文件的格式:

  STOREDASTEXTFILE。

  關(guān)于內(nèi)連接、外連接和半連接:

  幾種連接區(qū)別簡(jiǎn)單概括為:內(nèi)連接只顯示了倆張表都存在的數(shù)據(jù),而外連接則是顯示出所有的數(shù)據(jù),其中左連接是左外邊的表輸出完整數(shù)據(jù)。右外連接是右邊的表輸出完整數(shù)據(jù),全外連接就是兩張表的所有行全部輸出。做半連接用來(lái)補(bǔ)充Hive相對(duì)于MySQL等語(yǔ)句缺失的in/exists這樣的子句,就用leftjoin代替,和leftjoin的區(qū)別在于右邊的表數(shù)據(jù)不會(huì)加載進(jìn)結(jié)果;

  orderby和sortby:

  ORDERBY會(huì)對(duì)查詢(xún)結(jié)果集執(zhí)行一個(gè)全局排序,所有的數(shù)據(jù)都通過(guò)一個(gè)reducer進(jìn)行處理;SORTBY,其只會(huì)在每個(gè)reducer中對(duì)數(shù)據(jù)進(jìn)行排序,也就是執(zhí)行一個(gè)局部排序過(guò)程,生產(chǎn)中可以和DISTRIBUTEBY一起用,實(shí)現(xiàn)分區(qū)并排序。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Hive基礎(chǔ)知識(shí)的示例分析”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

名稱(chēng)欄目:Hive基礎(chǔ)知識(shí)的示例分析-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://muchs.cn/article36/dcpdsg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、云服務(wù)器App設(shè)計(jì)、自適應(yīng)網(wǎng)站、品牌網(wǎng)站建設(shè)、用戶(hù)體驗(yàn)

廣告

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

搜索引擎優(yōu)化