HBase的写入流程、HBase的读取流程(HBase查询路由)、-root-表、.meta表 04

1. HBase的写入流程

在这里插入图片描述

  • client通过zk, 找到对应的hregionServer
  • 数据会先写入到hlog和memStore中
  • memStore满了后,会flush到一个StoreFile.
  • storeFile达到一定阀值(比如64M), 触发compact,会合并成一个大的storeFile, 同时进行版本合并和数据删除
  • 多个storeFile合并成一个StroeFile, 当这个StroeFile达到一定阀值(比如256M),会触发split操作, 切分为两个storeFile.
  • split操作相当于把HRegion切分为两个HRegion, 旧的hregion下线, 新的storeFile分配到这两个hregion中, hmaster又把这两个hregion分配到相应的hregisonServer上(有了20G的两个hregison)

2. -root-表、.meta表

HBase中的数据当做一本书,数有大目录,详细目录
大目录就是-root-,大目录的地址存放在zk中
小目录就是.meta,小目录的地址存在-root-(大目录中)
在这里插入图片描述
HBase中有两张特殊的表,-root-和.meta(元数据表)

  • -root-(书的大目录):记录**.meta表的HRegion信息,-root-本身只有一个HRegion**
  • .meta(书的小目录):记录HBase存储数据的表的HRegion信息,.meta本身可以有多个HRegion,HRegion在哪儿,记录在-root-表中
  • zookeeper中记录了**-root-的HRegion信息**

3. HBase查询路由

在这里插入图片描述
在这里插入图片描述

  • 访问zookeeper
  • 通过zookeeper存储的-root-的location(书在哪儿), 找到-root-表, 找到了大目录
  • 通过大目录, 找到.meta(小目录, 也就是表的详细元数据信息)
  • 通过小目录, 就能具体找到数据的位置了.

如果喜欢本文章,请用小手点个赞~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值