本节来简要介绍一下Hadoop生态下的NoSQL数据库——HBase的体系结构。更多HBase内容请参考HBase板块。
1.什么是HBase
HBase是基于HDFS之上的NoSQL数据库。
HBase的数据保存在HDFS之上,因此HBase可以看成是一种HDFS的“客户端”。
2.HBase的体系结构
HBase也是主从结构,主节点HMaster,从节点RegionServer。HBase的体系结构如下图所示:
image
(1)HMaster是HBase的管理员,负责接收客户端请求和管理RegionServer集群。
(2)RegionServer上保存的是一个个的Region。一个Region就是HBase表的一个列族(column family)。
3.HBase的表结构
HBase的表结构如下图所示:
image
HBase在创建表时只需要指定列族的名字即可:create ‘student’,’Info’,’Grade’。
这里的列族Info和列族Grade各对应一个Region。
4.HBase数据的物理形式
HBase数据的物理存储形式:
- HBase的表对应于HDFS上的一个目录;
- 表的一个Region对应于该表目录下的一个子目录;
- 表中的数据对应于Region目录下的文件。