HBase:Region管理与Master工作机制

举报
大数据梦想家 发表于 2021/09/29 00:49:16 2021/09/29
【摘要】         本篇博客小菌为大家带来的是HBase的Region管理与Master工作机制。 region 的管理 &...

        本篇博客小菌为大家带来的是HBase的Region管理与Master工作机制。

region 的管理

        首先让我们来看下region的管理,当然这存在一个前提: 任何时刻,一个region只能分配给一个region server

  • 1.master记录了当前有哪些可用的region server。以及当前哪些region分配给了哪些region server,哪些region还没有分配。
  • 2.当需要分配的新的region,并且有一个region server上有可用空间时,master就给这个region server发送一个装载请求,把region分配给这个region server。
  • 3.region server得到请求后,就开始对此region提供服务。

在这里插入图片描述

region server上线

前提: master使用zookeeper来跟踪region server状态。

  • 1.当某个region server启动时,首先在zookeeper上的/hbase/rs目录下建立代表自己的znode。
  • 2.master订阅了/hbase/rs目录上的变更消息,当/hbase/rs目录下的文件出现新增或删除操作时,master可以得到来自zookeeper的实时通知。因此一旦region server上线,master能马上得到消息。

region server下线

前提: master使用zookeeper来跟踪region server状态。

  • 1.当region server下线时,它和zookeeper的会话断开。
  • 2.zookeeper而自动释放代表这台server的文件上的独占锁(znode)
  • 3.zookeeper将变化发送给master
  • 4.master 将挂掉的region server的region分配给其它还活着的regionserver。

Master工作机制

Master 的工作机制也分为上线和下线两种。

master 上线

前提:hbase集群中可以设置多个Hmaster,真正对外提供服务的只有一个

master启动进行以下步骤:

1.从zookeeper上获取唯一 一个代表active master的锁,用来阻止其它master成为真正的master。

2.扫描zookeeper上的/hbase/rs节点,获得当前可用的region server列表。

3.master和每个region server通信,获得当前已分配的region和region server的对应关系。

4.master扫描.META.表,计算得到当前还未分配的region,将他们放入待分配region列表。

针对master上线的几个步骤,可以高度抽象为以下几个问题。

问题一: 如何确定哪个master是真正的master
看谁获得了 active master 的锁

问题二: master如何知道有哪些regionserver
扫描zookeeper 上的/hbase/rs 节点

问题三: master 如何知道region与regionserver之间的对应关系
master 和 每个region server 通信,regionserver 之间的对应关系。

问题四: master 如何知道哪些region还未分配
master扫描.META.表,计算得到当前还未分配的region。

        

Hmaster下线

master只维护表和region的元数据,不参与表数据IO的过程,所以master下线短时间内对整个hbase集群没有影响。表的数据读写还可以正常进行。

Hmaster下线后的影响

1.无法创建删除表,无法修改表的schema,无法进行region的负载均衡,无法处理region 上下线,无法进行region的合并(region的split可以正常进行)。

2.当hmaster下线后,启动Zookeeper的选举机制,选出新的Hmaster,新的Hmaster上线,执行上线流程。
        
        
        本次的分享就到这里就结束了,受益的小伙伴或对大数据感兴趣的朋友记得关注小菌哟(^U^)ノ~YO

在这里插入图片描述

文章来源: alice.blog.csdn.net,作者:大数据梦想家,版权归原作者所有,如需转载,请联系作者。

原文链接:alice.blog.csdn.net/article/details/103656799

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。