Hive 資料倉儲工具,特性介紹

2021-09-02 18:49:15 字數 1369 閱讀 9340

一、hive的儲存

hive是基於hadoop分布式檔案系統的,它的資料儲存在hdfs中。hive本身是沒有專門的資料儲存格式,也沒有為資料建立索引,只需要在建立表的時候告訴hive資料中的列分隔符和行分隔符,hive就可以解析資料。所以往hive表裡面匯入資料只是簡單的將資料移動到表所在的目錄中。

資料組織方式:

使用者可以指定partition方式和bucket方式,使得在執行過程中可以不用掃瞄某些分割槽。看上去hive是先指定partition方式,再在相同的partition內部呼叫hash函式;greenplum是向指定hash方式,在hash分片內部,指定不同的分割槽方式。

檔案儲存方面有:textfile、orcfile、rcfile、parquet、sequencefile 。

二、hive的執行

hive的執行是通過把hql語句翻譯成對應的大資料計算引擎的job任務來操作hdfs中的檔案資料的。早期主要是基於hadoop的mapreduce,但是mr的特性,導致查詢的速度會有很大的限制,隨著spark記憶體計算引擎的出現及推廣,hiveonspark也被推出來。從這個角度看,hive本身可以理解為乙個翻譯器(把sql語句翻譯成對應的執行引擎的任務),是乙個基於大資料系統的資料分析引擎(資料倉儲)。

執行引擎:mapreduce、tez、spark

三、hive的架構

由上圖可知,hdfs 和 mr/spark 是 hive 架構的根基。

執行器:執行器將dag轉換為mr任務/spark中的job

四、hive的特點

優點

1、可擴充套件性,橫向擴充套件,hive 可以自由的擴充套件集群的規模,一般情況下不需要重啟服務 橫向擴充套件:通過分擔壓力的方式擴充套件集群的規模 縱向擴充套件:一台伺服器cpu i7-6700k 4核心8執行緒,8核心16執行緒,記憶體64g => 128g

2、延展性,hive 支援自定義函式,使用者可以根據自己的需求來實現自己的函式

3、良好的容錯性,可以保障即使有節點出現問題,sql 語句仍可完成執行

缺點

1、hive 不支援記錄級別的增刪改操作,但是使用者可以通過查詢生成新錶或者將查詢結 果匯入到檔案中(當前選擇的 hive-2.3.2 的版本支援記錄級別的插入操作)

2、hive 的查詢延時很嚴重,因為 mapreduce job 的啟動過程消耗很長時間,所以不能 用在互動查詢系統中。

3、hive 不支援事務(因為不沒有增刪改,所以主要用來做 olap(聯機分析處理),而 不是 oltp(聯機事務處理),這就是資料處理的兩大級別)。

hive(資料倉儲工具)

hive是基於hadoop的乙個 資料倉儲工具,可以將結構化的資料檔案對映為一張資料庫表,並提供簡單的sql查詢功能,可以將sql語句轉換為mapreduce任務進行執行。其優點是學習成本低,可以通過類sql語句快速實現簡單的mapreduce統計,不必開發專門的mapreduce應用,十分適合 資...

資料倉儲工具 Hive介紹與使用

是什麼 hive是基於hadoop的乙個資料倉儲工具,可以將結構化的資料檔案對映為一張資料庫表,並提供簡單的sql查詢功能,可以將sql語句轉換為mapreduce任務進行執行。其優點是學習成本低,可以通過類sql語句快速實現簡單的mapreduce統計,不必開發專門的mapreduce應用,十分適...

Hive 資料倉儲

hive命令列模式 1 進入bin 執行.hiv 2 配置hive環境變數,直接執行命令 hive service cli 或 hive hive的web模式 執行hive service hwi 啟動後訪問http master 9999 hwi hive的遠端服務 預設埠 10000,執行啟動命...