hbase八股整理

Client

  1. 包含访问hbase的接口,Client维护着一些cache来加快对hbase的访问,比如regione的位置信息.

Zookeeper

Zookeeper在HBase中的作用:

  1. 保证任何时候,集群中只有一个master
  2. 存贮所有Region的寻址入口
  3. 实时监控Region Server的状态,将Region server的上线和下线信息实时通知给Master

HMaster(对比平常的分布式一主多从的分布式框架,hmaster的角色功能负担降低很多)

  1. 为Region server分配region
  2. 负责region server的负载均衡
  3. 发现失效的region server并重新分配其上的region
  4. HDFS上的垃圾文件回收
  5. 处理schema更新请求

HRegion Server

HRegion server维护HMaster分配给它的region,处理对这些region的IO请求

HRegion server负责切分在运行过程中变得过大的region

从图中可以看到,Client访问HBase上数据的过程并不需要HMaster参与(寻址访问Zookeeper和HRegion server,数据读写访问HRegione server)

HMaster仅仅维护者table和HRegion的元数据信息,负载很低

在region中的memstore刷写到hfile(hfile和storefile是一个东西,站在hbase的角度看是storefile,站在hdfs的角度看是hile)中时,是把hbase也就是hregion Server作为dfs client 给刷写到位于hdfs系统的datanode上,不是理解的先本地磁盘然后在启进程刷写到datanode(这里如果一个节点上正好都有hregion Server和datanode,也就是这个节点的磁盘上)。

至于生成的很多细小hfile会进行合并成一个大的hilfe(用hdfs的小文件合并机制)

 

 

具体可以看这个链接

hbase架构链接

微信端的链接hbase整理

hbase链接整理

大批量数据一次导入可以使用bulkload方式,具体可以看以下链接

bulkload

bulkload原理解析

posted @ 2022-06-01 10:53  习惯了蓝  阅读(73)  评论(0编辑  收藏  举报