大數(shù)據(jù)之Hive應用場景

加米谷
在大數(shù)據(jù)的發(fā)展當中,大數(shù)據(jù)技術(shù)生態(tài)的組件,也在不斷地拓展開來,而其中的Hive組件,作為Hadoop的數(shù)據(jù)倉庫工具,可以實現(xiàn)對Hadoop集群當中的大規(guī)模數(shù)據(jù)進行相應的數(shù)據(jù)處理。

在大數(shù)據(jù)的發(fā)展當中,大數(shù)據(jù)技術(shù)生態(tài)的組件,也在不斷地拓展開來,而其中的Hive組件,作為Hadoop的數(shù)據(jù)倉庫工具,可以實現(xiàn)對Hadoop集群當中的大規(guī)模數(shù)據(jù)進行相應的數(shù)據(jù)處理。今天我們的大數(shù)據(jù)入門分享,就主要來講講,Hive應用場景。

關(guān)于Hive,首先需要明確的一點就是,Hive并非數(shù)據(jù)庫,Hive所提供的數(shù)據(jù)存儲、查詢和分析功能,本質(zhì)上來說,并非傳統(tǒng)數(shù)據(jù)庫所提供的存儲、查詢、分析功能。

1.png

Hive數(shù)據(jù)倉庫工具將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供SQL查詢功能,能將SQL語句轉(zhuǎn)變成MapReduce任務來執(zhí)行。通過類SQL語句實現(xiàn)快速MapReduce統(tǒng)計,使MapReduce編程變得更加簡單易行。

Hive應用場景

總的來說,Hive是十分適合數(shù)據(jù)倉庫的統(tǒng)計分析和Windows注冊表文件。

Hive在Hadoop中扮演數(shù)據(jù)倉庫的角色。Hive添加數(shù)據(jù)的結(jié)構(gòu)在HDFS(Hive superimposes structure on data in HDFS),并允許使用類似于SQL語法進行數(shù)據(jù)查詢。

Hive更適合于數(shù)據(jù)倉庫的任務,主要用于靜態(tài)的結(jié)構(gòu)以及需要經(jīng)常分析的工作。Hive與SQL相似促使其成為Hadoop與其他BI工具結(jié)合的理想交集。

Hive使用

Hive在Hadoop之上,使用Hive的前提是先要安裝Hadoop。

2.png

Hive要分析的數(shù)據(jù)存儲在HDFS,Hive為數(shù)據(jù)創(chuàng)建的表結(jié)構(gòu)(schema),存儲在RDMS(relevant database manage system關(guān)系型數(shù)據(jù)庫管理系統(tǒng),比如mysql)。

Hive構(gòu)建在基于靜態(tài)批處理的Hadoop之上,Hadoop通常都有較高的延遲并且在作業(yè)提交和調(diào)度的時候需要大量的開銷。因此,Hive并不能夠在大規(guī)模數(shù)據(jù)集上實現(xiàn)低延遲快速的查詢,例如,Hive在幾百MB的數(shù)據(jù)集上執(zhí)行查詢一般有分鐘級的時間延遲。

Hive查詢操作過程嚴格遵守Hadoop MapReduce的作業(yè)執(zhí)行模型,Hive將用戶的HiveQL語句通過解釋器轉(zhuǎn)換為MapReduce作業(yè)提交到Hadoop集群上,Hadoop監(jiān)控作業(yè)執(zhí)行過程,然后返回作業(yè)執(zhí)行結(jié)果給用戶。Hive的最佳使用場合是大數(shù)據(jù)集的批處理作業(yè),例如,網(wǎng)絡(luò)日志分析。

Hive優(yōu)缺點

優(yōu)點:

操作接口采用類SQL語法,提供快速開發(fā)的能力(簡單、容易上手)。

Hive的執(zhí)行延遲比較高,因此Hive常用于數(shù)據(jù)分析,對實時性要求不高的場合。

Hive優(yōu)勢在于處理大數(shù)據(jù),對于處理小數(shù)據(jù)沒有優(yōu)勢,因為Hive的執(zhí)行延遲比較高。

Hive支持用戶自定義函數(shù),用戶可以根據(jù)自己的需求來實現(xiàn)自己的函數(shù)。

3.png

缺點:

1.Hive的HQL表達能力有限

(1)迭代式算法無法表達遞歸算法

(2)數(shù)據(jù)挖掘方面不擅長(數(shù)據(jù)挖掘和算法機器學習)

2.Hive的效率比較低

(1)Hive自動生成的MapReduce作業(yè),通常情況下不夠智能化

(2)Hive調(diào)優(yōu)比較困難,粒度較粗(快)

關(guān)于大數(shù)據(jù)培訓,Hive應用場景,以上就為大家做了大致的介紹了。在大數(shù)據(jù)應用場景下,Hive更多是作為Hadoop的一個數(shù)據(jù)倉庫工具,并不直接存儲數(shù)據(jù),但是卻不可或缺。

THEEND

最新評論(評論僅代表用戶觀點)

更多
暫無評論