Hbase原理

技術小阿哥發表於2017-11-26

Hbase流程體系圖

Hbase 寫資料流程

  • 1、 client 向 hregionserver 傳送寫請求。
  • 2、hregionserver 將資料寫到 hlog (write ahead log )。為了資料的持久化和恢復。
  • 3、 hregionserver 將資料寫到記憶體 (memstore)
  • 4、 反饋 client 寫成功。

資料 flush 過程

  • 1、 當 memstore 資料達到閾值(預設是 64M),將資料刷到硬碟,將記憶體中的資料刪除,同時刪除 hlog 中的歷史資料。
  • 2、 並將資料儲存到 hdfs 中。
  • 3、 在 hlog 中做標記點。

資料合併過程

  • 1、 當資料達到 4 塊, hmaster 將資料塊載入到本地,進行合併
  • 2、 當合並的資料超過 256M,進行拆分,將拆分後的 region 分配給不同的 hregionserver 管理
  • 3、 當 hregionser 當機後,將 和regionserver 上的 hlog 拆分,然後分配給不同的 hregionserver 載入,修改 .META。
  • 4、 注意:hlog 會同步到 hdfs

Hbase 讀資料流程

  • 1、 通過 zookeeper 和 -ROOT-.META。表定位 hregionserver 。
  • 2、 資料從記憶體和硬碟合併後返回 client
  • 3、 資料塊會快取

hmaster 的職責

  • 1、 管理使用者對 table 的增、刪、改、查等操作。
  • 2、 記錄 region 在哪臺 HRegion Server 上
  • 3、 在 Region Split 後,負責新 Region 的分配
  • 4、 新機器加入時,管理 HRegion Server 的負載均衡,調整 Region 分佈
  • 5、 在 HRegion Server 當機後,負責失效 HRegion Server 上的 Region 遷移。

hmaster 的職責

  • 1、 HRegion Server主要負責響應使用者I/O請求,向HDFS檔案系統中讀寫資料,是HBASE中最核心的模組。
  • 2、 HRegion Server管理了很多table的分割槽,也就是region。

client職責

  • 1、 HBASE Client使用HBASE的RPC機制與HMaster和RegionServer進行通訊
  • 2、 管理類操作:Client與HMaster進行RPC;
  • 3、 資料讀寫類操作:Client與HRegionServer進行RPC。

hbase依賴zookeeper

1、儲存Hmaster的地址和backup-master地址

hmaster:

  • a)管理HregionServer
  • b)做增刪改查表的節點
  • c)管理HregionServer中的表分配

2、儲存表-ROOT-的地址

hbase預設的根表,檢索表。

3、HRegionServer列表

表的增刪改查資料。

和hdfs互動,存取資料。

Hbase 命令

名稱 命令表示式
建立表 create `表名`, `列族名1`,`列族名2`,`列族名N`
檢視所有表 list
描述表 describe ‘表名’
判斷表存在 exists `表名`
判斷是否禁用啟用表 is_enabled `表名`; is_disabled ‘表名’
新增記錄 put ‘表名’, ‘rowKey’, ‘列族 : 列‘ ,`值`
檢視記錄rowkey下的所有資料 get `表名`,`rowKey`
檢視錶中的記錄總數 count `表名`
獲取某個列族 get `表名`,`rowkey`,`列族`
獲取某個列族的某個列 get `表名`,`rowkey`,`列族:列’
刪除記錄 delete ‘表名’ ,‘行名’ , ‘列族:列`
刪除整行 deleteall `表名`,`rowkey`
刪除一張表 先要遮蔽該表,才能對該表進行刪除。第一步 disable ‘表名’ ,第二步 drop `表名`
清空表 truncate `表名`
檢視所有記錄 scan “表名”
檢視某個表某個列中所有資料 scan “表名” , {COLUMNS=>`列族名:列名`}
更新記錄 就是重寫一遍,進行覆蓋,hbase沒有修改,都是追加

到這裡 hbase 的基本原理,和使用命令就寫完了。

本文轉自 SimplePoint 51CTO部落格,原文連結:http://blog.51cto.com/2226894115/2061521,如需轉載請自行聯絡原作者


相關文章