• Hbase读写流程&寻址机制


    注意:zk:zookeeper   rs:RegionServer

    寻址机制

    阶段一:HBase-0.96版本之前

      流程:client  --->   -root表  ----->   .meta表  ----> region   即三层跳转

     

    1. client向zk发送请求,获得root所在的rs地址

    2. client请求root所在的rs地址,获取meta表地址,并cache相关信息,以便于下次访问

    3. client请求meta表的rs地址,获取访问数据所在的rs地址信息,并cache相关信息,以便于下次访问

    4. 根据信息访问对应的rs,并获取数据

    阶段二: HBase-0.96版本之后

      流程:  client  ---->  meta表  ----->  region

    1. client请求zk获取相应的meta表所在的rs地址

    2. 请求meta所在的rs获取数据所在的rs地址,并cache下来,以便于下次访问

    3. client访问数据所在的rs,获取数据

    读流程:

    1. client向zk发送读请求,从meta表中读取数据所在的region的位置,获得相应的rs信息

    2. 通过rs找到对应的region

    3. 先从MemStore找数据,如果没有则去blockcache里读取,如果没有则去storeFile里读数据

    4. 注意:如果是从storeFile中读取的数据,则把数据写入BlockCache再返回给客户端

    写流程:

    1. client向zk发送写请求,获取可以写入的rs中的region

    2. 数据写入Hlog和MemStore

    3. 当MemStore达到阈值时,将数据flush成一个storefile

    4. 当storefile文件不断的增多,触发合并操作,合并为一个大的storefile并进行数据的删除、修改

    5. 当storefile大小达到一个阈值时,触发region的切分操作,将原来的region切分为两个新的region

    6. 父region退役,子region注册上线。

  • 相关阅读:
    jsp第四次
    jsp第二次作业
    jsp第一次作业
    软件测试课堂练习
    11.11日
    10.28
    10.25
    10.21
    jsp第七周作业
    JSP第六周作业
  • 原文地址:https://www.cnblogs.com/joey-413/p/14009203.html
Copyright © 2020-2023  润新知