Hive的優缺點及框架概念

2021-10-08 17:15:37 字數 1576 閱讀 3147

(1)hive處理的資料儲存在hdfs

(2)hive分析資料底層的實現是mapreduce

(3)執行程式執行在yarn上

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

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

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

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

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

1)hive的hql表達能力有限

(1)迭代式演算法無法表達

(2)資料探勘方面不擅長,由於mapreduce資料處理流程的限制,效率更高的演算法卻無法實現。

2)hive的效率比較低

(1)hive自動生成的mapreduce作業,通常情況下不夠智慧型化

(2)hive調優比較困難,粒度較粗

1)使用者介面:client

cli(command-line inte***ce)、jdbc/odbc(jdbc訪問hive)、webui(瀏覽器訪問hive)

2)元資料:metastore

元資料報括:表名、表所屬的資料庫(預設是default)、表的擁有者、列/分割槽字段、表的型別(是否是外部表)、表的資料所在目錄等;

預設儲存在自帶的derby資料庫中,推薦使用mysql儲存metastore

3)hadoop

使用hdfs進行儲存,使用mapreduce進行計算。

4)驅動器:driver

(1)解析器(sql parser):將sql字串轉換成抽象語法樹ast,這一步一般都用第三方工具庫完成,比如antlr;對ast進行語法分析,比如表是否存在、字段是否存在、sql語義是否有誤。

(2)編譯器(physical plan):將ast編譯生成邏輯執行計畫。

(3)優化器(query optimizer):對邏輯執行計畫進行優化。

(4)執行器(execution):把邏輯執行計畫轉換成可以執行的物理計畫。對於hive來說,就是mr/spark。

hive通過給使用者提供的一系列互動介面,接收到使用者的指令(sql),使用自己的driver,結合元資料(metastore),將這些指令翻譯成mapreduce,提交到hadoop中執行,最後,將執行返回的結果輸出到使用者互動介面。

Hive 概念 優缺點及使用場景

概念hive是構建與hadoop之上的資料倉儲軟體,能夠有效的讀取 寫入和管理大型資料集合,並且支援通過sql查詢分析資料。hive是基於hadoop的,hadoop資料處理任務本質上是 mapreduce,所以hivesql執行本質上都是mapreduce任務 優缺點比較 優點缺點 1 可以通過s...

iframe框架及優缺點

html5不再支援使用frame,關於frame與iframe的區別,可以參閱 iframe與frame的區別。是允許跨域請求資源的,但是不能夠修改,由此可以在網頁中巢狀其他網頁,如需要跨域通訊的話,需要考慮document.domain window.name window.postmessage...

Hive的優缺點

優點 1 操作介面採用類sql語法,提供快速開發的能力 簡單 容易上手 2 避免了去寫mapreduce,減少開發人員的學習成本。3 hive的執行延遲比較高,因此hive常用於資料分析,對實時性要求不高的場合。4 hive優勢在於處理大資料,對於處理小資料沒有優勢,因為hive的執行延遲比較高。5...