• 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注册上线。

  • 相关阅读:
    手动封装 时间选择器(只显示时分)
    页面跳转问题-button 确定提交按钮
    java String类型转 java.sql.time类型
    Mysql 时间处理
    微信-商城商品的图文/商品链接分享(后台数据合成图片+二维码生成)
    np.nan 1.0 2.0 df.apply
    pandas math.isnan
    df.apply
    pandas多条件行数据筛选
    pandas cumsum/sum calc percentage
  • 原文地址:https://www.cnblogs.com/joey-413/p/14009203.html
Copyright © 2020-2023  润新知