hive概述,hive是什麼

2021-08-07 15:55:10 字數 947 閱讀 8061

hive是基於hadoop的資料倉儲解決方案。由於hadoop本身在資料儲存和計算方面有很好的可擴充套件性和高容錯性,因此使用hive構建的資料倉儲也秉承了這些特性。

這是來自官方的解釋。

簡單來說,hive就是在hadoop上架了一層sql介面,可以將sql翻譯成mapreduce去hadoop上執行,這樣就使得資料開發和分析人員很方便的使用sql來完成海量資料的統計和分析,而不必使用程式語言開發mapreduce那麼麻煩。

先上一張經典的hive架構圖:

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

在使用過程中,至需要將hive看做是乙個資料庫就行,本身hive也具備了資料庫的很多特性和功能。

hive可以使用hql(hive sql)很方便的完成對海量資料的統計彙總,即席查詢和分析,除了很多內建的函式,還支援開發人員使用其他程式語言和指令碼語言來自定義函式。

但是,由於hadoop本身是乙個批處理,高延遲的計算框架,hive使用hadoop作為執行引擎,自然也就有了批處理,高延遲的特點,在資料量很小的時候,hive執行也需要消耗較長時間來完成,這時候,就顯示不出它與oracle,mysql等傳統資料庫的優勢。

因此,hive擅長的是非實時的、離線的、對響應及時性要求不高的海量資料批量計算,即席查詢,統計分析。

既然是被當做資料庫來使用,除了資料單元,hive當然也得有一些列的資料型別。這裡先簡單描述下,後續章節會有詳細的介紹。

布林型

浮點型

字串型

一起學hive系列

hive分析函式系列

hive索引

hive優化之——控制hive任務中的map數和reduce數

如果覺得本部落格對您有幫助,請 贊助作者 。

Hive詳解(一)Hive是什麼 Hive怎麼用

hadoop通過mapreduce hadoop和mapreduce後續我也會提到 可以將複雜的計算任務分割成多個處理單元然後分散到一群家用的或者伺服器級別的硬體機器上,從而降低成本並提供執行可伸縮性。而隨之出現的問題是使用者如何從現有的資料基礎架構轉移到hadoop平台上。hive相當於一門sql...

Hive學習筆記 Hive概述

1.1 資料倉儲 可以利用資料倉儲來儲存我們的資料,但是資料倉儲有別於我們常見的一般資料庫。資料倉儲是乙個面向主題的 整合的 不可更新的 隨時間不變化的資料整合,它用於支援企業或組織的決策分析處理。物件導向的 倉庫中的資料是按照一定的主題進行組織的。主題即使用者使用資料倉儲進行決策時所關心的重點方面...

hive基礎概述

hive 資料倉儲,hive是乙個基於hadoop的資料倉儲工具,將結構化的資料檔案對映成一張 表,並提供類sql的查詢功能。hql hive query language hive 用hql作為查詢語句,儲存在hdfs上,使用mapreduce作為計算工具,支援udf 支援自定義儲存格式 適合做大...