黑猴子的家 HBase 的架構

2021-08-30 08:47:23 字數 831 閱讀 4745

hbase一種是作為儲存的分布式檔案系統,另一種是作為資料處理模型的mr框架。因為日常開發人員比較熟練的是結構化的資料進行處理,但是在hdfs直接儲存的檔案往往不具有結構化,所以催生出了hbase在hdfs上的操作。如果需要查詢資料,只需要通過鍵值便可以成功訪問。

架構圖如下圖所示

hbase內建有zookeeper,但一般我們會有其他的zookeeper集群來監管master和regionserver,zookeeper通過選舉,保證任何時候,集群中只有乙個活躍的hmaster,hmaster與hregionserver 啟動時會向zookeeper註冊,儲存所有hregion的定址入口,實時監控hregionserver的上線和下線資訊。並實時通知給hmaster,儲存hbase的schema和table元資料,預設情況下,hbase 管理zookeeper 例項,zookeeper的引入使得hmaster不再是單點故障。一般情況下會啟動兩個hmaster,非active的hmaster會定期的和active hmaster通訊以獲取其最新狀態,從而保證它是實時更新的,因而如果啟動了多個hmaster反而增加了active hmaster的負擔。

乙個regionserver可以包含多個hregion,每個regionserver維護乙個hlog,和多個hfiles以及其對應的memstore。regionserver執行於datanode上,數量可以與datnode數量一致,請參考如下架構圖

黑猴子的家 HBase 高可用 HA

在hbase中hmaster負責監控regionserver的生命週期,均衡regionserver的負載,如果hmaster掛掉了,那麼整個hbase集群將陷入不健康的狀態,並且此時的工作狀態並不會維持太久。所以hbase支援對hmaster的高可用配置。1 關閉hbase集群 如果沒有開啟則跳過...

黑猴子的家 HBase 寫資料流程

1 client也是先訪問zookeeper,找到meta表,並獲取meta表資訊。2 確定當前將要寫入的資料所對應的regionserver伺服器和region。3 client向該regionserver伺服器發起寫入資料請求,然後regionserver收到請求並響應。4 client先把資料...

黑猴子的家 Hive和HBase整合整合

因為在操作hive的同時對hbase也會產生影響,所以hive需要持有操作hbase的jar包,那麼接下來拷貝hive所依賴的jar包 或者使用軟連線的形式 victor node1 ln s hbase home lib hbase common 1.2.5.jar hive home lib h...