在大數(shù)據(jù)的發(fā)展當(dāng)中,大數(shù)據(jù)技術(shù)生態(tài)的組件,也在不斷地拓展開來(lái),而其中的Hive組件,作為Hadoop的數(shù)據(jù)倉(cāng)庫(kù)工具,可以實(shí)現(xiàn)對(duì)Hadoop集群當(dāng)中的大規(guī)模數(shù)據(jù)進(jìn)行相應(yīng)的數(shù)據(jù)處理。今天我們的大數(shù)據(jù)入門分享,就主要來(lái)講講,Hive應(yīng)用場(chǎng)景。
關(guān)于Hive,首先需要明確的一點(diǎn)就是,Hive并非數(shù)據(jù)庫(kù),Hive所提供的數(shù)據(jù)存儲(chǔ)、查詢和分析功能,本質(zhì)上來(lái)說(shuō),并非傳統(tǒng)數(shù)據(jù)庫(kù)所提供的存儲(chǔ)、查詢、分析功能。
Hive數(shù)據(jù)倉(cāng)庫(kù)工具將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫(kù)表,并提供SQL查詢功能,能將SQL語(yǔ)句轉(zhuǎn)變成MapReduce任務(wù)來(lái)執(zhí)行。通過(guò)類SQL語(yǔ)句實(shí)現(xiàn)快速M(fèi)apReduce統(tǒng)計(jì),使MapReduce編程變得更加簡(jiǎn)單易行。
Hive應(yīng)用場(chǎng)景
總的來(lái)說(shuō),Hive是十分適合數(shù)據(jù)倉(cāng)庫(kù)的統(tǒng)計(jì)分析和Windows注冊(cè)表文件。
Hive在Hadoop中扮演數(shù)據(jù)倉(cāng)庫(kù)的角色。Hive添加數(shù)據(jù)的結(jié)構(gòu)在HDFS(Hive superimposes structure on data in HDFS),并允許使用類似于SQL語(yǔ)法進(jìn)行數(shù)據(jù)查詢。
Hive更適合于數(shù)據(jù)倉(cāng)庫(kù)的任務(wù),主要用于靜態(tài)的結(jié)構(gòu)以及需要經(jīng)常分析的工作。Hive與SQL相似促使其成為Hadoop與其他BI工具結(jié)合的理想交集。
Hive使用
Hive在Hadoop之上,使用Hive的前提是先要安裝Hadoop。
Hive要分析的數(shù)據(jù)存儲(chǔ)在HDFS,Hive為數(shù)據(jù)創(chuàng)建的表結(jié)構(gòu)(schema),存儲(chǔ)在RDMS(relevant database manage system關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),比如mysql)。
Hive構(gòu)建在基于靜態(tài)批處理的Hadoop之上,Hadoop通常都有較高的延遲并且在作業(yè)提交和調(diào)度的時(shí)候需要大量的開銷。因此,Hive并不能夠在大規(guī)模數(shù)據(jù)集上實(shí)現(xiàn)低延遲快速的查詢,例如,Hive在幾百M(fèi)B的數(shù)據(jù)集上執(zhí)行查詢一般有分鐘級(jí)的時(shí)間延遲。
Hive查詢操作過(guò)程嚴(yán)格遵守Hadoop MapReduce的作業(yè)執(zhí)行模型,Hive將用戶的HiveQL語(yǔ)句通過(guò)解釋器轉(zhuǎn)換為MapReduce作業(yè)提交到Hadoop集群上,Hadoop監(jiān)控作業(yè)執(zhí)行過(guò)程,然后返回作業(yè)執(zhí)行結(jié)果給用戶。Hive的最佳使用場(chǎng)合是大數(shù)據(jù)集的批處理作業(yè),例如,網(wǎng)絡(luò)日志分析。
Hive優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
操作接口采用類SQL語(yǔ)法,提供快速開發(fā)的能力(簡(jiǎn)單、容易上手)。
Hive的執(zhí)行延遲比較高,因此Hive常用于數(shù)據(jù)分析,對(duì)實(shí)時(shí)性要求不高的場(chǎng)合。
Hive優(yōu)勢(shì)在于處理大數(shù)據(jù),對(duì)于處理小數(shù)據(jù)沒(méi)有優(yōu)勢(shì),因?yàn)镠ive的執(zhí)行延遲比較高。
Hive支持用戶自定義函數(shù),用戶可以根據(jù)自己的需求來(lái)實(shí)現(xiàn)自己的函數(shù)。
缺點(diǎn):
1.Hive的HQL表達(dá)能力有限
(1)迭代式算法無(wú)法表達(dá)遞歸算法
(2)數(shù)據(jù)挖掘方面不擅長(zhǎng)(數(shù)據(jù)挖掘和算法機(jī)器學(xué)習(xí))
2.Hive的效率比較低
(1)Hive自動(dòng)生成的MapReduce作業(yè),通常情況下不夠智能化
(2)Hive調(diào)優(yōu)比較困難,粒度較粗(快)
關(guān)于大數(shù)據(jù)培訓(xùn),Hive應(yīng)用場(chǎng)景,以上就為大家做了大致的介紹了。在大數(shù)據(jù)應(yīng)用場(chǎng)景下,Hive更多是作為Hadoop的一個(gè)數(shù)據(jù)倉(cāng)庫(kù)工具,并不直接存儲(chǔ)數(shù)據(jù),但是卻不可或缺。
編輯:hfy
-
大數(shù)據(jù)
+關(guān)注
關(guān)注
64文章
8805瀏覽量
136992 -
hive
+關(guān)注
關(guān)注
0文章
11瀏覽量
3820
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論