從入門到放棄之大資料Hive

xyz藍月發表於2019-05-12

開門見山,今天說說Hive!!!

什麼是Hive

Hive:由Facebook開源用於解決海量結構化日誌的資料統計。 

Hive是基於Hadoop的一個資料倉儲工具,可以將結構化的資料檔案對映為一張表,並提供類SQL查詢功能。

本質是:將HQL轉化成MapReduce程式 

1)Hive處理的資料儲存在HDFS 

2)Hive分析資料底層的實現是MapReduce 

3)執行程式執行在YARN上

為什麼使用Hive

1)直接使用hadoop所面臨的問題 

(1)人員學習成本太高 

(2)專案週期要求太短 

(3)MapReduce實現複雜查詢邏輯開發難度太大

2)Hive的好處 

(1)操作介面採用類SQL語法,提供快速開發的能力。 

(2)避免了去寫MapReduce,減少開發人員的學習成本。 

(3)擴充套件功能很方便。

Hive架構概述


從入門到放棄之大資料Hive

上圖中,Hive透過給使用者提供的一系列互動介面,接收到使用者的指令(SQL),使用自己的Driver,結合後設資料(MetaStore),將這些指令翻譯成MapReduce,提交到Hadoop中執行,最後,將執行返回的結果輸出到使用者互動介面。

Hive 的特點

1)操作介面採用類SQL語法,提供快速開發的能力(簡單、容易上手) 

2)避免了去寫MapReduce,減少開發人員的學習成本。 

3)Hive的執行延遲比較高,因此hive常用於資料分析,對實時性要求不高的場合; 

4)Hive優勢在於處理大資料,對於處理小資料沒有優勢,因為Hive的執行延遲比較高。 

5)Hive支援使用者自定義函式,使用者可以根據自己的需求來實現自己的函式。

Hive和資料庫比較

由於 Hive 採用了類似SQL 的查詢語言 HQL(hive query language),因此很容易將 Hive 理解為資料庫。其實從結構上來看,Hive 和資料庫除了擁有類似的查詢語言,再無類似之處。本文將從多個方面來闡述 Hive 和資料庫的差異。資料庫可以用在 Online 的應用中,但是Hive 是為資料倉儲而設計的,清楚這一點,有助於從應用角度理解 Hive 的特性。

牛!曉誠之家非常推薦這款大資料的偽SQL的查詢工具!方便快捷!

推薦指數:5

感謝大家的支援!雅俗共賞!

【大資料開發學習資料領取方式】:加入大資料技術學習交流群458345782,點選加入群聊,私信管理員即可免費領取


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69903766/viewspace-2644076/,如需轉載,請註明出處,否則將追究法律責任。

相關文章