CN117290158A - 数据恢复方法、装置、电子设备及存储介质 - Google Patents
数据恢复方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117290158A CN117290158A CN202311122856.1A CN202311122856A CN117290158A CN 117290158 A CN117290158 A CN 117290158A CN 202311122856 A CN202311122856 A CN 202311122856A CN 117290158 A CN117290158 A CN 117290158A
- Authority
- CN
- China
- Prior art keywords
- data
- message
- service request
- backup
- 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
Links
- 238000011084 recovery Methods 0.000 title claims abstract description 72
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000002159 abnormal effect Effects 0.000 claims abstract description 78
- 238000004519 manufacturing process Methods 0.000 claims description 17
- 230000005856 abnormality Effects 0.000 abstract description 8
- 238000004590 computer program Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据恢复方法,该方法包括:在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,目标备份数据为原始业务数据发生异常之前的备份数据,待处理的业务请求用于改变原始业务数据;基于目标备份数据及待处理的业务请求,对原始业务数据进行数据恢复。本方案通过在原始业务数据发生异常前所预先备份的正常业务数据,确定出异常发生后的业务请求,再对该业务请求重新进行处理,从而就能够得到正常的业务数据,通过结合目标备份数据及待处理的业务请求实现对原始业务数据的恢复,保证了业务数据的可用性。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据恢复方法、装置、电子设备及存储介质。
背景技术
随着计算机技术的不断发展,业务生产系统中所产生的海量业务数据通常会保存在数据库中,通过数据库系统存储数据、检索数据是目前最方便高效的手段。由于数据库在任何时间点都有可能发生数据丢失或崩溃,因而需要对数据库中的业务数据进行恢复。
现有的主从数据库架构下的数据库系统中,通常都会对主数据库中的业务数据进行实时备份,从而将主数据库中的业务数据保存到从数据库中,以保证在主数据库出现异常的情况下,业务数据的可用性。
然而,现有方式中只对业务数据进行了实时备份,当主数据库中的业务数据发生错误时,备份的业务数据也是错误的数据,导致业务数据无法使用。
发明内容
本发明旨在至少解决现有技术中存在的技术问题,为此,本发明第一方面提出一种数据恢复方法,该方法包括:
在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,所述目标备份数据为所述原始业务数据发生异常之前的备份数据,所述待处理的业务请求用于改变所述原始业务数据;
基于所述目标备份数据及所述待处理的业务请求,对所述原始业务数据进行数据恢复。
在一种可能的实施方式中,该方法还包括:
获取磁盘文件的多个备份数据及与各备份数据对应的备份时间点;磁盘文件中包括原始业务数据;
获取原始业务数据发生异常的异常时间点;
根据异常时间点及各备份时间点,从多个备份数据中确定目标备份数据。
在一种可能的实施方式中,根据异常时间点及各备份时间点,从多个备份数据中确定目标备份数据,包括:
将异常时间点与各备份时间点进行比较,将备份时间点早于异常时间点且与异常时间点间隔最小的备份时间点作为第一目标时间点;
获取与第一目标时间点对应的备份数据,作为目标备份数据。
在一种可能的实施方式中,该方法还包括:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列及原始业务请求;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据与第一目标时间点对应的第一消息,从原始业务请求中确定待处理的业务请求。
在一种可能的实施方式中,该方法还包括:
将各备份时间点作为消息内容生成第一消息序列,将第一消息序列发送至消息类别组件中;
获取原始业务请求,在原始业务请求为请求成功的情况下,将原始业务请求的请求包发送至消息类别组件中。
在一种可能的实施方式中,该方法还包括:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列、原始业务请求及第二消息序列;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;第二消息序列包括多个第二消息,各第二消息是基于间隔第二预设时间段的当前时间点生成的;第二预设时间段小于或等于第一预设时间段;
根据第一消息序列及第二消息序列,从原始业务请求中确定待处理的业务请求。
在一种可能的实施方式中,根据第一消息序列及第二消息序列,从原始业务请求中确定待处理的业务请求,包括:
获取对原始业务数据进行数据恢复的第二目标时间点;第二目标时间点为第二消息序列中的任意一个第二消息对应的当前时间点;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据第一消息及与第二目标时间点对应的第二消息,从原始业务请求中确定待处理的业务请求。
在一种可能的实施方式中,基于目标备份数据及待处理的业务请求,对原始业务数据进行数据恢复,包括:
控制业务生产系统对待处理的业务请求重新进行处理,生成新的业务数据;
基于目标备份数据及新的业务数据,对原始业务数据进行数据恢复。
本发明第二方面提出一种数据恢复装置,该装置包括:
获取模块,用于在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,目标备份数据为原始业务数据发生异常之前的备份数据,待处理的业务请求用于改变原始业务数据;
恢复模块,用于基于目标备份数据及待处理的业务请求,对原始业务数据进行数据恢复。
在一种可能的实施方式中,上述数据恢复装置还用于:
获取磁盘文件的多个备份数据及与各备份数据对应的备份时间点;磁盘文件中包括原始业务数据;
获取原始业务数据发生异常的异常时间点;
根据异常时间点及各备份时间点,从多个备份数据中确定目标备份数据。
在一种可能的实施方式中,上述数据恢复装置还用于:
将异常时间点与各备份时间点进行比较,将备份时间点早于异常时间点且与异常时间点间隔最小的备份时间点作为第一目标时间点;
获取与第一目标时间点对应的备份数据,作为目标备份数据。
在一种可能的实施方式中,上述数据恢复装置还用于:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列及原始业务请求;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据与第一目标时间点对应的第一消息,从原始业务请求中确定待处理的业务请求。
在一种可能的实施方式中,上述数据恢复装置还用于:
将各备份时间点作为消息内容生成第一消息序列,将第一消息序列发送至消息类别组件中;
获取原始业务请求,在原始业务请求为请求成功的情况下,将原始业务请求的请求包发送至消息类别组件中。
在一种可能的实施方式中,上述数据恢复装置还用于:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列、原始业务请求及第二消息序列;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;第二消息序列包括多个第二消息,各第二消息是基于间隔第二预设时间段的当前时间点生成的;第二预设时间段小于或等于第一预设时间段;
根据第一消息序列及第二消息序列,从原始业务请求中确定待处理的业务请求。
在一种可能的实施方式中,上述数据恢复装置还用于:
获取对原始业务数据进行数据恢复的第二目标时间点;第二目标时间点为第二消息序列中的任意一个第二消息对应的当前时间点;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据第一消息及与第二目标时间点对应的第二消息,从原始业务请求中确定待处理的业务请求。
在一种可能的实施方式中,上述恢复模块具体用于:
控制业务生产系统对待处理的业务请求重新进行处理,生成新的业务数据;
基于目标备份数据及新的业务数据,对原始业务数据进行数据恢复。
本发明第三方面提出一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的数据恢复方法。
本发明第四方面提出一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的数据恢复方法。
本发明实施例具有以下有益效果:
本发明实施例提供的数据恢复方法,该方法包括:在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,所述目标备份数据为所述原始业务数据发生异常之前的备份数据,所述待处理的业务请求用于改变所述原始业务数据;基于所述目标备份数据及所述待处理的业务请求,对所述原始业务数据进行数据恢复。本方案通过在原始业务数据发生异常前所预先备份的正常业务数据,确定出异常发生后的业务请求,再对该业务请求重新进行处理,从而就能够得到正常的业务数据,通过结合目标备份数据及待处理的业务请求实现对原始业务数据的恢复,保证了业务数据的可用性。
附图说明
图1是本申请实施例提供的一种计算机设备的框图;
图2是本发明实施例提供的一种数据恢复方法的步骤流程图;
图3是本发明实施例提供的一种确定目标备份数据的步骤流程图;
图4是本发明实施例提供的另一种确定目标备份数据的步骤流程图;
图5是本发明实施例提供的一种确定待处理的业务请求的步骤流程图;
图6是本发明实施例提供的一种确定待处理的业务请求的步骤流程图;
图7是本发明实施例提供的一种数据恢复的整体框架图;
图8是本发明实施例提供的一种数据恢复装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。另外,“基于”或“根据”的使用意味着开放和包容性,因为“基于”或“根据”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出所述的值。
本申请提供的数据恢复方法可以应用于计算机设备(电子设备)中,计算机设备可以是服务器,也可以是终端,其中,服务器可以为一台服务器也可以为由多台服务器组成的服务器集群,本申请实施例对此不作具体限定,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
以计算机设备是服务器为例,图1示出了一种服务器的框图,如图1所示,服务器可以包括通过系统总线连接的处理器和存储器。其中,该服务器的处理器用于提供计算和控制能力。该服务器的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序以及数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机程序被处理器执行时以实现一种数据恢复方法。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,可选地服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
需要说明的是,本申请实施例的执行主体可以是计算机设备,也可以是数据恢复装置,下述方法实施例中就以计算机设备为执行主体进行说明。
图2是本发明实施例提供的一种数据恢复方法的步骤流程图。如图2所示,该方法包括以下步骤:
步骤202、在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求。
其中,业务生产系统中所产生的海量业务数据通常会保存在数据库中,该数据库可以为关系型数据库,示例性地,可以为mysql数据库,当然也可以是其他类型的关系型数据库。关系型数据库是指采用了关系模型来组织数据的数据库,其以行和列的形式将数据以文件的形式记录在磁盘上。业务生产系统例如是支付系统,则产生的业务数据为支付数据。
当在业务生产系统中发生一些误操作,例如维护人员误删数据、误改数据的情况,就需要采用数据恢复系统对原始业务数据进行数据恢复。数据恢复系统具有数据备份及数据恢复的功能。
在进行数据恢复时,可以先在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求。其中,目标备份数据为原始业务数据发生异常之前的备份数据,待处理的业务请求用于改变原始业务数据。待处理的业务请求可以是修改数据请求、新增数据请求、删除数据请求等。
在确定目标备份数据时,如图3所示,图3是本发明实施例提供的一种确定目标备份数据的步骤流程图,该方法包括:
步骤302、获取磁盘文件的多个备份数据及与各备份数据对应的备份时间点。
步骤304、获取原始业务数据发生异常的异常时间点。
步骤306、根据异常时间点及各备份时间点,从多个备份数据中确定目标备份数据。
其中,业务生产系统中所产生的数据会以文件的形式保存在磁盘文件中,因此,磁盘文件中包括了原始业务数据。通常,数据恢复系统会对业务生产系统中的磁盘文件间隔第一预设时间段进行定时备份,例如,可以每间隔一天的时间就对磁盘文件备份一次,从而获取到磁盘文件的多个备份数据。进行备份的时间点记作备份时间点,每个备份数据都对应一个备份时间点。
另外,还需要获取原始业务数据发生异常的异常时间点,通常,在原始业务数据发生异常后,可以先停止业务生产系统,接着可以根据发生异常的类型确定异常时间点。在一些可选地实施例中,如果异常为用户手工误操作引起的,则将记录的误操作的时间点作为异常时间点;如果异常为后端程序逻辑问题引起的,则将该逻辑错误的程序上线的时间点作为异常时间点。
在获取到异常时间点和多个备份时间点后,就可以从多个备份数据中确定目标备份数据。在一些可选地实施例中,如图4所示,图4是本发明实施例提供的另一种确定目标备份数据的步骤流程图,该方法包括:
步骤402、将异常时间点与各备份时间点进行比较,将备份时间点早于异常时间点且与异常时间点间隔最小的备份时间点作为第一目标时间点;
步骤404、获取与第一目标时间点对应的备份数据,作为目标备份数据。
其中,在对磁盘文件进行备份得到多个备份时间点时,可以根据各备份时间点作为消息内容生成第一消息序列,将第一消息序列发送至消息类别组件中。第一消息序列中包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的。
该消息类别组件为预设消息系统中指定的消息类别组件,预设消息系统可以是预先搭建好的kafka集群,指定的消息类别组件可以是kafka集群的指定的topic A1。Kafka是一种分布式的流处理平台,它的核心是一个高吞吐量的发布-订阅消息系统,kafka集群中包括多个kafka服务器,它们协同工作处理和传输大规模数据流。kafka集群的指定的topicA1是一个主题,主题是一个分类或者标签,用于对数据进行逻辑上的分组。
在获取到异常时间点后,可以将异常时间点与各备份时间点进行比较,从而将备份时间点早于异常时间点且与异常时间点间隔最小的备份时间点对应的备份数据,作为最终的目标备份数据。即异常时间点早于该目标备份数据的备份时间点且最接近该备份时间点。
本实施例中,采用上述方式得到的磁盘文件的备份数据是异常发生前最新的备份数据,减少了后续进行数据恢复的工作量,提高了数据恢复的效率。
在一些可选地实施例中,如图5所示,图5是本发明实施例提供的一种确定待处理的业务请求的步骤流程图,该方法包括:
步骤502、从预设消息系统的消息类别组件中获取预先接收到的第一消息序列及原始业务请求。
步骤504、从第一消息序列中确定与目标备份数据对应的第一消息。
步骤506、根据与第一目标时间点对应的第一消息,从原始业务请求中确定待处理的业务请求。
其中,在原始业务请求为请求成功的情况下,将获取到的原始业务请求的请求包发送至指定的消息类别组件中。可选地,业务生产系统在接收到原始业务请求后,会生成一个相应的返回值,可以基于该返回值确定原始业务请求是否为请求成功的状态。
由于预先将第一消息序列和原始业务请求均发送至指定的消息类别组件中进行了保存,预设消息系统kafka集群保存数据具有有序性,从而可以在确定出与目标备份数据对应的第一消息后,就能够确定出在第一目标时间点之后所产生的所有原始业务请求,即为待处理的业务请求。
本实施例中,采用上述方式可以快速、准确的确定出待处理的业务请求,进而也提高了数据恢复的效率。
在另一些可选地实施例中,如图6所示,图6是本发明实施例提供的一种确定待处理的业务请求的步骤流程图,该方法包括:
步骤602、从预设消息系统的消息类别组件中获取预先接收到的第一消息序列、原始业务请求及第二消息序列。
步骤604、根据第一消息序列及第二消息序列,从原始业务请求中确定待处理的业务请求。
其中,第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的。第二消息序列包括多个第二消息,各第二消息是基于间隔第二预设时间段的当前时间点生成的,第二预设时间段小于或等于第一预设时间段。
可选地,在预先将第一消息序列及原始业务请求的请求包发送至消息类别组件中进行保存时,可以在将第一消息序列中的其中一个第一消息作为消息内容发送至消息类别组件后,就获取原始业务请求的请求包并发送至消息类别组件中进行备份,并且每间隔第二预设时间段,就将当前时间作为消息内容生成一个第二消息发送至指定的消息类别组件中。在一个第一消息所对应的第一预设时间段内可以存在多个第二消息。
可选地,在根据第一消息序列及第二消息序列从原始业务请求中确定待处理的业务请求时,可以先获取对原始业务数据进行数据恢复的第二目标时间点,并从第一消息序列中确定与目标备份数据对应的第一消息,根据第一消息及与第二目标时间点对应的第二消息,从原始业务请求中确定待处理的业务请求。
其中,第二目标时间点为第二消息序列中的任意一个第二消息对应的当前时间点,这样可以将原始业务数据恢复至指定的时间点,即需要从原始业务请求中确定出从第一消息至第二消息处对应的待处理的业务请求。
另外,第二预设时间段通常小于或等于第一预设时间段,示例性地,第一预设时间段为一天,则第二预设时间段可以为一天,也可以为一天中的某个时间点。
本实施例中,通过第一消息和第二消息共同确定待处理的业务请求,可以将原始业务数据恢复至指定的时间点,提高了数据恢复的灵活性。
步骤204、基于目标备份数据及待处理的业务请求,对原始业务数据进行数据恢复。
其中,在确定出待处理的业务请求后,可以控制业务生产系统对待处理的业务请求重新进行处理,生成新的业务数据,再基于目标备份数据及新的业务数据,对原始业务数据进行数据恢复。
在一些可选地实施例中,待处理的业务请求为第一消息后的所有原始业务请求时,重新处理待处理的业务请求后结合目标备份数据可以恢复得到整个原始业务数据。
在另一些可选地实施例中,待处理的业务请求为从第一消息至第二消息处对应的原始业务请求时,重新处理待处理的业务请求后结合目标备份数据可以恢复得到与第二消息对应的时间点处的原始业务数据。
需要说明的是,在重新处理待处理的业务请求之前,需要根据原始业务数据发生异常的类型进行相应的修正。可选地,如果异常为用户手工误操作引起的,则可以修正该用户误操作;如果异常为后端程序逻辑问题引起的,则可以修正该程序逻辑。
本发明实施例提供的数据恢复方法包括:在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,所述目标备份数据为所述原始业务数据发生异常之前的备份数据,所述待处理的业务请求用于改变所述原始业务数据;基于所述目标备份数据及所述待处理的业务请求,对所述原始业务数据进行数据恢复。本方案通过在原始业务数据发生异常前所预先备份的正常业务数据,确定出异常发生后的业务请求,再对该业务请求重新进行处理,从而就能够得到正常的业务数据,通过结合目标备份数据及待处理的业务请求实现对原始业务数据的恢复,保证了业务数据的可用性。
如图7所示,图7是本发明实施例提供的一种数据恢复的整体框架图,其中的业务流程对应业务生产系统,备份流程对应数据恢复系统。在业务生产系统中产生业务请求后,需要判断是否为新增、删除、修改类的请求,并在业务请求为交互成功的情况下,将该业务请求的请求包发送至预设消息系统kafka指定的消息类别组件topic中,判断是否到达设定的阈值时间,即间隔第二预设时间段后,发送当前时间至kafka中,若没有到达设定的阈值时间,则该业务请求结束,继续获取下一个业务请求。
数据恢复系统每间隔第一预设时间段对磁盘文件进行一次备份,并发送当前时间即备份时间点至kafka指定的消息类别组件topic中。在发生异常的情况下,先停止业务生产系统,并得到异常时间点。获取早于且最接近该异常时间点的备份数据进行后续数据恢复,并从消息类别组件topic中获取备份时间点后的业务请求,即为待处理的业务请求。若为全量恢复,则消费完topic中所有数据,即处理备份时间点后的所有业务请求,最终实现数据恢复;若不是全量恢复,则消费完topic中指定时间点的数据即可,最终实现将数据恢复到指定时间点。
通过对原始业务数据发生异常后的业务请求重新进行处理,从而处理得到正常的业务数据,再结合在原始业务数据发生异常前所预先备份的正常业务数据,就能够恢复得到整个原始业务数据,保证了业务数据的可用性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
图8为本发明实施例提供的一种数据恢复装置的结构框图。
如图8所示,该数据恢复装置800包括:
获取模块802,用于在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,所述目标备份数据为所述原始业务数据发生异常之前的备份数据,所述待处理的业务请求用于改变所述原始业务数据。
恢复模块804,用于基于所述目标备份数据及所述待处理的业务请求,对所述原始业务数据进行数据恢复。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。上述数据恢复装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块的操作。
在本申请的一个实施例中,提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,目标备份数据为原始业务数据发生异常之前的备份数据,待处理的业务请求用于改变原始业务数据;
基于目标备份数据及待处理的业务请求,对原始业务数据进行数据恢复。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取磁盘文件的多个备份数据及与各备份数据对应的备份时间点;磁盘文件中包括原始业务数据;
获取原始业务数据发生异常的异常时间点;
根据异常时间点及各备份时间点,从多个备份数据中确定目标备份数据。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
将异常时间点与各备份时间点进行比较,将备份时间点早于异常时间点且与异常时间点间隔最小的备份时间点作为第一目标时间点;
获取与第一目标时间点对应的备份数据,作为目标备份数据。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列及原始业务请求;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据与第一目标时间点对应的第一消息,从原始业务请求中确定待处理的业务请求。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
将各备份时间点作为消息内容生成第一消息序列,将第一消息序列发送至消息类别组件中;
获取原始业务请求,在原始业务请求为请求成功的情况下,将原始业务请求的请求包发送至消息类别组件中。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列、原始业务请求及第二消息序列;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;第二消息序列包括多个第二消息,各第二消息是基于间隔第二预设时间段的当前时间点生成的;第二预设时间段小于或等于第一预设时间段;
根据第一消息序列及第二消息序列,从原始业务请求中确定待处理的业务请求。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取对原始业务数据进行数据恢复的第二目标时间点;第二目标时间点为第二消息序列中的任意一个第二消息对应的当前时间点;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据第一消息及与第二目标时间点对应的第二消息,从原始业务请求中确定待处理的业务请求。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
控制业务生产系统对待处理的业务请求重新进行处理,生成新的业务数据;
基于目标备份数据及新的业务数据,对原始业务数据进行数据恢复。
上述实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,目标备份数据为原始业务数据发生异常之前的备份数据,待处理的业务请求用于改变原始业务数据;
基于目标备份数据及待处理的业务请求,对原始业务数据进行数据恢复。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取磁盘文件的多个备份数据及与各备份数据对应的备份时间点;磁盘文件中包括原始业务数据;
获取原始业务数据发生异常的异常时间点;
根据异常时间点及各备份时间点,从多个备份数据中确定目标备份数据。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将异常时间点与各备份时间点进行比较,将备份时间点早于异常时间点且与异常时间点间隔最小的备份时间点作为第一目标时间点;
获取与第一目标时间点对应的备份数据,作为目标备份数据。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列及原始业务请求;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据与第一目标时间点对应的第一消息,从原始业务请求中确定待处理的业务请求。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将各备份时间点作为消息内容生成第一消息序列,将第一消息序列发送至消息类别组件中;
获取原始业务请求,在原始业务请求为请求成功的情况下,将原始业务请求的请求包发送至消息类别组件中。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列、原始业务请求及第二消息序列;第一消息序列包括多个第一消息,各第一消息是基于间隔第一预设时间段的备份时间点生成的;第二消息序列包括多个第二消息,各第二消息是基于间隔第二预设时间段的当前时间点生成的;第二预设时间段小于或等于第一预设时间段;
根据第一消息序列及第二消息序列,从原始业务请求中确定待处理的业务请求。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取对原始业务数据进行数据恢复的第二目标时间点;第二目标时间点为第二消息序列中的任意一个第二消息对应的当前时间点;
从第一消息序列中确定与目标备份数据对应的第一消息;
根据第一消息及与第二目标时间点对应的第二消息,从原始业务请求中确定待处理的业务请求。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
控制业务生产系统对待处理的业务请求重新进行处理,生成新的业务数据;
基于目标备份数据及新的业务数据,对原始业务数据进行数据恢复。
上述实施例提供的计算机存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种数据恢复方法,其特征在于,所述方法包括:
在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,所述目标备份数据为所述原始业务数据发生异常之前的备份数据,所述待处理的业务请求用于改变所述原始业务数据;
基于所述目标备份数据及所述待处理的业务请求,对所述原始业务数据进行数据恢复。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取磁盘文件的多个备份数据及与各所述备份数据对应的备份时间点;所述磁盘文件中包括原始业务数据;
获取所述原始业务数据发生异常的异常时间点;
根据所述异常时间点及各所述备份时间点,从所述多个备份数据中确定所述目标备份数据。
3.根据权利要求2所述的方法,其特征在于,所述根据所述异常时间点及各所述备份时间点,从所述多个备份数据中确定所述目标备份数据,包括:
将所述异常时间点与各所述备份时间点进行比较,将所述备份时间点早于所述异常时间点且与所述异常时间点间隔最小的备份时间点作为第一目标时间点;
获取与所述第一目标时间点对应的备份数据,作为所述目标备份数据。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列及原始业务请求;所述第一消息序列包括多个第一消息,各所述第一消息是基于间隔第一预设时间段的所述备份时间点生成的;
从所述第一消息序列中确定与所述目标备份数据对应的第一消息;
根据与所述第一目标时间点对应的第一消息,从所述原始业务请求中确定所述待处理的业务请求。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
将各所述备份时间点作为消息内容生成所述第一消息序列,将所述第一消息序列发送至所述消息类别组件中;
获取原始业务请求,在所述原始业务请求为请求成功的情况下,将所述原始业务请求的请求包发送至所述消息类别组件中。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从预设消息系统的消息类别组件中获取预先接收到的第一消息序列、原始业务请求及第二消息序列;所述第一消息序列包括多个第一消息,各所述第一消息是基于间隔第一预设时间段的所述备份时间点生成的;所述第二消息序列包括多个第二消息,各所述第二消息是基于间隔第二预设时间段的当前时间点生成的;所述第二预设时间段小于或等于所述第一预设时间段;
根据所述第一消息序列及所述第二消息序列,从所述原始业务请求中确定所述待处理的业务请求。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一消息序列及所述第二消息序列,从所述原始业务请求中确定所述待处理的业务请求,包括:
获取对所述原始业务数据进行数据恢复的第二目标时间点;所述第二目标时间点为所述第二消息序列中的任意一个第二消息对应的当前时间点;
从所述第一消息序列中确定与所述目标备份数据对应的第一消息;
根据所述第一消息及与所述第二目标时间点对应的第二消息,从所述原始业务请求中确定所述待处理的业务请求。
8.根据权利要求1所述的方法,其特征在于,所述基于所述目标备份数据及所述待处理的业务请求,对所述原始业务数据进行数据恢复,包括:
控制业务生产系统对所述待处理的业务请求重新进行处理,生成新的业务数据;
基于所述目标备份数据及所述新的业务数据,对所述原始业务数据进行数据恢复。
9.一种数据恢复装置,其特征在于,所述装置包括:
获取模块,用于在原始业务数据发生异常的情况下,获取目标备份数据及待处理的业务请求;其中,所述目标备份数据为所述原始业务数据发生异常之前的备份数据,所述待处理的业务请求用于改变所述原始业务数据;
恢复模块,用于基于所述目标备份数据及所述待处理的业务请求,对所述原始业务数据进行数据恢复。
10.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1-8任一项所述的方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1-8任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311122856.1A CN117290158A (zh) | 2023-08-31 | 2023-08-31 | 数据恢复方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311122856.1A CN117290158A (zh) | 2023-08-31 | 2023-08-31 | 数据恢复方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117290158A true CN117290158A (zh) | 2023-12-26 |
Family
ID=89256204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311122856.1A Pending CN117290158A (zh) | 2023-08-31 | 2023-08-31 | 数据恢复方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117290158A (zh) |
-
2023
- 2023-08-31 CN CN202311122856.1A patent/CN117290158A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107220142B (zh) | 执行数据恢复操作的方法及装置 | |
CN110781231A (zh) | 基于数据库的批量导入方法、装置、设备及存储介质 | |
CN109284331B (zh) | 基于业务数据资源的制证信息获取方法、终端设备及介质 | |
CN107357731A (zh) | 进程产生core dump问题的监控、分析和处理方法 | |
CN111338834B (zh) | 数据存储方法和装置 | |
CN108509322B (zh) | 避免过度回访的方法、电子装置及计算机可读存储介质 | |
CN109408361A (zh) | Monkey测试复原方法、装置、电子设备及计算机可读存储介质 | |
CN109885431B (zh) | 用于备份数据的方法和装置 | |
CN112598529B (zh) | 数据处理方法及装置、计算机可读存储介质、电子设备 | |
CN112181307A (zh) | 基于区块链的分布式数据冗余存储方法和电子设备 | |
CN112445860B (zh) | 一种处理分布式事务的方法和装置 | |
CN111694724B (zh) | 分布式表格系统的测试方法、装置、电子设备及存储介质 | |
CN107526838A (zh) | 数据库集群扩容的方法和装置 | |
CN109597728B (zh) | 测试设备的控制方法及装置、计算机可读存储介质 | |
CN117290158A (zh) | 数据恢复方法、装置、电子设备及存储介质 | |
JP2778798B2 (ja) | 制御データのキュー構造管理処理方式 | |
CN112527497B (zh) | 一种序列化多线程数据处理系统 | |
CN114996057A (zh) | 数据备份方法及装置、电子设备和计算机可读存储介质 | |
CN111177241A (zh) | 一种数据处理方法、装置、系统、电子设备及其存储介质 | |
CN117473200B (zh) | 一种用于网站信息数据的综合采集分析方法 | |
CN113609091B (zh) | 日志管理方法、装置、设备及存储介质 | |
CN112950138B (zh) | 协同开发的状态管理方法、装置和服务器 | |
CN115437889B (zh) | 一种应急处理方法、系统及计算设备 | |
CN117290163B (zh) | 基于关系型数据库的数据容灾备份系统、方法及介质 | |
CN113656208B (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 |