hbase之Region管理

region管理:
(1) region分配
任何時刻,一個region只能分配給一個region server。master記錄了當前有哪些可用的region server。以及當前哪些region分配給了哪些region server,哪些region還沒有分配。當需要分配的新的region,並且有一個region server上有可用空間時,master就給這個region server發送一個裝載請求,把region分配給這個region server。region server得到請求後,就開始對此region提供服務。

(2) region server上線
master使用zookeeper來跟蹤region server狀態。當某個region server啓動時,會首先在zookeeper上的server目錄下建立代表自己的znode。由於master訂閱了server目錄上的變更消息,當server目錄下的文件出現新增或刪除操作時,master可以得到來自zookeeper的實時通知。因此一旦region server上線,master能馬上得到消息。

(3) region server下線
當region server下線時,它和zookeeper的會話斷開,zookeeper而自動釋放代表這臺server的文件上的獨佔鎖。master就可以確定:
1 region server和zookeeper之間的網絡斷開了。
2 region server掛了。
無論哪種情況,region server都無法繼續爲它的region提供服務了,此時master會刪除server目錄下代表這臺region server的znode數據,並將這臺region server的region分配給其它還活着的同志。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章