了解读写数据流程 | 学习笔记

简介: 快速学习 了解读写数据流程

开发者学堂课程【NoSQL 数据库 Kudu 教程了解读写数据流程学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/723/detail/12914


了解读写数据流程


内容介绍:

一、 Kudu 写流程

二、 Kudu 读流程

三、 Kudu 更新流程

 

一、 Kudu 写流程

Client 请求写数据时,先根据主键从 Master  Server 中获取要访问的目标Tablets ,然后到依次对应的 Tablet 获取数据。要注意, kudu 中需要设定主键,所以它存在主键约束,判断主键是否存在将会显得非常重要,如果一个主键已经存在,当再插入一个相同主键后,就会报错。一个 Tablet 中存在很多个 RowSets ,为了提升性能,要尽可能地减少要扫描的 RowSets 数量。

首先,我们先通过每个 RowSet 中记录的主键的(最大最小)范围,过滤掉一批不存在日标主键的RowSets ,然后在根据 Row Set 中的布隆过滤器,过滤掉确定不存在目标主键的 RowSets ,最后再通过 RowSets 中的 B ﹣树索引,精确定位目标主键是否存在。

如果主健己经存在,则报错(主键重复),否则就进行写数据(写 MemRowSet )

image.png

 

二、 Kudu 读流程

数据读取过程大致如下:先根据要扫描数据的主键范围,定位到目标的 Tablets ,然后读取 Tablets 中的 RowSets

在读取每个 RowSet 时,先根据主键过滤要 scan 范围,然后加载范用内的 base  data , 再找到对应的 delta  stores ,应用所有变更,最后 union MemRowSet 中的内容,返回数据给 Client

image.png

 

三、 kudu 更新流程

数据更新的核心是定位到待更新数据的位置,这块与写入的时候类似,等定位到具体位置后,然后将变更写到对应的 doltn store 中。

image.png

相关文章
|
SQL 关系型数据库 MySQL
pt-tools系列:pt-online-schema-change 最佳实践
pt的详细步骤 Step 1: Create the new table. Step 2: Alter the new, empty table. This should be very quick, or die if the user specified a bad alter statement.
5641 0
|
NoSQL 安全 MongoDB
精准数据清理:掌握 MongoDB 删除集合的方法与最佳实践
精准数据清理:掌握 MongoDB 删除集合的方法与最佳实践
738 0
|
4天前
|
数据采集 人工智能 安全
|
13天前
|
云安全 监控 安全
|
5天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1102 152
|
18天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1776 9
|
10天前
|
人工智能 自然语言处理 API
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸
一句话生成拓扑图!next-ai-draw-io 结合 AI 与 Draw.io,通过自然语言秒出架构图,支持私有部署、免费大模型接口,彻底解放生产力,绘图效率直接爆炸。
708 152