HBase原理(数据读写流程)

本文详细介绍了HBase的数据读写流程,包括客户端如何通过ZooKeeper找到RegionServer,读取时的BlockCache和MemStore机制,以及写入时的数据路径。此外,还阐述了数据flush、合并与拆分的过程,分析了Region拆分的计算策略。
摘要由CSDN通过智能技术生成

1. 读流程

在这里插入图片描述
1)Client先访问ZooKeeper,获取meta表所在的RegionServer服务器节点.
2)返回给Client端,RegionServer的节点信息.
3)Client向RegionServer发起请求,获取rowkey所在Region信息.
4)RegionServer通过meta表中的记录将,rowkey所在Region信息返回给Client.
5)Client向Region发起读请求.

先去MemStore找数据,如果没有,再到BlockCache上去读取数据.
如果BlockCache也没有(或者MemStore和BlockCache都只是部分数据)则最后去StoreFile上读取数据(StoreFile是以HFile的形式存储在HDFS上的,相较前两处效率比较低,因此出于效率考虑会先经过前面的2步)

6)返回结果给Client.

如果是从StoreFile中读取数据的话,则不会直接返回给Client,而是先将数据写入BlockCache后,再返回给Client.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值