(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211159073.6
(22)申请日 2022.09.22
(71)申请人 北京云思智学 科技有限公司
地址 101106 北京市通州区经济开发区东
区靓丽三街9号-20 60
(72)发明人 徐锐波 卢文伟 幸福 刘方
(74)专利代理 机构 北京中联智道知识产权代理
事务所(普通 合伙) 11963
专利代理师 熊蒙
(51)Int.Cl.
G06F 16/22(2019.01)
G06F 16/23(2019.01)
G06F 16/215(2019.01)
G06F 12/0882(2016.01)
G06F 9/54(2006.01)G06F 9/46(2006.01)
(54)发明名称
基于B+树数据库的空闲页管理方法、 装置及
存储介质
(57)摘要
本发明公开了基于B+树数据库的空闲页管
理方法、 装置及存储介质, 所述基于B+树数据库
的空闲页管理方法, 包括: 空闲页增量数据写入
流程: 写事务开始执行, 根据写事务针对空闲页
进行操作, 并记录空闲页的增量页数据信息; 空
闲页全量数据写入流程: 当所述空闲页全量数据
写入流程开始执行的配置条件被触发时, 获取全
量空闲页数据信息进行写入, 并在全量空闲页数
据信息写入完成后清空相应的增量页数据信息。
本发明针对B+树存储大数量且存在较大的空闲
页时, 写事务提交 时空闲页的写入存在巨大的性
能损耗的问题, 提出了空闲页增量数据写入流程
+空闲页全量数据写入流程的方法, 解决了B+树
大数据量下增 删数据时的写性能难题, 具有较高
的创新性和使用价 值。
权利要求书2页 说明书10页 附图4页
CN 115510060 A
2022.12.23
CN 115510060 A
1.基于B+树数据库的空 闲页管理方法, 其特 征在于, 包括:
空闲页增量数据写入流程: 写事务开始执行, 根据写事务针对空闲页进行操作, 并记录
空闲页的增量页数据信息;
空闲页全量数据写入流程: 当所述空闲页全量数据写入流程开始执行的配置条件被触
发时, 获取全量空闲页数据信息进行写入, 并在全量空闲页数据信息写入完成后清空相应
的增量页数据信息 。
2.根据权利要求1所述的基于B+树数据库的空闲页 管理方法, 其特征在于, 所述空闲页
增量数据写入流程: 写事务开始执行, 根据写事务针对空闲页进 行操作, 并记录空闲页的增
量页数据信息包括:
写事务开始;
逐条执行写事务的每一条语句: 如果是put操作, 则分配满足当前put操作需要 的页空
间, 如果是删除操作, 查找到对应的页空间;
写事务提交: 不记录全量空闲页, 空闲页的增量页数据信息在执行写事务的相应流程
中进行落盘。
3.根据权利要求2所述的基于B+树数据库的空闲页 管理方法, 其特征在于, 所述逐条执
行写事务的每一条语句过程中如果是put操作, 则分配满足当前put需要的页空间包括:
从空闲页中查找, 查找到可用的空闲页空间, 则从空闲页中释放对应的空闲页空间; 如
果空闲页中未找到, 则从应用中的未使用地址开始 找到可用的页空间;
记录空闲页的增量页数据并落盘, 所述的增量页数据包括事务ID, 空闲页ID及操作方
式:移除。
4.根据权利要求2所述的基于B+树数据库的空闲页 管理方法, 其特征在于, 所述逐条执
行写事务的每一条语句过程中如果是删除操作, 查找到对应的页空间包括:
遍历B+树数据库当前 数据页信息, 查找删除操作对象页;
若查找失败, 则忽略, 若查找成功, 则将查找的删除操作对象页加入到空 闲页中;
记录空闲页的增量页数据并落盘, 所述的增量页数据包括事务ID, 空闲页ID及操作方
式:加入。
5.根据权利要求1所述的基于B+树数据库的空闲页 管理方法, 其特征在于, 所述空闲页
全量数据写入流程: 当所述空闲页全量数据写入流程开始执行的配置条件被触发时, 获取
全量空闲页数据信息进行写入, 并在全量空闲页数据信息写入完成后清空相应的增量页数
据信息包括:
写事务开始;
执行空事务;
事务提交: 记录全量空闲页及事务ID, 并落盘, 清 空本次空闲页全量数据写入流程与上
次空闲页全量数据写入流 程之间记录的全部增量页数据。
6.根据权利要求5所述的基于B+树数据库的空闲页 管理方法, 其特征在于, 所述空闲页
全量数据写入流 程开始执行的配置条件被 触发包括:
所述的配置条件为相邻两次空闲页全量数据写入流程之间的时间间隔是否达到预设
时间间隔T0, 当上次空闲页全量数据写入流程执行完成后时间间隔达到T0时, 则配置条件
被触发, 本次空闲页全量数据写入流程开始执行, 其中所述的预设时间间隔T0根据数据库权 利 要 求 书 1/2 页
2
CN 115510060 A
2的写入峰值配置;
和/或, 所述的配置条件为是否接收到调用指令, 当接收到程序主动触发空闲页全量数
据写入流 程的调用指令时, 则配置条件被 触发, 空闲页全量数据写入流 程开始执行。
7.根据权利要求1 ‑6任意一项所述的基于B+树数据库的空闲页管理方法, 其特征在于,
还包括B+树数据库重启流 程:
首先读取全量空 闲页数据到全局空 闲页列表, 同时读取当前事务 ID;
再读取全部的增量页 数据, 将增量页 数据与全量空闲页 数据中的同一空闲页 数据进行
整合, 以确定B+树数据库重启后针对所述空 闲页执行的事务。
8.根据权利要求7所述的基于B+树数据库的空闲页 管理方法, 其特征在于, 所述将增量
页数据与全量空闲页数据中的同一空闲页数据进 行整合, 以确定B+树数据库重启后针对所
述空闲页执行的事务包括:
逐一检查增量页数据中各个空 闲页的增量事务 ID;
如果增量事务 ID不晚于当前的事务 ID被记录, 则忽略增量事务 ID;
如果增量事务ID晚于当前的事务ID被记录, 则应用当前增量页数据, 若事务操作是移
除, 则从全局空闲页列表中移除该 空闲页ID; 若事务操作是加入, 则将该 空闲页ID加入到全
局空闲页列表中。
9.基于B+树数据库的空 闲页管理装置, 其特 征在于, 包括:
空闲页增量数据写入模块: 写事务开始执行, 根据写事务针对空闲页进行操作, 并记录
空闲页的增量页数据信息;
空闲页全量数据写入模块: 当所述空闲页全量数据写入流程开始执行的配置条件被触
发时, 获取全量空闲页数据信息进行写入, 并在全量空闲页数据信息写入完成后清空相应
的增量页数据信息 。
10.一种计算机可读存储介质, 存储有计算机可执行程序, 其特征在于, 所述计算机可
执行程序被执行时, 实现如权利要求1 ‑8任意一项所述的基于B+树数据库的空闲页管理方
法。权 利 要 求 书 2/2 页
3
CN 115510060 A
3
专利 基于B+树数据库的空闲页管理方法、装置及存储介质
安全报告 >
其他 >
文档预览
中文文档
17 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共17页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 思考人生 于 2024-02-07 20:38:22上传分享