空洞的盒子
HBase读写流程
原创
关注作者
前往小程序,Get
更优
阅读体验!
立即前往
腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
空洞的盒子
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
社区首页
>
专栏
>
HBase读写流程
HBase读写流程
原创
空洞的盒子
关注
发布于 2024-01-24 17:34:03
285
0
发布于 2024-01-24 17:34:03
举报
文章被收录于专栏:
JD的专栏
写流程
客户端与 HBase 集群建立连接:客户端应用程序使用 HBase 提供的 Java API 或其他支持的编程语言与 HBase 集群建立连接。
创建 HTable 对象:客户端使用 HBase 提供的 API 创建一个 HTable 对象,该对象表示要写入数据的表。
构建 Put 对象:客户端创建一个 Put 对象,并指定要写入的行键(Row Key)。
添加列族和列数据:客户端可以为 Put 对象添加一个或多个列族和列数据。每个列数据由列族、列限定符(Column Qualifier)和值组成。
执行数据写入:客户端调用 HTable 对象的 `put()` 方法,将 Put 对象传递给它。HTable 对象将负责将数据写入 HBase 集群。
数据写入 HBase RegionServer:HTable 对象将数据发送到 HBase 集群中的 RegionServer。RegionServer 根据行键的哈希值将数据路由到相应的 Region。
写入 MemStore:RegionServer 接收到数据后,将数据写入内存中的 MemStore。MemStore 是 HBase 用于暂存数据的内存缓冲区。
刷写到磁盘:当 MemStore 中的数据积累到一定大小时,RegionServer 将其刷写到磁盘上的 HFile 文件。HFile 是 HBase 的数据存储格式之一。
WAL 日志写入:在数据写入 MemStore 和刷写到磁盘之前,RegionServer 会将写操作记录到 Write-Ahead Log(WAL)中。WAL 是 HBase 用于持久化写操作的日志文件。
数据写入完成:当数据成功写入 MemStore 和 HFile 文件,并且 WAL 日志记录成功后,数据写入流程完成。
读流程
客户端与 HBase 集群建立连接:客户端应用程序使用 HBase 提供的 Java API 或其他支持的编程语言与 HBase 集群建立连接。
创建 HTable 对象:客户端使用 HBase 提供的 API 创建一个 HTable 对象,该对象表示要读取数据的表。
构建 Get 对象:客户端创建一个 Get 对象,并指定要读取的行键(Row Key)。
添加列族和列限定符:客户端可以为 Get 对象添加一个或多个列族和列限定符,以指定要读取的列。
执行数据读取:客户端调用 HTable 对象的 `get()` 方法,将 Get 对象传递给它。HTable 对象将负责从 HBase 集群中读取数据。
数据读取 HBase RegionServer:HTable 对象将 Get 请求发送到 HBase 集群中的 RegionServer。RegionServer 根据行键的哈希值将请求路由到相应的 Region。
从 MemStore 和 HFile 中读取数据:RegionServer 从内存中的 MemStore 和磁盘上的 HFile 文件中读取数据。如果数据在 MemStore 中找到,则直接返回;如果在 MemStore 中未找到,则从 HFile 文件中读取。
返回数据给客户端:RegionServer 将读取到的数据返回给 HTable 对象,然后 HTable 对象将数据返回给客户端应用程序。
数据读取完成:客户端应用程序接收到数据后,读取流程完成。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
hbase
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系
cloudcommunity@tencent.com
删除。
hbase
评论
登录
后参与评论
0 条评论
热度
最新
推荐阅读
LV.
文章
0
获赞
0
目录
写流程
读流程
相关产品与服务
云数据库 HBase
产品介绍
11.11 上云拼团GO
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档
0
0
0
推荐