hbase構建在 hdfs 之上,hbase內部管理的檔案全部儲存在hdfs 中
行鍵,table的主鍵,table中的記錄按照row key排序。型別為byte array
列簇,table在水平方向有乙個或者多個column family組成,乙個column family中可以由任意多個column組成
列 格式為:familyname:columnname
版本號。預設值是系統時間戳。每個 rowkey 唯一。型別為long
具體的值,型別為byte array
每個 column family 儲存在 hdfs 上的乙個單獨檔案中
key 和 version number 在每個 column family 中均有乙份
hbase 為每個值維護了多級索引,即:key, column family, column name, timestamp
table 中的所有行都按照 row key 的字典序排列;
table 在行的方向上分割為多個region;
region 按大小分割的,每個表開始只有乙個 region ,隨著資料增多, region 不斷增大,當增大到乙個閥值的時候,region就會等分會兩個新的region,之後會有越來越多的region
region 是 hbase 中分布式儲存和負載均衡的最小單元。不同region分布到不同regionserver上
region 雖然是分布式儲存的最小單元,但並不是儲存的最小單元。
region 由乙個或者多個 store 組成,每個 store 儲存乙個columns family ;
每個 strore 又由乙個 memstore 和 0 至多個 storefile 組成;
memstore 儲存在記憶體中, storefile 儲存在 hdfs 上**
包含訪問 hbase 的介面,並維護 cache 來加快對 hbase 的訪問
zookeeper
master
region serverzookeeper避免了hmaster的單點問題 hbase中可以啟動多個hmaster,通過zookeeper的master election機制保證總有乙個master執行
第一次讀取:
步驟1:讀取zookeeper中root表的位置。
步驟2:讀取root表中.meta表的位置。
步驟3:讀取.meta表中使用者表的位置。
步驟4:讀取資料。
如果已經讀取過一次,則root表和.meta都會快取到本地
則直接去使用者表的位置讀取資料
-root- 表
-root- 表包含 .meta. 表所在的 region 列表,該錶只會有乙個 region ;
zookeeper 中記錄了 -root- 表的 location 。
.meta. 表
.meta. 表包含所有的使用者空間 region 列表,以及
regionserver 的伺服器位址。
HBase學習筆記(一) 《HBase簡介》
hbase簡介 1 hbase表的結構 hbase以表 table 的形式儲存資料 row key 行鍵 與nosql資料庫們一樣,row key是用來檢索記錄的主鍵。row key行鍵 row key 可以是任意字串 最大長度是 64kb,實際應用中長度一般為 10 100bytes 在hbase...
HBase學習筆記 hbase集群結構
hbase基本元件說明 client 包含訪問hbase的介面,並維護cache來加快對hbase的訪問,比如region的位置資訊。hmaster 是hbase集群的主節點,可以配置多個,用來實現ha 為regionserver分配region 負責regionserver的負載均衡 發現失效的r...
Hbase學習筆記
1.table中行是按照row key的字典序排列的 2.在行的方向上分隔為多個region 3.hregion是hbase 中分布式儲存和負載均衡的最小單位,這表示不同的region可以分布在不同的regionserver上 當乙個region足夠大時,現在是256m 就會split,乙個regi...