CN113934573A - 一种内存数据库的数据恢复方法及装置 - Google Patents

一种内存数据库的数据恢复方法及装置 Download PDF

Info

Publication number
CN113934573A
CN113934573A CN202111094842.4A CN202111094842A CN113934573A CN 113934573 A CN113934573 A CN 113934573A CN 202111094842 A CN202111094842 A CN 202111094842A CN 113934573 A CN113934573 A CN 113934573A
Authority
CN
China
Prior art keywords
data
memory database
database
memory
time point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111094842.4A
Other languages
English (en)
Inventor
邓琨
温启良
夏成文
潘睿
程鹏飞
刘成浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Digital Power Grid Research Institute of China Southern Power Grid Co Ltd
Original Assignee
Shenzhen Digital Power Grid Research Institute of China Southern Power Grid Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Digital Power Grid Research Institute of China Southern Power Grid Co Ltd filed Critical Shenzhen Digital Power Grid Research Institute of China Southern Power Grid Co Ltd
Priority to CN202111094842.4A priority Critical patent/CN113934573A/zh
Publication of CN113934573A publication Critical patent/CN113934573A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments

Abstract

本发明公开了一种内存数据库的数据恢复方法及装置,该方法应用于数据库管理系统,数据库管理系统包括关系数据库和内存数据库,该方法包括:对关系数据库执行发布操作,发布操作用于将关系数据库中目标数据区域对应的数据信息更新至内存数据库;判断内存数据库数据存储区域是否发生数据异常;当判断结果为是时,确定数据存储区域发生数据异常的异常时间点信息;根据发布时间点信息以及异常时间点信息,确定发布时间和异常时间之间的时间差值;当判断时间差值小于第一预设时长时,触发执行对关系数据库执行发布操作,以恢复内存数据库。可见,本发明能够提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响。

Description

一种内存数据库的数据恢复方法及装置
技术领域
本发明涉及数据处理领域,尤其涉及一种内存数据库的数据恢复方法及装置。
背景技术
随着数据处理技术的不断发展,对数据访问的速度要求也越来越高,内存数据库因为其快速的数据访问能力,使其使用也变得越来越频繁。内存数据库指是一种将数据存储在内存中,并可以实现直接操作的数据库,与传统的磁盘数据库相比,内存数据库的读写速度实现大大提升,同时极大提高了数据应用的性能。
然而实际应用中,由于内存数据库运行在内存环境中,更易受到软件错误、系统崩溃、系统掉电等因素影响,致使系统出现故障而不能继续运行。因此,在内存数据库出现故障后,如何及时有效的恢复,使故障对数据库性能的影响降低到最小限度,显得至关重要。
发明内容
本发明提供了一种内存数据库的数据恢复方法及装置,能够提供一种稳定可靠的内存数据库的数据恢复方法,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响。
为了解决上述技术问题,本发明第一方面公开了一种内存数据库的数据恢复方法,所述方法应用于数据库管理系统,所述数据库管理系统包括关系数据库和内存数据库,其中所述关系数据为所述内存数据库的源数据库,所述方法包括:
对所述关系数据库执行发布操作,所述发布操作用于将所述关系数据库中目标数据区域对应的数据信息更新至所述内存数据库,其中,所述目标数据区域对应的数据信息包括所述目标数据区域的待发布数据以及执行所述发布操作时的发布时间点信息;
判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生数据异常;
当判断结果为是时,确定所述数据存储区域发生数据异常的异常时间点信息,所述异常时间点信息为所述数据存储区域发生数据异常的时间点信息;
根据所述发布时间点信息以及所述异常时间点信息,确定所述发布时间点信息与所述异常时间点信息之间的时间差值;
判断所述时间差值是否小于第一预设时长,当判断出所述时间差值小于所述第一预设时长时,触发执行所述的对所述关系数据库执行发布操作的步骤。
作为一种可选的实施方式,在本发明第一方面中,所述方法还包括:
当判断出所述时间差值大于等于所述第一预设时长时,判断是否存在所述内存数据库对应的快照备份集合,其中,所述快照备份集合为每间隔第二预设时长对所述内存数据库所做的所有快照备份的集合;
当判断出存在所述内存数据库对应的所述快照备份集合时,从所述快照备份集合中筛选出目标快照备份;
根据所述目标快照备份,对所述内存数据库执行第一恢复操作,所述第一恢复操作用于将所述目标快照备份加载到内存中,以将所述内存数据库恢复为第一备份内存数据库。
作为一种可选的实施方式,在本发明第一方面中,所述从所述快照备份集合中筛选出目标快照备份,包括:
从所述快照备份集合中筛选出预选快照备份集合,其中,所述预选快照备份集合中每一预选快照备份均与所述目标数据区域相关联;
获取所述预选快照备份集合中的所有所述预选快照备份的备份时间;
按照所述备份时间的先后顺序,对所有所述预选快照备份进行排序,得到所有所述预选快照备份的排序信息;
根据所述排序信息,从所述预选快照备份集合中筛选出最近一次快照备份,将所述最近一次快照备份确定为目标快照备份。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述目标快照备份,对所述内存数据库执行第一恢复操作之后,所述方法还包括:
根据所述第一备份内存数据库,确定出所述第一备份内存数据库中存储的所述待发布数据对应的第一发布时间点信息;
判断所述第一发布时间点信息与执行所述发布操作时的发布时间点信息是否相同;
当判断结果为否时,触发执行所述的对所述内存数据库执行第一恢复操作的步骤,或者触发执行所述的对所述关系数据库执行所述发布操作的步骤,以恢复所述内存数据库。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述目标快照备份,对所述内存数据库执行第一恢复操作,包括:
确定所述目标快照备份中每条数据的类型信息;
根据每个所述类型信息在单位时间内被访存的次数,确定每个所述类型信息的热度值,其中,所述单位时间内被访存的次数越多表明所述热度值越高;
按照所述热度值的大小顺序,对所有所述类型信息进行排序,得到所有所述类型信息的排序信息;
根据所述排序信息,按照所述热度值从大到小的顺序,依次恢复每一所述类型信息对应的数据。
作为一种可选的实施方式,在本发明第一方面中,所述方法还包括:
当判断出不存在所述内存数据库对应的所述快照备份集合时,触发执行对所述关系数据库执行所述发布操作的步骤,以恢复所述内存数据库。
作为一种可选的实施方式,在本发明第一方面中,所述判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生数据异常,包括:
判断所述内存数据库是否发生断电丢失,当判断出所述内存数据库发生断电丢失时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常;或,
判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生更新,当判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生更新时,判断所述变更是否来源于所述发布操作,当判断结果为否时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常;或,
判断在第三预设时长内所述内存数据库中用于存储所述待发布数据的数据存储区域的更新次数超过预设阈值,当判断结果为是时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常。
本发明第二方面公开了一种内存数据库的数据恢复装置,所述装置应用于数据库管理系统,所述数据库管理系统包括关系数据库和内存数据库,所述装置包括:
发布模块,用于对所述关系数据库执行发布操作,所述发布操作用于将所述关系数据库中目标数据区域对应的数据信息更新至所述内存数据库,其中,所述目标数据区域对应的数据信息包括所述目标数据区域的待发布数据以及执行所述发布操作时的发布时间点信息;
第一判断模块,用于判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生数据异常;
第一确定模块,用于当所述第一判断模块判断出结果为否时,确定所述数据存储区域发生数据异常的异常时间点信息,所述异常时间点信息为所述数据存储区域发生数据异常的时间点信息;
第二确定模块,用于根据所述发布时间点信息以及所述异常时间点信息,确定所述发布时间点信息与所述异常时间点信息之间的时间差值;
第二判断模块,用于判断所述时间差值是否小于第一预设时长;当判断出所述时间差值小于所述第一预设时长时,触发所述发布模块对所述关系数据库执行发布操作。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括:
第三判断模块,用于在所述第二判断模块判断出所述时间差值大于等于所述第一预设时长时,判断是否存在所述内存数据库对应的快照备份集合,其中,所述快照备份集合为每间隔第二预设时长对所述内存数据库所做的所有快照备份的集合;
筛选模块,用于在所述第三判断模块判断出存在所述内存数据库对应的所述快照备份集合时,从所述快照备份集合中筛选出目标快照备份;
执行模块,用于根据所述目标快照备份,对所述内存数据库执行第一恢复操作,所述第一恢复操作用于将所述目标快照备份加载到内存中,以将所述内存数据库恢复为第一备份内存数据库。
作为一种可选的实施方式,在本发明第二方面中,所述筛选模块,具体用于:
从所述快照备份集合中筛选出预选快照备份集合,其中,所述预选快照备份集合中每一预选快照备份均与所述目标数据区域相关联;
获取所述预选快照备份集合中的所有所述预选快照备份的备份时间;
按照所述备份时间的先后顺序,对所有所述预选快照备份进行排序,得到所有所述预选快照备份的排序信息;
根据所述排序信息,从所述预选快照备份集合中筛选出最近一次快照备份,将所述最近一次快照备份确定为目标快照备份。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括:
第三确定模块,用于根据执行模块恢复的所述第一备份内存数据库,确定出所述第一备份内存数据库中存储的所述待发布数据对应的第一发布时间点信息;
第四判断模块,用于判断所述第一发布时间点信息与执行所述发布操作时的发布时间点信息是否相同;当判断结果为否时,触发所述执行模块执行对所述内存数据库执行第一恢复操作,或触发所述发布模块对所述关系数据库执行发布操作。
作为一种可选的实施方式,在本发明第二方面中,所述执行模块,包括:
第一确定子模块,用于确定所述目标快照备份中每条数据的类型信息;
第二确定子模块,用于根据每个所述类型信息在单位时间内被访存的次数,确定每个所述类型信息的热度值,其中,所述单位时间内被访存的次数越多表明所述热度值越高;
排序子模块,用于按照所述热度值的大小顺序,对所有所述类型信息进行排序,得到所有所述类型信息的排序信息;
执行子模块,用于根据所述排序信息,按照所述热度值从大到小的顺序,依次恢复每一所述类型信息对应的数据。
作为一种可选的实施方式,在本发明第二方面中,所述第三判断模块还用于,
当判断出不存在所述内存数据库对应的所述快照备份集合时,触发所述发布模块对所述关系数据库执行发布操作,以恢复所述内存数据库。
作为一种可选的实施方式,在本发明第二方面中,所述第一判断模块,具体用于:
判断所述内存数据库是否发生断电丢失,当判断出所述内存数据库发生断电丢失时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常;或,
判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生更新,当判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生更新时,判断所述变更是否来源于所述发布操作,当判断结果为否时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常;或,
判断在第三预设时长内所述内存数据库中用于存储所述待发布数据的数据存储区域的更新次数超过预设阈值,当判断结果为是时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常。
本发明第三方面公开了另一种内存数据库的数据恢复装置,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的任意一种内存数据库的数据恢复方法中的部分或全部步骤。
本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的任意一种内存数据库的数据恢复方法中的部分或全部步骤。
与现有技术相比,本发明具有以下有益效果:
本发明应用于数据库管理系统,数据库管理系统包括关系数据库和内存数据库,本发明中对关系数据库执行发布操作,发布操作用于将关系数据库中目标数据区域对应的数据信息更新至内存数据库,其中,目标数据区域对应的数据信息包括目标数据区域的待发布数据以及执行发布操作时的发布时间点信息;判断内存数据库中用于存储待发布数据的数据存储区域是否发生数据异常;当判断结果为是时,确定数据存储区域发生数据异常的异常时间点信息,异常时间点信息为数据存储区域发生数据异常的时间点信息;根据发布时间点信息以及异常时间点信息,确定发布时间点信息与异常时间点信息之间的时间差值;判断时间差值是否小于第一预设时长,当判断出时间差值小于第一预设时长时,触发执行对关系数据库执行发布操作的步骤,以恢复内存数据库数据存储区域中的数据。可见,本发明能够提供一种稳定可靠的内存数据库的数据恢复方法,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过内存快照和关系库双重数据备份,为内存数据库的动态异常可预报性提供了有力的支持,进一步提高内存数据库数据恢复的可靠性和安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种内存数据库的数据恢复方法的流程示意图;
图2是本发明实施例公开的另一种内存数据库的数据恢复方法的流程示意图;
图3是本发明实施例公开的一种内存数据库的数据恢复装置的结构示意图;
图4是本发明实施例公开的另一种内存数据库的数据恢复装置的结构示意图;
图5是本发明实施例公开的又一种内存数据库的数据恢复装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种方法及装置,该内存数据库的数据恢复方法及装置能够提供一种稳定可靠的内存数据库的数据恢复方法,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过内存快照和关系库双重数据备份,为内存数据库的动态异常可预报性提供了有力的支持,进一步提高内存数据库数据恢复的可靠性和安全性。其中,本发明实施例可以用于任意需要对内存数据库进行恢复的系统中,本发明实施例不做限定。
实施例一
请参阅图1,图1是本发明实施例公开的一种方法的流程示意图。其中,图1所描述的方法可以应用于内存数据库的数据恢复装置中,该内存数据库的数据恢复装置可以是一个独立的装置,也可以集成在数据库管理系统中,本发明实施例不做限定。如图1所示,该内存数据库的数据恢复方法可以包括以下操作:
101、对关系数据库执行发布操作,发布操作用于将关系数据库中目标数据区域对应的数据信息更新至内存数据库。
本发明实施例中,本发明以关系数据库为基准,在关系数据库中进行模型编辑和校验,确认无误后再发布到内存数据库中使用。需要说明的是,内存数据库在运行使用过程中,对内存数据库中对应数据的合法修改只能来源于源数据库,也即关系数据库。对关系数据库执行发布操作,该发布操作用于将关系数据库中目标数据区域对应的数据信息更新至内存数据库中,其中关系数据库的目标数据区域可以是整个关系数据库的所有数据库区域,也可以是单个数据库表,还可以是指定的索引地址区域,本发明实施例不做限定。
进一步的,目标数据区域对应的数据信息包括目标数据区域的待发布数据以及执行发布操作时的发布时间点信息。需要说明的是,目标数据区域对应数据信息至少包括目标数据区域的待发布数据以及执行发布操作时的发布时间点信息,举例说明,关系库中有电压数据表、电流数据表、频率数据表、负荷数据表,在当前时刻(18:00:00)将电压数据表发布到内存数据库的电压内存数据表,此时将当前时刻与关系库的电压数据表绑定,也即将关系库的电压数据表的最新更新时间与当前时刻(18:00:00)绑定,同时在执行完发布操作之后,同样可以得到内存数据库的电压内存数据表的最新更新时间为18:00:00。
此外,目标数据区域对应数据信息也可以包括发布的事件日志信息,还可以包括对待发布数据在内存数据库中的存储地址进行重定向操作的指令等,本发明实施例不做限定。举例说明,内存数据库中的物理地址0-100存储有在18:00:00时刻从关系库中同步来的电压内存数据表,此时对关系数据库执行发布操作,发布的数据信息中包括存储地址重定向地址200-300,此时内存数据库在接收到数据信息之后,不会直接将数据信息覆盖到0-100物理地址区域,而是将数据信息存储到200-300物理地址区域,但是为了保证数据读取的连贯性,同时需要修改内存数据库中相应的逻辑地址为200-300物理地址区域。
102、判断内存数据库中用于存储待发布数据的数据存储区域是否发生数据异常。
本发明实施例中,在将关系数据库中的数据信息发布到内存之后,内存在运行过程中,需要对内存数据库进行检查判断,判断内存数据库中用于存储待发布数据的数据存储区域是否发生数据异常。
103、当判断结果为是时,确定数据存储区域发生数据异常的异常时间点信息,异常时间点信息为数据存储区域发生数据异常的时间点信息。
本发明实施例中,在检测到内存数据库中用于存储待发布数据的数据存储区域发生数据异常时,记录此时发生异常的时间点,也即得到上述的异常是时间点信息。本发明实施例并不限定时间点信息所包含的内容,除至少包括的时间点外,还可以包括异常日志信息,比如发生异常的类型,发生异常时正在进行处理的任务等。
104、根据发布时间点信息以及异常时间点信息,确定发布时间点信息与异常时间点信息之间的时间差值。
本发明实施例中,在103步骤得到数据存储区域发生数据异常的异常时间点之后,可以根据该异常时间点与上述对关系数据库执行发布操作时所记录的最近一次发布时间,得到两个时间之间的时间差值。
105、判断时间差值是否小于第一预设时长,当判断出时间差值小于第一预设时长时,触发执行对关系数据库执行发布操作的步骤。
本发明实施例中,该第一预设时长可以根据实际进行设定,本发明实施例不做限定,比如,可以将第一预设时长设置为在关系数据库执行发布操作将数据同步到内存数据库后设定的为内存数据库进行最快的快照备份的时间;举例说明,在内存数据库在接收到同步数据1分钟后,会对内存数据库进行快照备份。此时,通过判断得到时间差值小于第一预设时长时,也即表明关系数据库在执行发布操作对内存数据库中的数据进行更新之后,系统还未对内存数据库进行快照备份,此时内存数据库中用于存储待发布数据的数据存储区域便发生了异常,进而可以通过触发执行关系数据库执行发布操作,以实现对内存数据库的恢复。
可见,本发明实施例所描述的方法能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响。
在一个可选的实施例中,该方法判断内存数据库中用于存储待发布数据的数据存储区域是否发生数据异常,可以包括如下操作:
判断内存数据库是否发生断电丢失,当判断出内存数据库发生断电丢失时,判断出内存数据库中用于存储待发布数据的数据存储区域发生数据异常;或,
判断内存数据库中用于存储待发布数据的数据存储区域是否发生更新,当判断出内存数据库中用于存储待发布数据的数据存储区域发生更新时,判断变更是否来源于发布操作,当判断结果为否时,判断出内存数据库中用于存储待发布数据的数据存储区域发生数据异常;或,
判断在第三预设时长内内存数据库中用于存储待发布数据的数据存储区域的更新次数超过预设阈值,当判断结果为是时,判断出内存数据库中用于存储待发布数据的数据存储区域发生数据异常。
本发明实施例中,可以通过多种方式来判断内存数据库中用于存储待发布数据的数据存储区域是否发生数据异常,首先是判断出内存数据库发生断电丢失时,便认为内存数据库中用于存储待发布数据的数据存储区域发生数据异常。也可以是通过判断数据存储区域发生更新的来源,需要说明的是,本发明对内存数据库中对应数据的合法修改只能来源于源数据库,也即关系数据库,所以当判断出内存数据库的数据存储区域发生数据变更的来源不是关系数据库,则可以判断存储待发布数据的数据存储区域发生数据异常。还可以通过判断数据存储区域的更新次数是否超过预设阈值来判断,比如,通过检测得到内存数据库中某一数据在1s内被修改了10次,但是通过关系库和内存数据的同步频率和硬件传输性能来看,目前这种修改频率显然超过了正常的同步操作所能达到的频率,便认为内存数据库中用于存储待发布数据的数据存储区域发生数据异常。
进一步的,上述的断电丢失可以是瞬时掉电、关机、开机重启等操作,其中重启还可以包括宕机后重新启动、用户主动选择重新启动设备、用户关机后重新开机等,此时判断为数据异常,触发内存数据库的恢复操作。
可见,本发明实施例所描述的方法能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时可以通过多种数据异常的判定方式,准确的判定出发生异常的时刻,可以进一步提高内存数据恢复的效率。
实施例二
请参阅图2,图2是本发明实施例公开的另一种内存数据库的数据恢复的流程示意图。其中,图2所描述的方法可以应用于内存数据库的数据恢复装置中,该内存数据库的数据恢复装置可以是一个独立的装置,也可以集成在数据库管理系统中,本发明实施例不做限定。如图2所示,该内存数据库的数据恢复方法可以包括以下操作:
201、对关系数据库执行发布操作。
202、判断内存数据库中用于存储待发布数据的数据存储区域是否发生数据异常。
203、当判断结果为是时,确定数据存储区域发生数据异常的异常时间点信息,异常时间点信息为数据存储区域发生数据异常的时间点信息。
204、根据发布时间点信息以及异常时间点信息,确定发布时间点信息与异常时间点信息之间的时间差值。
205、判断时间差值是否小于第一预设时长,当判断出时间差值小于第一预设时长时,触发执行对关系数据库执行发布操作的步骤206、当判断出时间差值大于等于第一预设时长时,判断是否存在内存数据库对应的快照备份集合;其中,快照备份集合为每间隔第二预设时长对内存数据库所做的所有快照备份的集合。
本发明实施例中,本发明可以设定对内存数据库进行周期性地快照备份,其中,进行周期性快照备份的时间间隔,也即上述的第二预设时长可以小于等于上述的第一预设时长(比如快照备份的周期是1分钟,第一预设时长为1分钟或2分钟等),当判断时间差值大于等于第一预设时长,也即当异常发生时,理论上已经对内存数据库做了至少一次快照备份了,此时判断是否实际存在快照备份集合。需要说明的是,快照备份集合中可以是一个快照备份,也可以是多个快照备份,本发明实施例不做限定。
举例说明,以电力调度数据库为例,应用本发明实施例提供的技术方案后,可以周期性地(如每半个小时、50分钟等)生成内存数据库的快照备份。例如,假设以0点为起始时刻,可以每隔半个小时将内存数据库进行镜像,得到对应的内存数据库快照备份。此外,生成内存数据库的快照时,可以对应记录该快照备份的备份时间。
进一步的,在本发明实施例中,生成最新的内存数据库的快照备份时,可以覆盖之前的生成的内存数据库的快照备份,即最多仅存在一份内存数据库的快照备份。
又进一步的,在本发明实施例中,当判断出快照备份的存储区域空间已满时,可以将最先备份的一条或几条快照备份进行清除。
再进一步的,在本发明实施例中,可以定时清除过期的内存数据库的快照备份,也可以不清除内存数据库的快照备份。举例来说,假设每隔1分钟生成一份内存数据库快照备份,对于各内存数据库快照备份,可以设置一个有效时间,如12小时、或24小时等,当内存数据库实时镜像过期时,可以清除该过期的内存数据库快照备份。
207、当判断出存在内存数据库对应的快照备份集合时,从快照备份集合中筛选出目标快照备份。
本发明实施例中,当判断出实际存在快照备份集合时,说明数据库系统已经对内存数据库做了至少一次快照备份了,此时需要从快照备份集合中筛选出合适的目标快照备份。
进一步的,当判断出不存在内存数据库对应的快照备份集合时,触发执行对关系数据库执行发布操作的步骤,以恢复内存数据库。
208、根据目标快照备份,对内存数据库执行第一恢复操作。
本发明实施例中,针对步骤201-步骤205的其它描述,请分别对应参照实施例一中针对步骤101-步骤105的详细描述,本发明实施例不再赘述。
本发明实施例中,根据确定出的目标快照备份,对内存数据库执行第一恢复操作,将该目标快照备份加载到内存中,以恢复该目标快照备份中的数据,进而可以将内存数据库恢复为该目标快照备份所对应的第一备份内存数据库。
可见,本发明实施例所描述的方法能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过内存快照和关系库双重数据备份,为内存数据库的动态异常可预报性提供了有力的支持,进一步提高内存数据库数据恢复的可靠性和安全性。
在一个可选的实施例中,该方法从快照备份集合中筛选出目标快照备份,可以包括如下操作:
从快照备份集合中筛选出预选快照备份集合,其中,预选快照备份集合中每一预选快照备份均与目标数据区域相关联;
获取预选快照备份集合中的所有预选快照备份的备份时间;
按照备份时间的先后顺序,对所有预选快照备份进行排序,得到所有预选快照备份的排序信息;
根据排序信息,从预选快照备份集合中筛选出最近一次快照备份,将最近一次快照备份确定为目标快照备份。
本发明实施例中,需要说明的是,如果快照备份集合中只有一份快照备份,则可以直接将该快照备份确定为目标快照备份。此外,首先从快照备份集合中筛选出预选快照备份集合,该预选快照备份集合中的所有预选快照备份均是与目标数据区域相关联的,也即所有预选快照备份中均存有内存数据库中对应的待发布数据。比如,关系数据库发布的数据为电压表数据,则筛选出来的预选快照备份均应包含对应的电压表内存数据。其次,获取每个预选快照备份的备份时间,按照备份时间的先后顺序进行排序,得到预选快照备份的排序信息。最后,从排序信息中筛选中最近时间的一次快照备份,将该最近一次快照备份确定为目标快照备份。
可见,本发明实施例所描述的方法能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过有效的快照备份筛选方案,确定出准确的快照备份,以实现对内存数据库的准确恢复。
在另一个可选的实施例中,该方法根据目标快照备份,对内存数据库执行第一恢复操作,可以包括如下操作:
确定目标快照备份中每条数据的类型信息;
根据每个类型信息在单位时间内被访存的次数,确定每个类型信息的热度值,其中,单位时间内被访存的次数越多表明热度值越高;
按照热度值的大小顺序,对所有类型信息进行排序,得到所有类型信息的排序信息;
根据排序信息,按照热度值从大到小的顺序,依次恢复每一类型信息对应的数据。
本发明实施例中,考虑到内存数据库的实时性,为了能够快速加载数据和降低持久化对内存库性能的损耗,提供了一种通过热度值的方式来分批恢复目标快照备份中的数据。首先,确定目标快照备份中每条数据的类型信息,比如目标快照备份中的数据有电网节点类型,电压类型,电流类型等。根据每种类型信息在单位时间内被访问的次数,确定每种类型信息的热度值。比如,在1分钟内电网节点类型、电压类型,电流类型数据分别被访存的次数为10、20、70,则可以确定电网节点类型、电压类型,电流类型的热度值为0.1、0.2、0.7。按照热度值的大小顺序,对每种类型信息的热度值进行排序,可以得到排序结果为电流类型、电压类型、电网节点类型。则可以根据上述顺序,顺次恢复每一类型信息对应的数据。
进一步的,还可以确定出内存运行过程中下一阶段要访问的数据类型,根据预计的数据访问次序,顺次恢复每一类型信息对应的数据。
可见,本发明实施例所描述的方法能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过热度分析的方式,分批次恢复内存数据库中的数据,提高内存数据库的恢复速度,降低持久化对内存库性能的损耗。
在又一个可选的实施例中,在根据目标快照备份,对内存数据库执行第一恢复操作之后,该方法还可以包括以下操作:
根据第一备份内存数据库,确定出第一备份内存数据库中存储的待发布数据对应的第一发布时间点信息;
判断第一发布时间点信息与执行发布操作时的发布时间点信息是否相同;
当判断结果为否时,触发执行对内存数据库执行第一恢复操作的步骤,或者触发执行对关系数据库执行发布操作的步骤,以恢复内存数据库。
本发明实施例中,在对内存执行第一恢复操作,得到第一备份内存数据库之后,需要判断该第一备份内存数据库是否恢复的与关系数据库一致。对此,本发明提供了一种通过发布时间的比对方式来进行判断。首先,确定出第一备份内存数据库中存储的待发布数据对应的第一发布时间点信息,当判断出第一发布时间点信息与对关系数据库执行发布操作的发布时间一致时,说明内存数据库已经恢复至与关系数据库保持一致的状态;当判断出第一发布时间点信息与对关系数据库执行发布操作的发布时间不一致时,则说明所有的快照备份无法复原内存数据库与关系数据库一致,也即可能在关系库已经将数据发布到内存库,但内存库在未进行快照的情况下发生异常导致新发布的数据丢失,此时只能通过触发执行对关系数据库执行发布操作,重新将关系库中的数据发布到内存数据库中,来实现内存数据库与关系数据库的一致性。
可见,本发明实施例所描述的方法能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时提供一种校验方式来判断恢复之后的内存数据库与关系数据的一致性,进而通过合理的内存数据库恢复方案,来保证内存数据库与源数据库的数据一致性。
实施例三
请参阅图3,图3是本发明实施例公开的一种内存数据库的数据恢复装置的结构示意图。其中,图3所描述的装置可以是一个独立的装置,也可以集成在数据库管理系统中,本发明实施例不做限定。需要说明的是,该内存数据库的数据恢复装置参照的是实施例一和实施例二所描述的一种内存数据库的数据恢复方法中的步骤,详细的描述在本实施例中就不做赘述,如图3所示,该内存数据库的数据恢复装置可以包括:
发布模块301,用于对关系数据库执行发布操作,发布操作用于将关系数据库中目标数据区域对应的数据信息更新至内存数据库,其中,目标数据区域对应的数据信息包括目标数据区域的待发布数据以及执行发布操作时的发布时间点信息;
第一判断模块302,用于判断内存数据库中用于存储待发布数据的数据存储区域是否发生数据异常;
第一确定模块303,用于当第一判断模块302判断出结果为否时,确定数据存储区域发生数据异常的异常时间点信息,异常时间点信息为数据存储区域发生数据异常的时间点信息;
第二确定模块304,用于根据发布时间点信息以及异常时间点信息,确定发布时间点信息与异常时间点信息之间的时间差值;
第二判断模块305,用于判断时间差值是否小于第一预设时长;当判断出时间差值小于第一预设时长时,触发发布模块301对关系数据库执行发布操作。
可见,本发明实施例所描述的装置能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响。
在一个可选的实施例中,如图4所示,该装置还可以包括:
第三判断模块306,用于在第二判断模块305判断出时间差值大于等于第一预设时长时,判断是否存在内存数据库对应的快照备份集合,其中,快照备份集合为每间隔第二预设时长对内存数据库所做的所有快照备份的集合;
筛选模块307,用于在第三判断模块306判断出存在内存数据库对应的快照备份集合时,从快照备份集合中筛选出目标快照备份;
执行模块308,用于根据目标快照备份,对内存数据库执行第一恢复操作,第一恢复操作用于将目标快照备份加载到内存中,以将内存数据库恢复为第一备份内存数据库。
可见,本发明实施例所描述的装置能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过内存快照和关系库双重数据备份,为内存数据库的动态异常可预报性提供了有力的支持,进一步提高内存数据库数据恢复的可靠性和安全性。
在该可选的实施例中,进一步的,第三判断模块306还可以用于:
当判断出不存在内存数据库对应的快照备份集合时,触发发布模块301对关系数据库执行发布操作,以恢复内存数据库。
在另一个可选的实施例中,如图4所示,筛选模块307,可以具体用于:
从快照备份集合中筛选出预选快照备份集合,其中,预选快照备份集合中每一预选快照备份均与目标数据区域相关联;
获取预选快照备份集合中的所有预选快照备份的备份时间;
按照备份时间的先后顺序,对所有预选快照备份进行排序,得到所有预选快照备份的排序信息;
根据排序信息,从预选快照备份集合中筛选出最近一次快照备份,将最近一次快照备份确定为目标快照备份。
可见,本发明实施例所描述的装置能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过有效的快照备份筛选方案,确定出准确的快照备份,以实现对内存数据库的准确恢复。
在又一个可选的实施例中,如图4所示,该装置还可以包括:
第三确定模块309,用于根据执行模块308恢复的第一备份内存数据库,确定出第一备份内存数据库中存储的待发布数据对应的第一发布时间点信息;
第四判断模块310,用于判断第一发布时间点信息与执行发布操作时的发布时间点信息是否相同;当判断结果为否时,触发执行模块308执行对内存数据库执行第一恢复操作,或触发发布模块301对关系数据库执行发布操作。
可见,本发明实施例所描述的装置能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时提供一种校验方式来判断恢复之后的内存数据库与关系数据的一致性,进而通过合理的内存数据库恢复方案,来保证内存数据库与源数据库的数据一致性。
在又一个可选的实施例中,如图4所示,执行模块308,可以包括:
第一确定子模块3081,用于确定目标快照备份中每条数据的类型信息;
第二确定子模块3082,用于根据每个类型信息在单位时间内被访存的次数,确定每个类型信息的热度值,其中,单位时间内被访存的次数越多表明热度值越高;
排序子模块3083,用于按照热度值的大小顺序,对所有类型信息进行排序,得到所有类型信息的排序信息;
执行子模块3084,用于根据排序信息,按照热度值从大到小的顺序,依次恢复每一类型信息对应的数据。
可见,本发明实施例所描述的装置能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时通过热度分析的方式,分批次恢复内存数据库中的数据,提高内存数据库的恢复速度,降低持久化对内存库性能的损耗。
在又一个可选的实施例中,如图4所示,第一判断模块302,具体用于:
判断内存数据库是否发生断电丢失,当判断出内存数据库发生断电丢失时,判断出内存数据库中用于存储待发布数据的数据存储区域发生数据异常;或,
判断内存数据库中用于存储待发布数据的数据存储区域是否发生更新,当判断出内存数据库中用于存储待发布数据的数据存储区域发生更新时,判断变更是否来源于发布操作,当判断结果为否时,判断出内存数据库中用于存储待发布数据的数据存储区域发生数据异常;或,
判断在第三预设时长内内存数据库中用于存储待发布数据的数据存储区域的更新次数超过预设阈值,当判断结果为是时,判断出内存数据库中用于存储待发布数据的数据存储区域发生数据异常。
可见,本发明实施例所描述的装置能够提供一种稳定可靠的内存数据库的数据恢复方法,可以在内存数据库还未进行其他备份操作之前就发生数据异常时,实现对内存数据库的恢复,不必进行其他的校验、核对等复杂检验流程,可以提高内存数据恢复的效率,降低内存数据恢复对系统性能的影响,同时可以通过多种数据异常的判定方式,准确的判定出发生异常的时刻,可以进一步提高内存数据恢复的效率。
实施例四
请参阅图5,图5是本发明实施例公开的又一种内存数据库的数据恢复装置的结构示意图。其中,图5所描述的装置可以是一个独立的装置,也可以集成在内存数据库管理系统中,本发明实施例不做限定。如图5所示,该内存数据库的数据恢复装置可以包括:
存储有可执行程序代码的存储器401;
与存储器401耦合的处理器402;
处理器402调用存储器402中存储的可执行程序代码,执行本发明实施例一或实施例二公开的内存数据库的数据恢复方法中的部分或全部步骤。
实施例五
本发明实施例公开了一种计算机存储介质,该计算机存储介质存储有计算机指令,该计算机指令被调用时,用于执行本发明实施例一或实施例二公开的内存数据库的数据恢复方法中的步骤。
以上所描述的装置实施例仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
需要说明的是本说明书各部分操作所需的计算机程序代码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在计算机(PC、嵌入式智能设备等)上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
最后应说明的是:本发明实施例公开的一种内存数据库的数据恢复方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。

Claims (10)

1.一种内存数据库的数据恢复方法,其特征在于,所述方法应用于数据库管理系统,所述数据库管理系统包括关系数据库和内存数据库,其中所述关系数据为所述内存数据库的源数据库,所述方法包括:
对所述关系数据库执行发布操作,所述发布操作用于将所述关系数据库中目标数据区域对应的数据信息更新至所述内存数据库,其中,所述目标数据区域对应的数据信息包括所述目标数据区域的待发布数据以及执行所述发布操作时的发布时间点信息;
判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生数据异常;
当判断结果为是时,确定所述数据存储区域发生数据异常的异常时间点信息,所述异常时间点信息为所述数据存储区域发生数据异常的时间点信息;
根据所述发布时间点信息以及所述异常时间点信息,确定所述发布时间点信息与所述异常时间点信息之间的时间差值;
判断所述时间差值是否小于第一预设时长,当判断出所述时间差值小于所述第一预设时长时,触发执行所述的对所述关系数据库执行发布操作的步骤。
2.根据权利要求1所述的内存数据库的数据恢复方法,其特征在于,所述方法还包括:
当判断出所述时间差值大于等于所述第一预设时长时,判断是否存在所述内存数据库对应的快照备份集合,其中,所述快照备份集合为每间隔第二预设时长对所述内存数据库所做的所有快照备份的集合;
当判断出存在所述内存数据库对应的所述快照备份集合时,从所述快照备份集合中筛选出目标快照备份;
根据所述目标快照备份,对所述内存数据库执行第一恢复操作,所述第一恢复操作用于将所述目标快照备份加载到内存中,以将所述内存数据库恢复为第一备份内存数据库。
3.根据权利要求2所述的内存数据库的数据恢复方法,其特征在于,所述从所述快照备份集合中筛选出目标快照备份,包括:
从所述快照备份集合中筛选出预选快照备份集合,其中,所述预选快照备份集合中每一预选快照备份均与所述目标数据区域相关联;
获取所述预选快照备份集合中的所有所述预选快照备份的备份时间;
按照所述备份时间的先后顺序,对所有所述预选快照备份进行排序,得到所有所述预选快照备份的排序信息;
根据所述排序信息,从所述预选快照备份集合中筛选出最近一次快照备份,将所述最近一次快照备份确定为目标快照备份。
4.根据权利要求3所述的内存数据库的数据恢复方法,其特征在于,所述根据所述目标快照备份,对所述内存数据库执行第一恢复操作之后,所述方法还包括:
根据所述第一备份内存数据库,确定出所述第一备份内存数据库中存储的所述待发布数据对应的第一发布时间点信息;
判断所述第一发布时间点信息与执行所述发布操作时的发布时间点信息是否相同;
当判断结果为否时,触发执行所述的对所述内存数据库执行第一恢复操作的步骤,或者触发执行所述的对所述关系数据库执行所述发布操作的步骤,以恢复所述内存数据库。
5.根据权利要求2-4任一所述的内存数据库的数据恢复方法,其特征在于,所述根据所述目标快照备份,对所述内存数据库执行第一恢复操作,包括:
确定所述目标快照备份中每条数据的类型信息;
根据每个所述类型信息在单位时间内被访存的次数,确定每个所述类型信息的热度值,其中,所述单位时间内被访存的次数越多表明所述热度值越高;
按照所述热度值的大小顺序,对所有所述类型信息进行排序,得到所有所述类型信息的排序信息;
根据所述排序信息,按照所述热度值从大到小的顺序,依次恢复每一所述类型信息对应的数据。
6.根据权利要求2所述的内存数据库的数据恢复方法,其特征在于,所述方法还包括:
当判断出不存在所述内存数据库对应的所述快照备份集合时,触发执行对所述关系数据库执行所述发布操作的步骤,以恢复所述内存数据库。
7.根据权利要求1所述的内存数据库的数据恢复方法,其特征在于,所述判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生数据异常,包括:
判断所述内存数据库是否发生断电丢失,当判断出所述内存数据库发生断电丢失时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常;或,
判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生更新,当判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生更新时,判断所述变更是否来源于所述发布操作,当判断结果为否时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常;或,
判断在第三预设时长内所述内存数据库中用于存储所述待发布数据的数据存储区域的更新次数超过预设阈值,当判断结果为是时,判断出所述内存数据库中用于存储所述待发布数据的数据存储区域发生数据异常。
8.一种内存数据库的数据恢复装置,其特征在于,所述装置应用于数据库管理系统,所述数据库管理系统包括关系数据库和内存数据库,所述装置包括:
发布模块,用于对所述关系数据库执行发布操作,所述发布操作用于将所述关系数据库中目标数据区域对应的数据信息更新至所述内存数据库,其中,所述目标数据区域对应的数据信息包括所述目标数据区域的待发布数据以及执行所述发布操作时的发布时间点信息;
第一判断模块,用于判断所述内存数据库中用于存储所述待发布数据的数据存储区域是否发生数据异常;
第一确定模块,用于当所述第一判断模块判断出结果为否时,确定所述数据存储区域发生数据异常的异常时间点信息,所述异常时间点信息为所述数据存储区域发生数据异常的时间点信息;
第二确定模块,用于根据所述发布时间点信息以及所述异常时间点信息,确定所述发布时间点信息与所述异常时间点信息之间的时间差值;
第二判断模块,用于判断所述时间差值是否小于第一预设时长;当判断出所述时间差值小于所述第一预设时长时,触发所述发布模块对所述关系数据库执行发布操作。
9.一种内存数据库的数据恢复装置,其特征在于,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行如权利要求1-7任一项所述的内存数据库的数据恢复方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时用于执行如权利要求1-7任一项所述的内存数据库的数据恢复方法。
CN202111094842.4A 2021-09-17 2021-09-17 一种内存数据库的数据恢复方法及装置 Pending CN113934573A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111094842.4A CN113934573A (zh) 2021-09-17 2021-09-17 一种内存数据库的数据恢复方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111094842.4A CN113934573A (zh) 2021-09-17 2021-09-17 一种内存数据库的数据恢复方法及装置

Publications (1)

Publication Number Publication Date
CN113934573A true CN113934573A (zh) 2022-01-14

Family

ID=79276033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111094842.4A Pending CN113934573A (zh) 2021-09-17 2021-09-17 一种内存数据库的数据恢复方法及装置

Country Status (1)

Country Link
CN (1) CN113934573A (zh)

Similar Documents

Publication Publication Date Title
US7386752B1 (en) Using asset dependencies to identify the recovery set and optionally automate and/or optimize the recovery
US9727601B2 (en) Predicting validity of data replication prior to actual replication in a transaction processing system
US8918606B1 (en) Techniques for providing incremental backups
US9164846B2 (en) Restarting a software system
CN111858468B (zh) 分布式文件系统元数据校验方法、系统、终端及存储介质
GB2500085A (en) Determining whether a standby database is synchronized with a primary database
CN110457907B (zh) 一种固件程序检测方法和装置
CN110673936B (zh) 编排业务的断点续作方法、装置、存储介质及电子设备
RU2646309C1 (ru) Способ резервного копирования
CN112306552A (zh) 一种系统软件版本管理方法、装置及存储介质
CN108241543B (zh) 业务操作断点执行的方法、业务服务器及系统
CN111694724B (zh) 分布式表格系统的测试方法、装置、电子设备及存储介质
CN113934573A (zh) 一种内存数据库的数据恢复方法及装置
CN109086162B (zh) 一种内存诊断方法和装置
US10783027B2 (en) Preemptive crash data capture
CN112650613B (zh) 一种错误信息处理方法、装置、电子设备及存储介质
CN114116330A (zh) 服务器性能测试方法、系统、终端及存储介质
CN113703823A (zh) 一种bmc固件升级方法、装置、电子设备及存储介质
CN114153503A (zh) 一种bios控制方法、装置、介质
CN115329391B (zh) 一种文本数据库的防护方法、装置、设备及介质
WO2014075523A1 (en) Content management targeted rollback
CN113722075B (zh) 一种任务管理方法、系统、设备及存储介质
CN117271221A (zh) 数据库数据的恢复方法、存储介质与设备
CN115905179A (zh) 一种数据迁移方法、装置、可读存储介质及电子设备
CN115629780A (zh) 基于升级包组仓库和组件校验的跨版本软件升级方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination