目录
百战程序员,全站22050+开发课程+文档 ,学习精选优质好课快人一步!观看视频 快捷键ALT+N

大数据全系列 教程

1869个小节阅读:467.3k

收藏
全部开发者教程

408考研

JAVA全系列 教程

面向对象的程序设计语言

Python全系列 教程

Python3.x版本,未来主流的版本

人工智能 教程

顺势而为,AI创新未来

大厂算法 教程

算法,程序员自我提升必经之路

C++ 教程

一门通用计算机编程语言

微服务 教程

目前业界流行的框架组合

web前端全系列 教程

通向WEB技术世界的钥匙

大数据全系列 教程

站在云端操控万千数据

AIGC全能工具班

A

A A

White Night

阅读(247)
赞(0)

2.2.2 RegionServer管理

给RegionServer赋值region(最好理解)

当hbase启动的时候,region通过如下步骤赋值给regionserver:

  1. 系统启动的时候,master调用AssignmentManager(赋值管理器)
  2. AssignmentManager在hbase:meta中查找已经存在的region条目
  3. 如果region条目依旧是正确的(比如说regionserver依然在线),就保留该赋值信息
  4. 如果赋值不正确,就调用LoadBalancerFactory对region进行赋值。负载平衡器将region赋值给一个regionserver。
  5. 在regionserver打开region的时候,使用regionserver的开始更新hbase:meta中regionserver的赋值。

当客户端访问的时候,regionserver失败的时候:

  1. 由于regionserver宕机,region立即不可用
  2. master检测到该regionserver的失败
  3. 认为region的赋值不正确,使用启动顺序的流程重新给region赋值
  4. 正在进行的查询会重试,而不是丢失。
  5. 在下述时间内操作会转移到新的regionserver:zookeeper session timeout+split time+assignment/replay time

Hbase:meta表中的数据:

  1. client->zks,获取到hbase:meta表所在的regionserver

  2. client->regionserver ,获取rk101对应的region:psn-region2,从psn-region2中获取它所在的regionserver:regionserver3

  3. client->regionserver3:从regionserver3服务器中找到对应的psn-region2并获取数据。如果在获取的途中regionserver3down了,Master重新为psn-region2赋值,比如重新赋值到regionserver2,client重新请求regionserver2.

    1. Client->regionserver3(宕机了,在zk上对应的临时节点一定时间后消失)
    2. 重新赋值
    3. Client->hbase:meta-->regionserver2(重新分配一个regionserver)
    4. Client->regionserver2->对应的region

实时学习反馈

1. 当hbase启动的时候,region赋值给regionserver的步骤,正确的顺序是?

A AssignmentManager在hbase:meta中查找已经存在的region条目

B 系统启动的时候,master调用AssignmentManager(赋值管理器)

C 在regionserver打开region的时候,使用regionserver的开始更新hbase:meta中regionserver的赋值。

D 如果region条目依旧是正确的(比如说regionserver依然在线),就保留该赋值信息;如果赋值不正确,就调用LoadBalancerFactory对region进行赋值,负载平衡器将region赋值给一个regionserver

答案

1.BADC

北京市昌平区回龙观镇南店村综合商业楼2楼226室

©2014-2023 百战卓越(北京)科技有限公司 All Rights Reserved.

京ICP备14032124号-2