hadoop hbase中的root表和meta 简述
总结
ROOT表可以看作是一张简表,简单的信息,记录不是很多,但ROOT表记录了META的信息。
META表可以看作是一张详表,记录了所有HRegion的信息。ROOT表也记录了HRegion表的信息,但没META表记录详细。
拓展:
HBase表的HDFS目录结构如下
/hbase
/data
/ (集群里的Namespaces)
/
/ (该table的Regions)
/ (该Region的列族)
/ (该列族的StoreFiles)
HLog的HDFS目录结构如下
/hbase
/WALs
/ (RegionServers)
/ (WAL files for the RegionServer)
一个RegionServer上存在多个Region和一个HLog读写实例。
HLog的就是WAL(Write-Ahead-Log),相当于RDBMS中的redoLog,写数据时会先写一份到HLog。可以配置MultiWAL,多Region时使用多个管道来并行写入多个WAL流。
一个RS共用一个HLog的原因是减少磁盘IO开销,减少磁盘寻道时间。
Region属于某个表水平拆分的结果(初始一个Region),每个表的Region分部到多个RegionServer。
Region上按列族划分为多个Store
每个Store有一个MemStore,当有读写请求时先请求MemStore
每个Store又有多个StoreFile
HFiles是数据的实际存储格式,他是二进制文件。StoreFile对HFile进行了封装。HBase的数据在底层文件中时以KeyValue键值对的形式存储的,HBase没有数据类型,HFile中存储的是字节,这些字节按字典序排列。