client:包含访问HBASE的接口并维护cache来加快对HBASE的访问。
zookeeper:
1、保证集群中只有一个工作状态的master
2、存储所有region的寻址入口
3、监控集群中的regionserver,如果有regionserver上线,会通知hmaster
4、存储HBASE中的schema及table的元数据
hmaster:
1、向regionserver分配region
2、维护regionserver的负责均衡
3、发现失效的regionserver 并重新分配其上的region
4、管理用户对table的增删改操作
regionserver:
regionserver维护region,处理对这些region的IO请求
region server 负责切分在运行过程中变得过大的region
Region
HBase 自动把表水平划分成多个区域(region),每个 region 会保存一个表里面某段连续的数据;每个表一开始只有一个 region,随着数据不断插入表,region 不断增大,当增大到一个阀值的时候,region 就会等分会两个新的 region(裂变);当 table 中的行不断增多,就会有越来越多的 region。这样一张完整的表被保存在多个region server上。