Meta的必要性:
HBase一张表的数据是由多个Region构成,而这些Region是分布在整个集群上的RegionServer上的。那么客户端在做任何数据操作时,都要确定数据在哪些Region上,然后再根据Region和RegionServer的对应关系,去相应的RegionServer中读取数据。
hbase:meta就是专门用来存储和Region相关的信息,这里的hbase表示namespace,meta是系统表,因此用全局统一的命名空间;
这个表只有一个列簇,即info。并且,HBase保证meta表始终只有一个Region,这是为了确保meta多次操作的原子性(即要不这些操作全成功,要不这些操作一个都没有做)。
Meat表内具体存放哪些信息:
rowkey:由四个字段拼接起来,分别是 表名-StratRow-TimeStamp-EncodedName。
数据分为4列:
info:regioninfo:EncodedName、RegionName、Region的StartRow、Region的StopRow;
info:seqnumDu