Hbase读写原理及三大机制

HBase架构原理

在这里插入图片描述

HBase读写流程

Client对HBase读写请求,跟HMaster没有任何关系,客户端只需要知道Zookeeper的地址即可
HBase中有一张非常重要的表—Meta表,存储了HBase所有的表、所有的Region的详细的信息,比如Region开始的key,结束的key,所在Regionserver的地址。Meta表就相当于一个目录,通过它可以快速定位到数据的实际位置,而zookeeper中恰好存储了meta表的region信息,所以先从zookeeper中找到meta表region的位置,然后读取meta表中的数据。meta中又存储了用户表的region信息。,因此读写数据,只需要跟Zookeeper对应的Regionserver进行交互就可以了。
查看meta表信息
hbase(main):011:0> scan ‘hbase:meta’
1.HBase写数据流程

  1. Client先访问zookeeper,找到Meta表位于哪个Region Server,并去访问获取Meta表数据。
  2. 根据读请求的 namespace:table/rowkey,查询出目标数据位于哪个 Region Server 中的哪个 Region 中。并将该 table 的 息以及 meta 表的位置信息缓存在客户端的 meta cache,方便下次访问。
  3. Client向该HRegionServer服务器发起写入数据请求,然后HRegionServer收到请求并响应。
  4. Client先把数据写入到HLog,以防止数据丢失**。然后将数据写入到Memstore**。如果HLog和Memstore均写入成功,则这条数据写入成功。
    写流程图:
    在这里插入图片描述

2.Hbase读数据流程

  1. 首先Clien
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值