1. 程式人生 > >hbase 叢集結構

hbase 叢集結構

在這裡插入圖片描述
在這裡插入圖片描述

Region:

是 HBase 將一個表中的所有資料按照 RowKey 的不同範圍進行切割的邏輯單元,每個 Region 負責一定範圍資料的讀寫訪問。Region 由 RegionServer 負責管理。HBase 中的 Region的概念就和 HDFS 中的資料塊的概念差不多,Region 是 HBase 表切分出來的一個分片。資料塊是 HDFS 中的一個大檔案切分出來的一個分片。

HMaster:

HBase 的主節點,負責整個叢集的狀態感知、負載分配、負責使用者表的元資料(schema)管理(可以配置多個用來實現 HA),HMaster 負載壓力相對於 HDFS 的 NameNode會小很多。HBase 的 HMaster 其實就算是宕機一段時間也可以正常對外提供服務的(要搞清楚為什麼)。HMaster掛了之後不能進行增刪改但是可以進行查詢,因為關於元資料的各種操作都需要經過HMaster

RegionServer:

HBase 中真正負責管理 Region 的伺服器,也就是負責為客戶端進行表資料讀寫的伺服器。每一臺 RegionServer 會管理很多的 Region,一個 RegionServer 上面管理的所有的region不屬於同一張表。負責Region的拆分,負責和底層的HDFS的儲存互動,負責StoreFile的合併。

ZooKeeper:

整個 HBase 中的主從節點協調,元資料的入口,主節點之間的選舉,叢集節點之間的上下線感知……都是通過 ZooKeeper 來實現

HDFS:

用來儲存 HBase 的系統檔案,或者表的 Region 檔案

Client:

Client 包含了訪問 HBase 的介面,另外 Client 還維護了對應的 Cache 來加速 HBase 的訪問,比如 Cache 的.META.元資料的資訊。