<a href="http://blog.csdn.net/dream_an/article/details/51276040">hbase資料模型(1)</a>
<a href="http://blog.csdn.net/dream_an/article/details/51276444">hbase資料模型(2)</a>
hbase中的表資料會被分拆很多個region,region可以動态擴充并且hbase保證region的負載均衡。
region實際上是行鍵排序後的按則分割的連續的存儲空間。
region的自動分區動作是split和compaction
剛剛建立的的表隻有一個region,随着資料的寫入,達到region上限配置時,region會按照中間鍵自動地拆分成兩個大緻相等的region,每個region由一個regionserver管理,一個regionserver處理器管理者許多個region。
每個region包含起始rowkey的記錄,不包含結束rowkey的記錄。
每個regionserver可以管理大約100 ~ 1000個region,每個region的大小可以是1 ~ 20gb。
當一個region進行拆分時,首先要将該region下線(offline),拆分完後新的region在上線(online),下線的region暫時不可用,不過由于速度極快,通常不會對資料的讀寫造成影響。
一緻性(consistency):是以節點在用一時間具有相同的資料。
可用性(availability):保證每個請求不管成功或者失敗都有響應。
分區容忍性(partition tolerance):系統中任意資訊的丢失或失敗不會影響系統的繼續運作。