1. 程式人生 > >hive和HBase的比較

hive和HBase的比較

Hive

1、資料倉庫

Hive 的本質其實就相當於將 HDFS 中已經儲存的檔案在 Mysql 中做了一個雙射關係,以方便使用 HQL 去管理查詢。

2、用於資料分析、清洗

Hive 適用於離線的資料分析和清洗,延遲較高。

3、基於HDFS,MapReduce

Hive 儲存的資料依舊在DataNode 上,編寫的 HQL 語句終將是轉換為MapReduce 程式碼執行。

HBase

1、資料庫

是一種面向列儲存的非關係型資料庫。

2、用於儲存結構化和非結構化的資料

適用於單表非關係型資料的儲存,不適合做關聯查詢,類似JOIN 等操作。

3、基於HDFS

資料持久化儲存的體現形式是Hfile,存放於 DataNode 中,被 ResionServer 以 region 的形式進行管理。

4、延遲較低,接入線上業務使用

面對大量的企業資料,HBase 可以直線單表大量資料的儲存,同時提供了高效的資料訪問速度。

下面來做一些系統的比較

hbase hive
型別 列式資料庫 資料倉庫
內部機制 資料庫引擎 MapReduce
增刪改查 都支援 只支援匯入和查詢
schema 只需要預先定義列族,不需要具體到列列可以動態修改 需要預先定義表格
應用場景 實時 離線處理
特點 以key-value形式儲存 類SQL