hbase快速入門之 系統架構

2021-08-13 10:33:33 字數 2823 閱讀 7997

使用hbase

的rpc

機制與hmaster

和hregionserver

進行通訊,對於管理類操作,

client

與hmaster

進行rpc

;對於資料讀寫類操作,

client

與hregionserver

進行rpc ø

zookeeper

zookeeper quorum

中除了儲存了

-root-

表的位址和

hmaster

的位址,

hregionserver

也會把自己以

ephemeral

方式註冊到

zookeeper

中,使得

hmaster

可以隨時感知到各個

hregionserver

的健康狀態。此外,

zookeeper

也避免了

hmaster

的單點問題。 ø

hmaster

hmaster

沒有單點問題,

hbase

中可以啟動多個

hmaster

,通過zookeeper

的master election

機制保證總有乙個

master

執行。

hmaster

在功能上主要負責

table

和region

的管理工作: 1.

管理使用者對

table

的增、刪、改、查操作 2.

管理hregionserver

的負載均衡,調整

region分布

3.在region split

後,負責新

region

的分配 4.在

hregionserver

停機後,負責失效

hregionserver

上的regions遷移

主要負責響應使用者

i/o請求,向

hdfs

檔案系統中讀寫資料,是

hbase

中最核心的模組。

øhregionserver

內部管理了一系列

hregion

物件,每個

hregion

對應了table

中的乙個

region

,hregion

中由多個

hstore

組成。每個

hstore

對應了table

中的乙個

column family

的儲存,可以看出每個

column family

其實就是乙個集中的儲存單元,因此最好將具備共同

io特性的

column

放在乙個

column family

中,這樣最高效。

øhstore

儲存是hbase

儲存的核心了,其中由兩部分組成,一部分是

memstore

,一部分是

storefiles。

ømemstore

是sorted memory buffer

,使用者寫入的資料首先會放入

memstore

,當memstore

滿了以後會

flush

成乙個storefile

(底層實現是

hfile)

ø當storefile

檔案數量增長到一定閾值,會觸發

compact

合併操作,將多個

storefiles

合併成乙個

storefile

,合併過程中會進行版本合併和資料刪除,因此可以看出

hbase

其實只有增加資料,所有的更新和刪除操作都是在後續的

compact

過程中進行的,這使得使用者的寫操作只要進入記憶體中就可以立即返回,保證了

hbase i/o

的高效能。 ø

當storefiles compact

後,會逐步形成越來越大的

storefile

,當單個

storefile

大小超過一定閾值後,會觸發

split

操作,同時把當前

region  split成2

個region

,父region

會下線,新

split出的2

個孩子region

會被hmaster

分配到相應的

hregionserver 

上,使得原先1個

region

的壓力得以分流到2個

region上。

ø下圖描述了

compaction

和split

的過程。

HBase之組成架構

master regionserver的管理程序 1.與客戶端通訊,實現對錶的增 刪 改操作。2.分配regions到每個regionserver,負載均衡 故障轉移。3.監控各個regionserver的狀態。regionserver region的管理者 1.與客戶端通訊實現對資料的增 刪 查操...

Hbase概述以及快速入門

1.3 hbase架構 二 hbase快速入門 2.2hbase shell操作 hbase是一種分布式 可擴充套件 支援海量資料儲存的nosql資料庫 邏輯上,hbase的資料模型與關係型資料庫很類似,資料儲存在一張表中,有行有列。但從底層物理儲存結構 k v 來看,hbase更像是乙個多維度的m...

大資料入門 Hbase基礎架構解析

hadoop技術生態當中的hbase,其實全稱叫做hadoop database,顧名思義,所謂hbase,其實也就是hadoop的資料,而從架構的角度來說,hbase就是乙個分布式儲存系統。今天的大資料入門分享,我們來講講hbase的基礎架構。hbase的前身,其實是google 三駕馬車 之一的...