Hbase理论知识详解

表在行方向上,按照行key范围划分成若干的Region
Hbase理论知识详解 每个表最初只有一个region,当记录数增加到超过某个阀值时,开始分裂成两个region
Hbase理论知识详解 物理上所有数据存放在HDFS,由Region服务器提供region的管理
Hbase理论知识详解 一台物理节点只能跑一个HRegionServer
Hbase理论知识详解 一个Hregionserver可以管理多个Region实例
Hbase理论知识详解 一个Region实例包括Hlog日志和存放数据的Store
Hbase理论知识详解 Hmaster作为总控节点
Hbase理论知识详解 Zookeeper负责调度

Hbase理论知识详解

Hbase理论知识详解 一个region由多个store组成,每个store包含一个列族的所有数据
Hbase理论知识详解
Hbase理论知识详解 Store包括位于把内存的memstore和位于硬盘的storefile
Hbase理论知识详解 写操作先写入memstore,当memstore中的数据量达到某个阀值,Hregionserver会启动flashcache进程写入Storefile,每次写入形成一个单独的storefile
Hbase理论知识详解 当storefile文件的数量增长到一定阀值后,系统会进行合并,在合并过程中会进行版本的合并和删除工作,形成更大的storefile
Hbase理论知识详解 当storefile大小超过一定阀值后,会把当前的region分割成两个,并由Hmaster分配到 相应的region服务器,实现负载均衡


HBase中有两张特殊的Table,-ROOT-和.META.
.META.:记录了用户表的Region信息,它可以有多高region(这的意思是说.META.表可以分裂成多个region,和用户表一样)
-ROOT-:记录了.META.表的Region信息,-ROOT-只有一个region(也就是说它不可分割)
Zookeeper中记录了-Root-表的location
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页