Hbase有一个叫做Meta的特殊的目录表,用于保存集群中regions的位置信息(region列表)。ZooKeeper存储着Meta表的位置。
Hbase Meta结构如下:
具体含义:
rowKey:([table],[region start key],[region id])
column family:info
column:regioninfo、server、serverstartcode
1.rowkey中第一个分隔符前存的是表名;
2.第二分隔符前存的是region的第一个rowKey:
- 1)如果这个地方为空的话,表明这是table的第一个region。并且如果一个region中startkey和endkey都为空的为,表明这 个table只有一个region;
- 2)在meta表中,startkey 靠前的region会排在startkey 靠后的region前面。(Hbase中的keys按照字段顺序排序的)。
3.region id代表region的id,通常基于region创建时的timestamp;
4.regioninfo是HRegionInfo的序列化值;