System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据库索引页面的回收方法及相关产品技术_技高网

数据库索引页面的回收方法及相关产品技术

技术编号:43202290 阅读:5 留言:0更新日期:2024-11-01 20:20
本发明专利技术提供了一种数据库索引页面的回收方法及相关产品。其中上述方法包括:获取回收空页面的回收指令,空页面为经过数据库操作之后导致内部数据记录为空的索引页面;扫描数据库中从索引树上移除的空页面;根据回收指令确定最小可见事务号;根据最小可见事务号与移除的空页面中记录的回收事务号判断空页面是否允许回收;若是,则回收空页面。通过此方法能够通过最小可见事务号与移除的空页面中记录的回收事务号进行比对从而确定移除的空页面是否能够安全回收,从而在提升数据库资源的利用率以及索引的效率的同时,不会过多地增加数据库的开销。

【技术实现步骤摘要】

本专利技术涉及数据库,特别是涉及一种数据库索引页面的回收方法及相关产品


技术介绍

1、基于磁盘的关系数据库大部分都支持btree索引,因为btree索引在并发性能、点查询、范围查询、唯一性支持上能力全面。在部分新增删除较多的场景下,如果索引项大部分是按顺序增加,例如一些时序数据、编号数据,索引会出现新索引项无法使用的空页面,回收重用这些空页面是优化索引空间使用的重要技术。

2、btree索引为了更好的并发能力,在扫描时不会做大范围的封锁。页面即使被从树中移除,也无法确定是否有刚放开父亲、兄弟节点页面,链接过来的扫描,难以确定是否可以回收重用。


技术实现思路

1、鉴于上述问题,本专利技术提出了一种克服上述问题或者至少部分地解决上述问题的数据库索引页面的回收方法及相关产品。

2、本专利技术的一个目的是安全回收数据库中的空页面。

3、本专利技术的一个进一步的目的是提升数据库资源的利用率。

4、特别地,本专利技术提供了一种数据库索引页面的回收方法,其包括:

5、获取回收空页面的回收指令,空页面为经过数据库操作之后导致内部数据记录为空的索引页面;

6、扫描数据库中从索引树上移除的空页面;

7、根据回收指令确定最小可见事务号;

8、根据最小可见事务号与移除的空页面中记录的回收事务号判断空页面是否允许回收;

9、若是,则回收空页面。

10、可选地,扫描数据库中从索引树上移除的空页面的步骤之前还包括:

11、获取数据库的索引树中待移除的空页面;

12、移除空页面并记录空页面对应的回收事务号,回收事务号为移除空页面时数据库要分配的下一个事务号。

13、可选地,获取数据库的索引树中待移除的空页面的步骤包括:

14、扫描数据库中的索引页面;

15、若索引页面中的数据记录被删除为空,确定索引页面为待移除的空页面。

16、可选地,根据回收指令确定最小可见事务号的步骤包括:

17、获取数据库在接收到回收指令时刻的快照;

18、根据快照确定最小可见事务号。

19、可选地,根据快照确定最小可见事务号的步骤包括:

20、获取快照记录的目标事务号,目标事务号为快照生成时数据库将要分配的下一个事务号;

21、获取数据库中处于执行状态的事务对应的执行事务号,并将小于目标事务号的执行事务号作为可见事务号;

22、在可见事务号中选择最小的执行事务号作为最小可见事务号。

23、可选地,根据最小可见事务号与移除的空页面中记录的回收事务号判断空页面是否允许回收的步骤包括:

24、判断最小可见事务号是否大于等于回收事务号;

25、若是,则判定空页面允许回收。

26、可选地,事务号包括:提交序列号,提交序列号为单调递增的序列号并与数据库中的事务一一对应。

27、根据本专利技术的另一个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一种的数据库索引页面的回收方法的步骤。

28、根据本专利技术的又一个方面,还提供了一种计算机程序产品,其包括计算机程序,该计算机程序被处理器执行时实现上述任一种的数据库索引页面的回收方法的步骤。

29、根据本专利技术的再一个方面,还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并在处理器上运行的机器可执行程序,并且处理器执行机器可执行程序时实现上述任一种的数据库索引页面的回收方法的步骤。

30、本专利技术的数据库索引页面的回收方法,获取回收空页面的回收指令,空页面为经过数据库操作之后导致内部数据记录为空的索引页面;扫描数据库中从索引树上移除的空页面;根据回收指令确定最小可见事务号;根据最小可见事务号与移除的空页面中记录的回收事务号判断空页面是否允许回收;若是,则回收空页面。通过此方法能够通过最小可见事务号与移除的空页面中记录的回收事务号进行比对从而确定移除的空页面是否能够安全回收,从而在提升数据库资源的利用率以及索引的效率的同时,不会过多地增加数据库的开销。

31、根据下文结合附图对本专利技术具体实施例的详细描述,本领域技术人员将会更加明了本专利技术的上述以及其他目的、优点和特征。

本文档来自技高网...

【技术保护点】

1.一种数据库索引页面的回收方法,包括:

2.根据权利要求1所述的数据库索引页面的回收方法,其中,

3.根据权利要求2所述的数据库索引页面的回收方法,其中,

4.根据权利要求1所述的数据库索引页面的回收方法,其中,

5.根据权利要求4所述的数据库索引页面的回收方法,其中,

6.根据权利要求1所述的数据库索引页面的回收方法,其中,

7.根据权利要求1所述的数据库索引页面的回收方法,其中,

8.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的数据库索引页面的回收方法的步骤。

9.一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的数据库索引页面的回收方法的步骤。

10.一种计算机设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的机器可执行程序,并且所述处理器执行所述机器可执行程序时实现根据权利要求1至7任一项所述的数据库索引页面的回收方法的步骤。

【技术特征摘要】

1.一种数据库索引页面的回收方法,包括:

2.根据权利要求1所述的数据库索引页面的回收方法,其中,

3.根据权利要求2所述的数据库索引页面的回收方法,其中,

4.根据权利要求1所述的数据库索引页面的回收方法,其中,

5.根据权利要求4所述的数据库索引页面的回收方法,其中,

6.根据权利要求1所述的数据库索引页面的回收方法,其中,

7.根据权利要求1所述的数据库索引页面的回收方法,其中,

8.一种计算机...

【专利技术属性】
技术研发人员:杨尚冷建全孙文奇
申请(专利权)人:中电科金仓北京科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1