-ROOT-的作用 》HBase是基于HDFS是要存储海量数据的 》数据量巨大,数据本身的结构再复杂一些,那么会产生大量的table 》table一多,元数据就会增多 》元数据如果过多,那么元数据都存储在一个文件中由一个节点来管理就会导致查询效率变低 》元数据分布式存储(.meta.文件可以有好多个) 》因为元数据是分布式存储的,所以来了请求之后去找哪一个.meta.文件呢? 》利用-ROOT-存储.meta.文件的位置
HBase0.96开始为什么舍弃了-ROOT-? 》HBase是基于HDFS存储的,所以.meta.文件也是存储在HDFS上的 》在HDFS中,一个Block默认大小是128M 》.meta.文件落地到HDFS上也是以Block形式来存储的 》.meta.文件中存储的是元数据 》元数据中存储的是空间名、表名、列族名等 》一条元数据一般不会超过150B 》一个Block中可以存储90W条元数据 -> 90W个表 》实际开发中,一个项目无论多复杂,表的个数一般不会超过百张 》此时发现,.met.文件好像没有必要进行分布式的存储和管理 -> 舍弃-ROOT-