开发者学堂课程【HBase入门教程:HBase 原理_5】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/397/detail/5065
HBase 原理_5
内容介绍:
一.HBase 体系架构
二.HBase 数据模型
一、HBase 体系架构
1.Master
为 Region server 分配 region
负责 Region server 的负载均衡
发现失效的 Region server 井重新分配其上的 region
管理用户对 table 的増删改操作
2.RegionServe
Region server 维护 region,处理对这些 region 的 IO 请求
Region server 负责切分在运行过程中变得过大的 region
二、HBase 数据模型
Meinstore 与 storefile
一个 region 由多个 store 组成,
一个 store 对应一个 CF(列族)
store 包括位于内存中的 memstore 和位于磁盘的 storefile 写操作先写入 memstore,当 memstore 中的数据达到某个值, hregionserver 会启动 flashcache 进程写人 storefile,毎次写人形成单独的一个 storefile
当 storefile 文件的数量増长到一定阀值后,系统会进行合井( minor 、major compaction),在合并过程中会进行版本合并和删除工作(majar),形成更大的 storcfile
当个 region 所有 storefile 的大小和数量超过一定阀值后,会把当前的 region 分割为两个,并由 hmister 分配到相应的regionserver 服务器,实现负载均衡
客户端检索数据,先在 memnstorc 找,找不到再找 storcfile
HRegion 是 HBase 中分布式存储和负载均衡的最小单元。最小单元就表示不同的 HRegion 可以分布在不同的 HRegion server 上。 HRegion 由一个或者多个 Store 组成,每个 store 保存一个 columns family ,每个 Strore 又由一个 memStore 和0至多个 StoreFile 组成。如图: StoreFile 以 HFile 格式保存在 HDFS 上。
Client
包含访问HBase的接口并维护 cache 来加快对 HBase 的访问
Zookeeper
保证任何时候,集群中只有一个 master
存贮所有 Region 的寻址入口。
实时监控 Region server 的上线和下线信息。并实时通知 Master
存储 HBase 的 schema 和 table 元数据