之前版本的HBase都会提到两个重要的目录表 -ROOT- 和 .META.
在我的0.98.9这个版本中,我想直接查看这两张表的数据,发现不行,一个原因,那时候我还不清楚HBase也有namespace的概念,
另外一个原因,也是因为这个版本中不存在这两张表。
看了TableName 这个类的部分源码,应该会清楚-ROOT- 和 .META. 这两张表已经过时了,取而代之的是 "hbase:meta"和“hbase:namespace”
其中前面一张表存的刚好是表的region信息,后一张表存储的是namespace的信息。
- /** The hbase:meta table's name. */
- public static final TableName META_TABLE_NAME =
- valueOf(NamespaceDescriptor.SYSTEM_NAMESPACE_NAME_STR, "meta");
-
- /** The Namespace table's name. */
- public static final TableName NAMESPACE_TABLE_NAME =
- valueOf(NamespaceDescriptor.SYSTEM_NAMESPACE_NAME_STR, "namespace");
-
- public static final String OLD_META_STR = ".META.";
- public static final String OLD_ROOT_STR = "-ROOT-";
复制代码
其中的SYSTEM_NAMESPACE_NAME_STR 正是hbase。
|