1. 程式人生 > >Hbase概念介紹

Hbase概念介紹

Hbase Table的基本單位是Region,一個Table對應多個Region,Table層級關係如下:
Table (HBase table)
Region (Regions for the table)
Store (Store per ColumnFamily for each Region for the table)
MemStore (MemStore for each Store for each Region for the table)
StoreFile (StoreFiles for each Store for each Region for the table)
Block (Blocks within a StoreFile within a Store for each Region for the table)

Region
每臺RegionServer伺服器中包含多個Region和一個Hlog(WAL),每個Region中包括多個Store
Store
一個Store中包含一個MemStore和多個StoreFile(HFile),每個HStore對應了Table中的一個column family的儲存
MemStore
MemStore在記憶體中維護著對Store的修改日誌,日誌是KeyValue結構的。一旦MemStore被觸發flush操作,當前的MemStore被標記為SnapShot,與此同時
Hbase建立新的MemStore並繼續處理修改操作,直到標記為SnapShot的MemStore被通知已經成功刷寫到StoreFile,則銷燬該MemStore
StoreFile (HFile)

表資料真正儲存的地方
Blocks
StoreFile由多個Block組成,BlockSize是根據每個ColumnFamily級別配置的,在StoreFiles中,壓縮也是基於Block級別