前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2021年大数据HBase(十三):HBase读取和存储数据的流程

2021年大数据HBase(十三):HBase读取和存储数据的流程

作者头像
Lansonli
发布2021-10-11 16:27:08
1.6K0
发布2021-10-11 16:27:08
举报
文章被收录于专栏:Lansonli技术博客Lansonli技术博客

HBase读取和存储数据的流程

一、HBase读取数据的流程

1、由客户端发起读取数据的请求, 首先先连接 zookeeper , 从zookeeper获取hbase:meta表被哪个regionServer所管理meta表中主要记录了 hbase中各个表有那些region,以及每个region被哪个regionServer所管理hbase中非常特殊的元数据存储表, 此表只会有一个region

2、连接meta对应的regionServer, 从meta中获取要查询数据的在那些region中, 并将其对应regionServer地址返回给客户端

3、开始并行的连接这些regionServer, 从这些regionServer中获取数据,先从 memStore  --> blockCache ---> storeFile  ---> 大的Hfile

4、各个regionserver将读取到数据返回给client , client根据需要过滤出需要的数据, 最后展示给调用者

二、HBase存储数据的流程

客户端的同步流程: 

1、客户端发起写入数据的请求, 首先会先连接zookeeper, 从zookeeper获取hbase:meta表所在的regionServer的地址

2、连接meta表对应的regionServer, 从meta表获取目标表对应要写入数据的region的地址(基于region的startkey和endKey来确定)

3、连接对应region的regionServer的地址, 开始进行数据的写入

4、首先先将数据写入到这个regionServer的Hlog日志中, 然后在将数据写入到 对应的region中store模块的memStore中, 当这个两个地方都写入完成后, 客户端就会认为数据写入完成了

异步服务器端执行过程:

5、客户端不断的进行数据的写入工作, memStore数据也会不断的增多, 当memStore中数据达到一定的阈值(128M|1小时)后, 内部最终启动一个flush线程, 将数据刷新到HDFS上, 形成一个storeFile文件

6、随着memStore不断刷新数据到HDFS中, storeFile文件也会越来越多, 当storeFile的文件达到一定的阈值后(3个及以上), 启动compact线程, 将多个文件合并最终合并为一个大文件(Hfile)

7、随着不断的合并, 这个大的Hfile文件也会越来越大, 当这个大的Hfile达到一定的阈值(最终10GB)后, 启动split机制, 将大的Hfile一分为二的操作, 此时region也会进行分割操作, 变成两个新的region, 每个region管理每个分割后新的Hfile文件, 原有就得region就会被下线

8、随着不断的进行split, 表的region的数量也会越来越多的


  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢大数据系列文章会每天更新,停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-07-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • HBase读取和存储数据的流程
    • 一、HBase读取数据的流程
      • 二、HBase存储数据的流程
        • 客户端的同步流程: 
        • 异步服务器端执行过程:
    相关产品与服务
    TDSQL MySQL 版
    TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档