一种检查点构建方法、装置、电子设备及存储介质制造方法及图纸

技术编号:38209112 阅读:14 留言:0更新日期:2023-07-21 16:59
本发明专利技术公开了一种检查点构建方法、装置、电子设备及存储介质;该方法包括:获取数据库中的至少一个数据表的主键索引;针对每个主键索引,确定所述主键索引对应的每个键值对,其中,所述键值对的值指向数据的最新版本;根据每个键值对执行检查点,以完成对数据的最新版本的备份,解决了内存数据库中检查点构建时间较长的问题,通过数据表的主键索引确定键值对,键值对中的值指向数据的最新版本,根据键值对执行检查点,即可以直接获取到最新版本,避免对数据库中保存的所有版本均进行扫描,完成数据的快速备份,无需对大量的无效版本以及空闲位置进行扫描,减少扫描的数据量,节省时间,实现了高效、快速的全库扫描。快速的全库扫描。快速的全库扫描。

【技术实现步骤摘要】
一种检查点构建方法、装置、电子设备及存储介质


[0001]本专利技术涉及数据库
,尤其涉及一种检查点构建方法、装置、电子设备及存储介质。

技术介绍

[0002]传统磁盘数据库的检查点原理是一种数据备份和恢复机制。在数据库运行过程中,不断有新的事务产生并更新数据,这些变化被记录在内存中的缓存区中,称为日志文件。由于数据量庞大,如果一旦系统发生故障或意外宕机,将可能丢失重要数据,导致数据库无法正常工作。为了解决这个问题,数据库会定期生成检查点,将内存中的缓存区数据持久化到磁盘上,即写入到数据文件中。检查点分为增量检查点和全量检查点,全量检查点需要对整个数据库进行全盘的扫描,获取数据库中所有满足搜索条件的记录。全量检查点最主要的问题是每一次的检查点数据量巨大,以及每一次的扫描耗时较长。检查点需要做到如下几点要求:持久性、可恢复性、高效性、一致性和可定制性。
[0003]传统内存数据库的检查点需要做到全量检查点的功能,其扫描方案存在以下情况:一个多版本数据库执行了一段时间后,即使有垃圾回收机制,也会存在同一个记录在数据库中保留多个版本的情况,如果依次扫描,会在扫描多余版本上造成不小的时间开销;在一些内存数据库中,表中除了已经存在的记录的不同版本外,还存在为未来新插入的记录预分配的空间,在进行扫描图中,对这些预分配的空间的扫描也会造成多余的时间开销。上述两种情况都对检查点的“高效性”造成了较大的影响,会造成检查点构建时间较长。

技术实现思路

[0004]本专利技术提供了一种检查点构建方法、装置、电子设备及存储介质,以解决内存数据库中检查点构建时间较长的问题。
[0005]根据本专利技术的一方面,提供了一种检查点构建方法,包括:
[0006]获取数据库中的至少一个数据表的主键索引;
[0007]针对每个主键索引,确定所述主键索引对应的每个键值对,其中,所述键值对的值指向数据的最新版本;
[0008]根据每个键值对执行检查点,以完成对数据的最新版本的备份。
[0009]根据本专利技术的另一方面,提供了一种检查点构建装置,包括:
[0010]索引获取模块,用于获取数据库中的至少一个数据表的主键索引;
[0011]键值对确定模块,用于针对每个主键索引,确定所述主键索引对应的每个键值对,其中,所述键值对的值指向数据的最新版本;
[0012]检查点执行模块,用于根据每个键值对执行检查点,以完成对数据的最新版本的备份。
[0013]根据本专利技术的另一方面,提供了一种电子设备,所述电子设备包括:
[0014]至少一个处理器;以及
[0015]与所述至少一个处理器通信连接的存储器;其中,
[0016]所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术任一实施例所述的检查点构建方法。
[0017]根据本专利技术的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本专利技术任一实施例所述的检查点构建方法。
[0018]本专利技术实施例的技术方案,通过获取数据库中的至少一个数据表的主键索引;针对每个主键索引,确定所述主键索引对应的每个键值对,其中,所述键值对的值指向数据的最新版本;根据每个键值对执行检查点,以完成对数据的最新版本的备份,解决了内存数据库中检查点构建时间较长的问题,通过数据表的主键索引确定键值对,键值对中的值指向数据的最新版本,根据键值对执行检查点,即可以直接获取到最新版本,避免对数据库中保存的所有版本均进行扫描,完成数据的快速备份,无需对大量的无效版本以及空闲位置进行扫描,减少扫描的数据量,节省时间,实现了高效、快速的全库扫描。
[0019]应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围。本专利技术的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0020]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是根据本专利技术实施例一提供的一种检查点构建方法的流程图;
[0022]图2是根据本专利技术实施例一提供的一种索引键值对的展示示例图;
[0023]图3是根据本专利技术实施例二提供的一种检查点构建方法的流程图;
[0024]图4是根据本专利技术实施例二提供的一种MVTO数据库中的版本链的展示示例图;
[0025]图5是根据本专利技术实施例三提供的一种检查点构建装置的结构示意图;
[0026]图6是实现本专利技术实施例的检查点构建方法的电子设备的结构示意图。
具体实施方式
[0027]为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。
[0028]需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆
盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0029]实施例一
[0030]图1为本专利技术实施例一提供了一种检查点构建方法的流程图,本实施例可适用于检查点构建情况,该方法可以由检查点构建装置来执行,该检查点构建装置可以采用硬件和/或软件的形式实现,该检查点构建装置可配置于电子设备中。如图1所示,该方法包括:
[0031]S101、获取数据库中的至少一个数据表的主键索引。
[0032]在本实施例中,数据库为内存数据库,例如,MVTO内存数据库;数据表为数据库中的任意数据表。
[0033]MVTO为多版本时间戳并发控制技术,MVTO的基本原理是为每个事务创建多个版本的数据,并为每个事务分配一个时间戳。当事务读取数据时,它只能访问早于它的时间戳版本的数据。当事务更新数据时,它创建一个新的版本,并将时间戳分配给该版本,以保证该版本对于后续的事务可见。同时,MVTO采用乐观并发控制机制,即允许多个事务同时读取同一个数据,但只有在它们没有互相干扰的情况下才允许同时进行更新操作,否则就需要进行回滚。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种检查点构建方法,其特征在于,包括:获取数据库中的至少一个数据表的主键索引;针对每个主键索引,确定所述主键索引对应的每个键值对,其中,所述键值对的值指向数据的最新版本;根据每个键值对执行检查点,以完成对数据的最新版本的备份。2.根据权利要求1所述的方法,其特征在于,所述根据每个键值对执行检查点,包括:获取当前时间戳;根据所述当前时间戳对各所述键值对所对应的数据版本执行检查点。3.根据权利要求2所述的方法,其特征在于,所述根据所述当前时间戳对各所述键值对所对应的数据版本执行检查点,包括:针对每个键值对,确定所述键值对中的值指向的最新版本;若根据所述当前时间戳确定所述最新版本对检查点可见,对所述最新版本进行备份。4.根据权利要求3所述的方法,其特征在于,还包括:若根据所述当前时间戳确定所述最新版本对检查点不可见,根据版本链向前搜索直到搜索到所述当前时间戳所对应的最新可见版本,对所述最新可见版本进行备份。5.根据权利要求3所述的方法,其特征在于,还包括:若所述当前时间戳对应的版本已被删除,则不进行备份。6.根据权利要求2

【专利技术属性】
技术研发人员:谢玉波周开颜宫学庆刘汪根
申请(专利权)人:星环信息科技上海股份有限公司
类型:发明
国别省市:

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

1