CN103942252A - 一种恢复数据的方法及系统 - Google Patents
一种恢复数据的方法及系统 Download PDFInfo
- Publication number
- CN103942252A CN103942252A CN201410099107.6A CN201410099107A CN103942252A CN 103942252 A CN103942252 A CN 103942252A CN 201410099107 A CN201410099107 A CN 201410099107A CN 103942252 A CN103942252 A CN 103942252A
- Authority
- CN
- China
- Prior art keywords
- node
- transaction journal
- disk
- backup
- journal file
- 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.)
- Granted
Links
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
本发明实施例公开了一种恢复数据的方法,包括:事务提交后,将生成的事务日志保存至本节点缓存区,同时将所述事务日志备份至本节点以外的至少一个备份节点的缓存区;将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件,所述磁盘中的事务日志文件用于恢复所述本节点的数据;所述本节点发生数据丢失事件时,基于所述磁盘中的事务日志文件恢复所述本节点丢失的数据。采用本发明,可降低系统数据风险,提高系统的数据持久性、安全性以及可靠性。
Description
技术领域
本发明涉及通信领域,尤其涉及一种恢复数据的方法及系统。
背景技术
为了使事务对数据库系统中的数据所做的更改持久的保存在数据库之中,避免发生回滚操作,通常将事务处理过程中生成的事务日志写入至可靠的磁盘介质,当数据库系统发生数据丢失时,磁盘中的事务日志为数据库系统中数据恢复操作提供依据,以实现数据库系统的持久性。
保存事务日志通常采用同步提交方案,即当事务提交时,选取生成的事务日志的对应最后一个记录位置,将该位置之前所有的事务日志全部写入磁盘后,事务提交结束。
由于前述的方案会使数据库系统中产生磁盘写IO的操作,故出现事务并发量高的情况时,会引起数据库系统的并发冲突。现有技术提出一种事务日志的异步提交方案,事务的提交操作可以先于事务日志写入磁盘的操作,以减少数据库系统的并发冲突事件。在实现本发明过程中,发明人发现现有技术中至少存在如下问题,现有技术方案应用于集群数据库场景下,当集群数据库中的一节点进行事务提交后,事务日志尚未完整地写入磁盘时若该节点发生数据崩溃事件,数据库系统将无法通过该事务日志进行数据恢复操作,造成数据永久丢失的状况,由此可知,事务日志的异步提交方案影响数据库系统的数据持久性,为数据库系统带来了数据丢失风险,降低了数据库系统的安全性,使数据库系统变得不可靠。
发明内容
本发明实施例提供了一种恢复数据的方法及系统,用以解决现有技术中事务日志的异步提交方案中数据库系统的数据持久性差、安全性低以及数据库系统不可靠的问题。
为了解决上述技术问题,本发明实施例第一方面提供了一种恢复数据的方法,所述方法包括:
事务提交后,将生成的事务日志保存至本节点缓存区,同时将所述事务日志备份至本节点以外的至少一个备份节点的缓存区;
将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件,所述磁盘中的事务日志文件用于恢复所述本节点的数据;
所述本节点发生数据丢失事件时,基于所述磁盘中的事务日志文件恢复所述本节点丢失的数据。
结合第一方面,在第一种可能的实现方式中,事务提交后,将生成的事务日志保存至本节点缓存区,同时将所述事务日志备份至所述本节点以外的至少一个备份节点的缓存区之前,还包括:
设置所述本节点的安全等级以及与所述安全等级相对应的备份节点数目;
从所述本节点以外的节点中为所述本节点选择出与所述安全等级相对应的备份节点数目的节点作为备份节点,并将所述选择出的备份节点的缓存区作为用于备份所述事务日志的缓存区。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,从所述本节点以外的节点中为所述本节点选择出与所述安全等级相对应的备份节点数目的节点作为备份节点包括:
从所述本节点以外的与所述本节点相邻的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目;
或者,从所述本节点以外的包含空余缓冲区的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第三种可能的实现方式中,将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件包括:
所述本节点定时判断所述磁盘中的事务日志文件是否包含所述本节点缓存区中保存的所述事务日志;
若判断出所述磁盘中的事务日志文件不包含所述本节点缓存区中保存的所述事务日志,则所述本节点将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件;
若判断出所述磁盘中的事务日志文件包含所述本节点缓存区中保存的所述事务日志,则所述本节点不将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式或者第一方面的第三种可能的实现方式,在第四种可能的实现方式中,将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件包括:
所述备份节点定时判断所述磁盘中的事务日志文件是否包含所述备份节点的缓存区中备份的所述事务日志;
若判断出所述磁盘中的事务日志文件不包含所述备份节点的缓存区中备份的所述事务日志,则所述备份节点将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件;
若判断出所述磁盘中的事务日志文件包含所述备份节点的缓存区中备份的所述事务日志,则所述备份节点不将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第五种可能的实现方式中,所述磁盘包括仅支持所述本节点访问的本节点磁盘,以及仅支持备份节点访问的备份节点磁盘,将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件包括:
所述本节点将所述本节点缓存区中保存的所述事务日志写入所述本节点磁盘中的事务日志文件,所述本节点磁盘中的事务日志文件用于恢复所述本节点的数据;
并且,
所述备份节点将所述备份节点的缓存区中备份的所述事务日志写入所述备份节点磁盘中的事务日志文件,所述备份节点磁盘中的事务日志文件用于恢复所述本节点的数据。
结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述本节点发生数据丢失事件时,基于所述磁盘中所述事务日志文件恢复所述本节点丢失的数据包括:
读取所述本节点磁盘中的事务日志文件;
读取所述备份节点磁盘中的事务日志文件;
从读取到的各个所述事务日志文件中选择出信息最完整的事务日志文件;
使用所述信息最完整的事务日志文件恢复所述本节点丢失的数据。
相应的,本发明实施例第二方面还提供了一种数据恢复系统,包括:
保存与备份模块,用于事务提交后,将生成的事务日志保存至本节点缓存区,同时将所述事务日志备份至本节点以外的至少一个备份节点的缓存区;
写入模块,用于将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件,所述磁盘中的事务日志文件用于恢复所述本节点的数据;
恢复模块,用于所述本节点发生数据丢失事件时,基于所述磁盘中的事务日志文件恢复所述本节点丢失的数据。
结合第二方面,在第一种可能的实现方式中,所述数据恢复系统还包括:
设置模块,用于设置所述本节点的安全等级以及与所述安全等级相对应的备份节点数目;
选择模块,用于从所述本节点以外的节点中为所述本节点选择出与所述安全等级相对应的备份节点数目的节点作为备份节点,并将所述选择出的备份节点的缓存区作为用于备份所述事务日志的缓存区。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述选择模块,
还用于从所述本节点以外的与所述本节点相邻的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目;
或者,
还用于从所述本节点以外的包含空余缓冲区的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目。
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述写入模块包括:
第一判断单元,用于定时判断所述磁盘中的事务日志文件是否包含所述本节点缓存区中保存的所述事务日志;若判断出所述磁盘中的事务日志文件不包含所述本节点缓存区中保存的所述事务日志,则生成第一写入消息并发送至第一写入单元;若判断出所述磁盘中的事务日志文件包含所述本节点缓存区中保存的所述事务日志,则生成第一不写入消息并发送至所述第一写入单元;
第一写入单元,用于接收到所述第一写入消息后,将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件;用于接收到所述第一不写入消息后,不将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件。
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式或者第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述写入模块还包括:
第二判断单元,用于定时判断所述磁盘中的事务日志文件是否包含所述备份节点的缓存区中备份的所述事务日志;若判断出所述磁盘中的事务日志文件不包含所述备份节点的缓存区中备份的所述事务日志,则生成第二写入消息并发送至第二写入单元;若判断出所述磁盘中的事务日志文件包含所述备份节点的缓存区中备份的所述事务日志,则生成第二不写入消息并发送至所述第二写入单元;
第二写入单元,用于接收到所述第二写入消息后,将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件;用于接收到所述第二不写入消息后,不将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件。
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第五种可能的实现方式中,所述磁盘包括仅支持所述本节点访问的本节点磁盘,以及仅支持备份节点访问的备份节点磁盘,所述写入模块包括:
本节点写入单元,用于将所述本节点缓存区中保存的所述事务日志写入所述本节点磁盘中的事务日志文件,所述本节点磁盘中的事务日志文件用于恢复所述本节点的数据;
备份节点写入单元,用于将所述备份节点的缓存区中备份的所述事务日志写入所述备份节点磁盘中的事务日志文件,所述备份节点磁盘中的事务日志文件用于恢复所述本节点的数据。
结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述恢复模块包括:
读取单元,用于读取所述本节点磁盘中的事务日志文件;还用于读取所述备份节点磁盘中的事务日志文件;
选择单元,用于从所述读取模块读取到的各个所述事务日志文件中选择出信息最完整的事务日志文件;
恢复单元,用于使用所述信息最完整的事务日志文件恢复所述本节点丢失的数据。
通过本发明实施例,在事务提交后,不仅将生成的事务日志保存在本节点缓存区,还备份至其他节点的缓存区,可降低节点数据崩溃事件导致的事务日志丢失的概率,可靠地将事务日志写入磁盘,为节点数据恢复操作提供了可靠的事务日志文件,从而降低系统数据风险,提高系统的数据持久性、安全性以及可靠性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例中的一种恢复数据的方法的流程图;
图2是本发明第二实施例中的一种恢复数据的方法的流程图;
图3是本发明第三实施例中的数据恢复系统的结构组成示意图;
图4是本发明第三实施例中的另一数据恢复系统的结构组成示意图;
图5是本发明第三实施例中的又一数据恢复系统的结构组成示意图;
图6是本发明第三实施例中的再一数据恢复系统的结构组成示意图;
图7是本发明第四实施例中的数据恢复系统的结构组成示意图;
图8是本发明第四实施例中的另一数据恢复系统的结构组成示意图;
图9是本发明第四实施例中的又一数据恢复系统的结构组成示意图;
图10是本发明实施例的一系统结构组成示意图;
图11是本发明实施例的另一系统结构组成示意图;
图12是本发明第五实施例中的一种节点交换机的结构组成示意图;
图13是本发明第六实施例中的一种节点交换机的结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明第一实施例中的一种恢复数据的方法的流程图。该方法可以适用于数据库系统中通过节点的事务日志恢复节点数据的恢复工作。集群数据库由至少两个数据处理节点构成,通常,数据库的缓存区会备份有每个数据处理节点处理数据过程中生成的事务日志,当出现节点数据丢失状况时,可通过缓存区中该节点所对应的事务日志还原该节点的数据。在本发明实施例中,节点处理数据过程结束后备份事务日志,以及节点发生数据丢失事件时,恢复节点丢失的数据的操作,可以采用如图1所示的方法进行处理。如图1所示,本实施例的处理流程可以包括以下步骤:
步骤S110,事务提交后,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至本节点以外的至少一个备份节点的缓存区。其中,节点缓存区保存的事务日志用于写入磁盘中用于恢复本节点数据的事务日志文件,使磁盘中的事务日志文件记录位置保持与事务日志相同记录位置,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至其他节点的缓存区,可以提高本节点事务日志的安全性。
进一步可选的,在本步骤之前,本方法还对选取备份节点、将选择出的备份节点的缓存区作为用于备份事务日志的缓存区的方式给出可实施方案:
首先,设置本节点的安全等级以及与安全等级相对应的备份节点数目。可以认为,节点安全等级越高,节点所需备份节点的数目越多,并且安全等级数(WSF,WAL Safety Factor)大于等于1,当WSF>1时,应预先在集群数据库系统指定至少1个节点作为本节点的备份节点。备份节点的数目可以与安全等级成正比例增长,例如,可规定本节点WSF=3时,集群数据库系统中应存在2个本节点的备份节点,本节点WSF=4时,集群数据库系统中应存在3个本节点的备份节点。
其次,从本节点以外的节点中为本节点选择出与安全等级相对应的备份节点数目的节点作为备份节点,并将选择出的备份节点的缓存区作为用于备份事务日志的缓存区。
进一步可选的,选择备份节点的原则可以为就近原则,即从与本节点相邻的节点中选择出与安全等级相对应数目的备份节点;也可以按照一定的规则进行选择,如从本节点以外的包含空余缓冲区的节点中选择出与安全等级相对应数目的备份节点。如图10所示的Shared-disk架构的集群数据库系统,由图10可以看出,每个节点均包含多个可用于保存事务日志的缓存区,当设置节点2的安全等级WSF=3时,则除了作为本节点的节点2以外,系统中还应存在2个备份节点,可选择与本节点相邻的节点1和节点3作为备份节点。
进一步可选的,确定备份节点后,备份节点的缓存区将作为用于保存本节点事务日志的缓存区。具体的,可注册该缓存区的地址,并在注册成功后将注册信息发送至该缓存区对应的备份节点,以便于将本节点事务日志准确写入该缓存区。如前述的举例,可从图10所示系统的节点1中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点1,节点1则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区;从图10所示系统的节点3中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点3,节点3则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区。
步骤S111,将本节点缓存区中保存的事务日志或备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件。其中,磁盘中的事务日志文件用于恢复本节点的数据。
如图10所示的Shared-disk架构的集群数据库系统,通过某一节点可以访问磁盘中所有文件的情况下,磁盘中与本节点相对应的事务日志文件可以仅有一个,并且,该事务日志文件的写入操作是由各个节点基于其缓存区中保存的事务日志来执行的。如前所述,当本节点的安全等级大于1时,系统中存在可执行将本节点事务日志写入磁盘中本节点事务日志文件的备份节点。例如,当图10中节点2作为本节点时,可执行写入操作的备份节点包括节点1、节点2、以及节点3。
进一步可选的,本步骤中,本节点或备份节点将其缓存区中保存的事务日志写入磁盘中的事务日志文件操作的触发条件可以为定时触发,可包括储存事务日志的缓冲区满时触发,还可包括按照规定时间为起点,每隔一定的时间间隔进行触发。
当触发本节点写入操作时,本节点首先判断磁盘中本节点的事务日志文件是否包含本节点缓存区中保存的事务日志,即磁盘中本节点的事务日志文件位置是否与本节点缓存区的事务日志位置相同,当磁盘中本节点的事务日志文件位置与本节点缓存区的事务日志位置相同时,代表磁盘中本节点的事务日志文件包含本节点缓存区中保存的事务日志,本节点无需再次进行写入操作。那么,当本节点判断出磁盘中本节点的事务日志文件不包含本节点缓存区中保存的事务日志时,本节点将本节点缓存区中保存的事务日志写入磁盘中的事务日志文件;当本节点判断出磁盘中本节点的事务日志文件包含本节点缓存区中保存的事务日志时,本节点不将本节点缓存区中保存的事务日志写入磁盘中的事务日志文件。例如,图10中,当触发本节点(节点2)的事务日志写入操作时,本节点首先判断磁盘中本节点(节点2)的事务日志文件是否包含本节点(节点2)缓存区中保存的事务日志,若不包含,则本节点(节点2)将本节点(节点2)缓存区中保存的事务日志写入磁盘中本节点(节点2)的事务日志文件;若磁盘中本节点(节点2)的事务日志文件包含本节点(节点2)缓存区中保存的事务日志时,本节点(节点2)不将本节点(节点2)缓存区中保存的事务日志写入磁盘中本节点(节点2)的事务日志文件。
当触发备份节点写入操作时,备份节点首先判断磁盘中本节点的事务日志文件是否包含备份节点缓存区中备份的事务日志,即磁盘中本节点的事务日志文件位置是否与备份节点缓存区的事务日志位置相同,当磁盘中本节点的事务日志文件位置与备份节点缓存区的事务日志位置相同时,代表磁盘中本节点的事务日志文件包含备份节点缓存区中备份的事务日志,备份节点无需再次进行写入操作。那么,当备份节点判断出磁盘中本节点的事务日志文件不包含备份节点缓存区中备份的事务日志时,备份节点将备份节点缓存区中备份的事务日志写入磁盘中的事务日志文件;当备份节点判断出磁盘中本节点的事务日志文件包含备份节点缓存区中备份的事务日志时,备份节点不将备份节点缓存区中备份的事务日志写入磁盘中的事务日志文件。例如,图10中本节点的备份节点(节点1或节点3)执行写入操作时,备份节点(节点1或节点3)首先判断磁盘中本节点(节点2)的事务日志文件是否包含备份节点缓存区(节点1中本节点事务日志缓存区、或节点3中本节点事务日志缓存区)中备份的事务日志,若不包含,则备份节点(节点1或节点3)将其缓存区中备份的事务日志写入磁盘中本节点(节点2)的事务日志文件;若磁盘中本节点(节点2)的事务日志文件包含备份节点缓存区中备份的事务日志时,备份节点(节点1或节点3)不将其缓存区中备份的事务日志写入磁盘中本节点的事务日志文件。
步骤S112,本节点发生数据丢失事件时,基于磁盘中的事务日志文件恢复本节点丢失的数据。
通过上述方法可知,本节点事务提交后,不仅将生成的事务日志保存在本节点缓存区,还备份至其他节点的缓存区,可降低节点数据崩溃事件导致的事务日志丢失的概率,提高事务日志的安全性;保存有本节点事务日志的本节点以及所有的备份节点均能够执行将其缓存区保存的本节点事务日志写入磁盘中的事务日志文件的操作,使磁盘中的事务日志文件的记录位置始终保持为本节点最后一个事物操作生成的日志记录位置,若数据库系统发生宕机情况,则系统在启动恢复后,本节点可以从磁盘中读取与本节点相对应的事务日志文件并恢复本节点丢失的数据。
本方法适用于高速互联网络下的集群数据库系统,其中,本方案实施例所提及的节点在集群数据库系统中可以为节点交换机(Infiniband,高速互连设备),路由器等一类具有数据传输、共享功能的互联设备。
上述实施例可较好地支持Shared-Disk架构的集群数据库系统,由于本方法为集群中节点设置了安全系数以及多个保存事务日志的备份节点缓存区,提高了事务日志的持久性;本节点以及备份节点均可执行将其缓存区中保存的本节点事务日志写入磁盘中与本节点相对应的事务日志文件,能够提高事务日志文件的可靠性,本发明实施例保持了现有技术中异步提交方案的并发处理性能,同时兼具了同步提交方案的持久性,降低了系统数据风险,提高了系统数据安全性、可靠性。
图2是本发明第二实施例中的一种恢复数据的方法的流程图。该方法可以适用于数据库系统中通过节点的事务日志恢复节点数据的恢复工作。集群数据库由至少两个数据处理节点构成,通常,数据库的缓存区会备份有每个数据处理节点处理数据过程中生成的事务日志,当出现节点数据丢失状况时,可通过缓存区中该节点所对应的事务日志还原该节点的数据。在本发明实施例中,节点处理数据过程结束后备份事务日志,以及节点发生数据丢失事件时,恢复节点丢失的数据的操作,可以采用如图2所示的方法进行处理。如图2所示,本实施例的处理流程可以包括以下步骤:
步骤S210,事务提交后,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至本节点以外的至少一个备份节点的缓存区。其中,节点缓存区保存的事务日志写入磁盘中用于恢复本节点数据的事务日志文件,使磁盘中的事务日志文件记录位置保持与事务日志相同记录位置,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至其他节点的缓存区,可以提高本节点事务日志的安全性。
进一步可选的,在本步骤之前,本方法还对选取备份节点、将选择出的备份节点的缓存区作为用于备份事务日志的缓存区的方式给出可实施方案:
首先,设置本节点的安全等级以及与安全等级相对应的备份节点数目。可以认为,节点安全等级越高,节点所需备份节点的数目越多,并且安全等级数(WSF,WAL Safety Factor)大于等于1,当WSF>1时,应预先在集群数据库系统指定至少1个节点作为本节点的备份节点。备份节点的数目可以与安全等级成正比例增长,例如,可规定本节点WSF=3时,集群数据库系统中应存在2个本节点的备份节点,本节点WSF=4时,集群数据库系统中应存在3个本节点的备份节点。
其次,从本节点以外的节点中为本节点选择出与安全等级相对应的备份节点数目的节点作为备份节点,并将选择出的备份节点的缓存区作为用于备份事务日志的缓存区。
进一步可选的,选择备份节点的原则可以为就近原则,即从与本节点相邻的节点中选择出与安全等级相对应数目的备份节点;也可以按照一定的规则进行选择,如从本节点以外的包含空余缓冲区的节点中选择出与安全等级相对应数目的备份节点。如图11所示的Shared-Nothing架构的集群数据库系统,由图11可以看出,每个节点均包含多个可用于保存事务日志的缓存区,当设置节点2的安全等级WSF=3时,除了作为本节点的节点2以外,系统中还应存在2个备份节点,可选择与本节点相邻的节点1和节点3作为备份节点。
进一步可选的,确定备份节点后,备份节点的缓存区将作为用于保存本节点事务日志的缓存区。具体的,可注册该缓存区的地址,并在注册成功后将注册信息发送至该缓存区对应的备份节点,以便于将本节点事务日志准确写入该缓存区。如前述的举例,可从图11所示系统的节点1中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点1,节点1则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区;从图11所示系统的节点3中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点3,节点3则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区。
步骤S211,将本节点缓存区中保存的事务日志或备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件。其中,磁盘中的事务日志文件用于恢复本节点的数据。
如图11所示的Shared-Nothing架构的集群数据库系统,各个节点均配置有相应的磁盘,且节点间不共享磁盘数据。故当节点缓存区保存有本节点事务日志以及其他节点事务日志时,节点配置磁盘中将包含有该节点的事务日志文件,还包含有该节点作为备份节点时其缓存区保存的其他节点的事务日志文件,并且,这些事务日志文件是由该节点根据其缓存区中保存的事务日志来执行写入操作。如前所述,当本节点的安全等级大于1时,系统中存在用于保存本节点事务日志的备份节点,那么相应地,可用于恢复本节点数据的事务日志文件可以有多个,并且存在于本节点以及备份节点所配置的磁盘中。例如,当图11中节点2作为本节点时,节点1、节点2和节点3所对应的配置磁盘中均包含有本节点事务日志文件,并且节点1可根据其配置磁盘中的本节点事务日志文件执行节点1缓存区中本节点事务日志的写入操作,节点2可根据其配置磁盘中的本节点事务日志文件执行节点2缓存区中本节点事务日志的写入操作,节点3可根据其配置磁盘中的本节点事务日志文件执行节点3缓存区中本节点事务日志的写入操作。
进一步可选的,本步骤中,本节点或备份节点将其缓存区中保存的事务日志写入磁盘中的事务日志文件操作的触发条件可以为定时触发,可包括储存事务日志的缓冲区满时触发,还可包括按照规定时间为起点,每隔一定的时间间隔进行触发。
当触发本节点写入操作时,本节点将本节点缓存区中保存的本节点事务日志写入本节点配置磁盘(即本节点磁盘)中用于恢复本节点数据的事务日志文件,其中,这里提到的本节点磁盘为不支持本节点以外的其他节点访问的磁盘或磁盘阵列。由于本节点磁盘中的事务日志文件不能被其他节点读取,故在本节点未发生数据丢失的情况下,本步骤中不必检测事务日志文件位置,可直接进行写入操作。例如,图11系统示意图中,当触发本节点(节点2)的写入操作时,本节点(节点2)可将其缓存区中保存的事务日志写入本节点磁盘中的节点2事务日志文件。此外,在系统中,本节点亦能同时作为备份节点将其他节点的事务日志保存在本节点缓存区,故本节点也可将其缓存区中保存的其他节点的事务日志写入本节点磁盘中对应其他节点的事务日志文件,例如,图11系统示意图中,本节点(节点2)可将其缓存区中保存的节点1事务日志写入本节点磁盘中的节点1事务日志文件,本节点(节点2)可将其缓存区中保存的节点3事务日志写入本节点磁盘中的节点3事务日志文件。
当触发备份节点写入操作时,备份节点将备份节点缓存区中保存的事务日志写入备份节点配置磁盘(即备份节点磁盘)中用于恢复本节点数据的事务日志文件,其中,这里提及的备份节点磁盘为不支持该备份节点以外的其他节点访问的磁盘或磁盘阵列。由于备份节点磁盘中的本节点事务日志文件不能被其他节点读取(亦不能被本节点读取),故在该备份节点未发生数据丢失的情况下,本步骤中不必检测事务日志文件位置,该备份节点可直接进行写入操作。例如,图11系统示意图中,当触发备份节点(节点1)的写入操作时,备份节点(节点1)可将其缓存区中保存的本节点(节点2)事务日志写入节点1磁盘中的节点2事务日志文件,备份节点(节点3)可将其缓存区中保存的本节点(节点2)事务日志写入节点3磁盘中的节点2事务日志文件。
步骤S212,本节点发生数据丢失事件时,基于磁盘中与本节点相对应的事务日志文件恢复本节点丢失的数据。
如前所述,当Shared-Nothing架构的集群数据库系统出现宕机事件,致使节点发生数据丢失时,可通过从该节点配置磁盘、以及保存有该节点事务日志的备份节点的配置磁盘获取该节点事务日志文件,以恢复该节点的数据。具体实施可包括:读取本节点磁盘中用于恢复本节点数据的事务日志文件;读取备份节点磁盘中用于恢复本节点数据的事务日志文件;从读取到的各个事务日志文件中选择出信息最完整的事务日志文件;使用信息最完整的事务日志文件恢复本节点丢失的数据。可一并参照图11所示的Shared-Nothing架构的集群数据库系统,如前述实施例所述的内容,当节点2作为本节点时,可用于恢复本节点数据的本节点事务日志文件存在于图中节点1磁盘、本节点(节点2)磁盘、以及节点3磁盘中,若由于系统宕机事件致使本节点数据丢失,则可使用存在于节点1磁盘、本节点(节点2)磁盘、以及节点3磁盘中的各个本节点事务日志文件恢复本节点丢失的数据。由于这三个磁盘中各有一个本节点事务日志,并且,三个节点均有可能在宕机事件出现过程中未能及时将本节点事务日志写入配置磁盘中的事务日志文件,那么需要从中选取一个最优的本节点事务日志文件进行本节点数据恢复操作,选择的方法可以为从读取到各个事务日志文件中选择出信息最完整的事务日志文件,即通过比对各个事务日志文件的记录位置并选择出记录位置最新的本节点事务日志文件,其中,比对各个事务日志文件的执行主体可以为本节点,备份节点从备份节点磁盘读取本节点事务日志文件,再发送至本节点,本节点接收到各个备份节点发送的本节点事务日志文件后,连同从本节点磁盘中读取的本节点事务日志文件一起进行比对,最后找到信息最完整的事务日志文件。例如,通过比对存在于节点1磁盘、本节点(节点2)磁盘、以及节点3磁盘中的各个本节点事务日志文件,比较出节点1磁盘中保存的本节点事务日志文件为信息最完整的事务日志文件,则本步骤使用节点1磁盘中保存的本节点事务日志文件进行本节点数据的恢复。
通过上述方法可知,本节点事务提交后,不仅将生成的事务日志保存在本节点缓存区,还备份至其他节点的缓存区,可降低节点数据崩溃事件导致的事务日志丢失的概率,提高事务日志的安全性;保存有本节点事务日志的本节点以及所有的备份节点均能够将其缓存区中保存的本节点事务日志写入其配置磁盘中本节点事务日志文件,使各个配置磁盘中与本节点事务日志文件的记录位置始终保持为本节点最后一个事物操作生成的日志记录位置,那么,数据库系统发生宕机情况时,系统在启动恢复后可通过存在于各个配置磁盘中的本节点事务日志文件恢复本节点丢失的数据。
本方法适用于高速互联网络下的集群数据库系统,其中,本方案实施例所提及的节点在集群数据库系统中可以为节点交换机(Infiniband,高速互连设备),路由器等一类具有数据传输、共享功能的互联设备。
上述实施例可较好地支持Shared-Nothing架构的集群数据库系统,由于本方法为集群中节点设置了安全系数以及多个保存事务日志的备份节点缓存区,提高了事务日志的持久性;本节点以及备份节点均可执行将其缓存区中保存的本节点事务日志写入其配置磁盘中的本节点事务日志文件,保证系统可以获取到信息最完整的事务日志文件并进行节点数据恢复工作,能够提高事务日志文件的可靠性,本发明实施例保持了现有技术中异步提交方案的并发处理性能,同时兼具了同步提交方案的持久性,降低了系统数据风险,提高了系统数据安全性、可靠性。
前述实施例主要以Shared-Disk架构以及Shared-Nothing架构的集群数据库系统为例阐述了实施方法,前述方案还可以适用于利用WAL技术实现的在线分布式数据处理系统或集群,如分布式存储系统、分布式KEY/VALUE数据库系统、分布式列式数据库、分布式图数据库以及数据库备份系统等,本方案详述的实施例不应理解为对本方案实施方式的限制。
本发明实施例提供了一种数据恢复系统,用于实现上述的方法。图3是本发明第三实施例中的一种数据恢复系统的结构组成示意图。本发明实施例的数据恢复系统可以为一种系统内各节点共享磁盘数据的集群数据库系统,可以用于实施图1所示的方案,如图所示,本发明实施例的系统至少可以包括:保存与备份模块31、写入模块32和恢复模块33,其中:
保存与备份模块31,用于事务提交后,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至本节点以外的至少一个备份节点的缓存区。其中,节点缓存区保存的事务日志用于写入磁盘中用于恢复本节点数据的事务日志文件,使磁盘中的事务日志文件记录位置保持与事务日志相同记录位置,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至其他节点的缓存区,可以提高本节点事务日志的安全性。
写入模块32,用于将本节点缓存区中保存的事务日志或备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件。其中,磁盘中的事务日志文件用于恢复本节点的数据,写入模块32将其缓存区中保存的事务日志写入磁盘中的事务日志文件操作的触发条件可以为定时触发,可包括储存事务日志的缓冲区满时触发,还可包括按照规定时间为起点,每隔一定的时间间隔进行触发。
恢复模块33,用于本节点发生数据丢失事件时,基于磁盘中的事务日志文件恢复本节点丢失的数据。
进一步可选的,可一并参照图4所示的系统示意图,本发明实施例还可以通过系统中设置模块34和选择模块35进行备份节点选取、并将选择出的备份节点的缓存区作为用于备份事务日志的缓存区:
设置模块34,用于设置本节点的安全等级以及与安全等级相对应的备份节点数目。可以认为,设置模块34设置的节点安全等级越高,节点所需备份节点的数目越多,并且安全等级数(WSF,WAL Safety Factor)大于等于1,当WSF>1时,应预先在集群数据库系统指定至少1个节点作为备份节点。
选择模块35,用于从本节点以外的节点中为本节点选择出与安全等级相对应的备份节点数目的节点作为备份节点,并将选择出的备份节点的缓存区作为用于备份事务日志的缓存区。
进一步可选的,选择模块35选择备份节点的原则可以为就近原则,即从与本节点相邻的节点中选择出与安全等级相对应数目的备份节点;选择模块35也可以按照一定的规则进行选择,如从本节点以外的包含空余缓冲区的节点中选择出与安全等级相对应数目的备份节点。如图10所示的Shared-disk架构的集群数据库系统,由图10可以看出,每个节点均包含多个可用于保存事务日志的缓存区,当设置节点2事务提交后生成的事务日志的安全等级WSF=3时,则除了作为本节点的节点2以外,系统中还应存在2个备份节点,可选择与本节点相邻的节点1和节点3作为备份节点。
进一步可选的,选择模块35选择出备份节点后,被选择的备份节点的缓存区将作为用于保存本节点事务日志的缓存区。具体的,可注册该缓存区的地址,并在注册成功后将注册信息发送至该缓存区对应的备份节点,以便于将本节点事务日志准确写入该缓存区。如前述的举例,可从图10所示系统的节点1中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点1,节点1则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区;从图10所示系统的节点3中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点3,节点3则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区。
进一步可选的,可一并参照图5所示的写入模块32的示意图,写入模块32可以通过第一判断单元321、第一写入单元322实现磁盘中本节点事务日志文件的写入操作。
第一判断单元321,用于定时判断磁盘中的事务日志文件是否包含本节点缓存区中保存的事务日志;若判断出磁盘中的事务日志文件不包含本节点缓存区中保存的事务日志,则生成第一写入消息并发送至第一写入单元322;若判断出磁盘中的事务日志文件包含本节点缓存区中保存的事务日志,则生成第一不写入消息并发送至第一写入单元322。当触发本节点写入操作时,第一判断单元321首先判断磁盘中本节点的事务日志文件是否包含本节点缓存区中保存的事务日志,即磁盘中本节点的事务日志文件位置是否与本节点缓存区的事务日志位置相同,当磁盘中本节点的事务日志文件位置与本节点缓存区的事务日志位置相同时,代表磁盘中本节点的事务日志文件包含本节点缓存区中保存的事务日志,第一写入单元322无需再次进行写入操作。那么,当第一判断单元321判断出磁盘中本节点的事务日志文件不包含本节点缓存区中保存的事务日志时,可通知第一写入单元322执行写入操作;当第一判断单元321判断出磁盘中本节点的事务日志文件包含本节点缓存区中保存的事务日志时,第一判断单元321通知第一写入单元322不执行写入操作。
第一写入单元322,用于接收到第一写入消息后,将本节点缓存区中保存的事务日志写入磁盘中的事务日志文件;用于接收到第一不写入消息后,不将本节点缓存区中保存的事务日志写入磁盘中的事务日志文件。
进一步可选的,可一并参照图6所示的写入模块32的示意图,写入模块32还可以通过第二判断单元323以及第二写入单元324实现磁盘中本节点事务日志文件的写入操作。
第二判断单元323,用于定时判断磁盘中的事务日志文件是否包含备份节点的缓存区中备份的事务日志;若判断出磁盘中的事务日志文件不包含备份节点的缓存区中备份的事务日志,则生成第二写入消息并发送至第二写入单元324;若判断出磁盘中的事务日志文件包含备份节点的缓存区中备份的事务日志,则生成第二不写入消息并发送至第二写入单元324。当触发备份节点写入操作时,第二判断单元323首先判断磁盘中的事务日志文件是否包含备份节点的缓存区中备份的事务日志,即磁盘中的事务日志文件位置是否与备份节点缓存区的事务日志位置相同,当磁盘中的事务日志文件位置与备份节点的缓存区中保存的事务日志位置相同时,代表磁盘中的事务日志文件包含备份节点的缓存区中备份的事务日志,第二写入单元324无需再次进行写入操作。那么,当第二判断单元323判断出磁盘中的事务日志文件不包含备份节点的缓存区中备份的事务日志时,可通知第二写入单元324执行写入操作;当第二判断单元323判断出磁盘中本节点的事务日志文件包含备份节点的缓存区中备份的事务日志时,第二判断单元322通知第二写入单元324不执行写入操作。
第二写入单元324,用于接收到第二写入消息后,将备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件;用于接收到第二不写入消息后,不将备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件。
本发明实施例的系统中,本节点事务提交后,不仅将生成的事务日志保存在本节点缓存区,还备份至其他节点的缓存区,可降低节点数据崩溃事件导致的事务日志丢失的概率,提高事务日志的安全性;保存有本节点事务日志的本节点以及所有的备份节点均能够执行将其缓存区保存的本节点事务日志写入磁盘中的事务日志文件的操作,使磁盘中的事务日志文件的记录位置始终保持为本节点最后一个事物操作生成的日志记录位置,若本发明实施例的系统发生宕机情况,则系统在启动恢复后,系统中本节点可以从磁盘中读取与本节点相对应的事务日志文件并恢复本节点丢失的数据。
本发明实施例的系统可以为高速互联网络下的集群数据库系统,其中,本方案实施例所提及的节点在系统中可以为节点交换机(Infiniband,高速互连设备),路由器等一类具有数据传输、共享功能的互联设备。
本发明实施例的系统可以为Shared-Disk架构的集群数据库系统,其中集群中节点设置了安全系数以及多个保存事务日志的备份节点缓存区,故本发明实施例提高了事务日志的持久性;本发明实施例提供的系统中,本节点以及备份节点均可执行将其缓存区中保存的本节点事务日志写入磁盘中与本节点相对应的事务日志文件,能够提高事务日志文件的可靠性,本发明实施例的系统在数据处理方面保持了现有技术中异步提交方案的并发处理性能,同时兼具了同步提交方案的持久性,降低了系统数据风险,提高了系统数据安全性、可靠性。
本发明实施例提供了一种数据恢复系统,用于实现上述的方法。图7是本发明第四实施例中的一种数据恢复系统的结构组成示意图。本发明实施例的数据恢复系统可以为一种系统内各节点不共享磁盘数据的集群数据库系统,可以用于实施图2所示的方案,如图所示,本发明实施例的系统至少可以包括:设置模块71、选择模块72、保存与备份模块73、写入模块74和恢复模块75,其中:
设置模块71,用于设置本节点的安全等级以及与安全等级相对应的备份节点数目。设置模块34为本节点生成的事务日志设置安全等级以及与安全等级相对应的备份节点数目。可以认为,设置模块71设置的节点安全等级越高,节点所需备份节点的数目越多,并且安全等级数(WSF,WAL Safety Factor)大于等于1,当WSF>1时,应预先在集群数据库系统指定至少1个节点作为备份节点。
选择模块72,用于从本节点以外的节点中为本节点选择出与安全等级相对应的备份节点数目的节点作为备份节点,并将选择出的备份节点的缓存区作为用于备份事务日志的缓存区。
进一步可选的,选择模块72选择备份节点的原则可以为就近原则,即从与本节点相邻的节点中选择出与安全等级相对应数目的备份节点;也可以按照一定的规则进行选择,如从本节点以外的包含空余缓冲区的节点中选择出与安全等级相对应数目的备份节点。如图11所示的Shared-Nothing架构的集群数据库系统,由图11可以看出,每个节点均包含多个可用于保存事务日志的缓存区,当设置节点2事务提交后生成的事务日志的安全等级WSF=3时,则除了作为本节点的节点2以外,系统中还应存在2个备份节点,可选择与本节点相邻的节点1和节点3作为备份节点。
进一步可选的,选择模块72选择出备份节点后,备份节点的缓存区将作为用于保存本节点事务日志的缓存区。具体的,可注册该缓存区的地址,并在注册成功后将注册信息发送至该缓存区对应的备份节点,以便于将本节点事务日志准确写入该缓存区。如前述的举例,可从图11所示系统的节点1中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点1,节点1则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区;从图11所示系统的节点3中选择一空余缓存区,记录该缓存区的地址并注册为用于保存本节点事务日志的缓存区,注册成功后,可将注册信息发送至节点3,节点3则根据本节点发送的注册信息将本节点事务日志写入注册信息对应的缓存区。
保存与备份模块73,用于事务提交后,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至本节点以外的至少一个备份节点的缓存区。其中,节点缓存区保存的事务日志用于写入磁盘中用于恢复本节点数据的事务日志文件,使磁盘中的事务日志文件记录位置保持与事务日志相同记录位置,将生成的事务日志保存至本节点缓存区,同时将事务日志备份至其他节点的缓存区,可以提高本节点事务日志的安全性。
写入模块74,用于将本节点缓存区中保存的事务日志或备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件。其中,磁盘中的事务日志文件用于恢复本节点的数据,写入模块74将其缓存区中保存的事务日志写入磁盘中的事务日志文件操作的触发条件可以为定时触发,可包括储存事务日志的缓冲区满时触发,还可包括按照规定时间为起点,每隔一定的时间间隔进行触发。
恢复模块75,用于本节点发生数据丢失事件时,基于磁盘中的事务日志文件恢复本节点丢失的数据。
进一步可选的,可一并参照图8所示的写入模块74的示意图,写入模块74可以通过本节点写入单元741和备份节点写入单元742实现本节点以及备份节点对其配置磁盘中本节点事务日志文件的写入操作,其中,本发明实施例所提及的磁盘包括仅支持所述本节点访问的本节点磁盘,以及仅支持备份节点访问的备份节点磁盘。如图11所示的Shared-Nothing架构的集群数据库系统,各个节点均配置有相应的磁盘,且节点间不共享磁盘数据。故当节点缓存区保存有本节点事务日志以及其他节点事务日志时,节点配置磁盘中将包含有该节点的事务日志文件,还包含有该节点作为备份节点时其缓存区保存的其他节点的事务日志文件,并且,这些事务日志文件是由该节点根据其缓存区中保存的事务日志来执行写入操作。
本节点写入单元721,用于将本节点缓存区中保存的事务日志写入本节点磁盘中的事务日志文件,其中,本节点磁盘中的事务日志文件用于恢复本节点的数据。当触发本节点写入操作时,本节点写入单元721将本节点缓存区中保存的事务日志写入本节点配置磁盘(即本节点磁盘)中的事务日志文件,其中,这里提到的本节点磁盘为不支持本节点以外的其他节点访问的磁盘或磁盘阵列。由于本节点磁盘中的本节点事务日志文件不能被其他节点读取,故在本节点未发生数据丢失的情况下,本节点写入单元721不必检测事务日志文件位置,可直接进行写入操作。
备份节点写入单元722,用于将备份节点的缓存区中备份的事务日志写入备份节点磁盘中的事务日志文件。其中,备份节点磁盘中的事务日志文件用于恢复本节点的数据。当触发备份节点写入操作时,备份节点写入单元722将其缓存区中保存的事务日志写入备份节点配置磁盘(即备份节点磁盘)中的事务日志文件,其中,这里提及的备份节点磁盘为不支持该备份节点以外的其他节点访问的磁盘或磁盘阵列。由于备份节点磁盘中的本节点事务日志文件不能被其他节点读取(亦不能被本节点读取),故在该备份节点未发生数据丢失的情况下,备份节点写入单元722不必检测事务日志文件位置,该备份节点可直接进行写入操作。
进一步可选的,可一并参照图9所示的恢复模块75的示意图,恢复模块75可以通过读取单元751、选择单元752和恢复单元753实现本节点数据的恢复操作。
读取单元731,用于读取本节点磁盘中的事务日志文件;还用于读取备份节点磁盘中的事务日志文件;
选择单元732,用于从读取到的各个事务日志文件中选择出信息最完整的事务日志文件。选择单元732选择的方法可以为从读取到各个事务日志文件中选择出信息最完整的事务日志文件,即通过比对各个事务日志文件的记录位置并选择出记录位置最新的本节点事务日志文件。
恢复单元733,用于使用选择单元732选择出的信息最完整的事务日志文件恢复本节点丢失的数据。
本发明实施例的系统中,本节点事务提交后,不仅将生成的事务日志保存在本节点缓存区,还备份至其他节点的缓存区,可降低节点数据崩溃事件导致的事务日志丢失的概率,提高事务日志的安全性;保存有本节点事务日志的本节点以及所有的备份节点均能够将其缓存区中保存的本节点事务日志写入其配置磁盘中本节点事务日志文件,使各个配置磁盘中与本节点事务日志文件的记录位置始终保持为本节点最后一个事物操作生成的日志记录位置,那么,本发明实施例的系统发生宕机情况时,系统在启动恢复后,系统中本节点可以从磁盘中读取与本节点相对应的事务日志文件并恢复本节点丢失的数据。
本发明实施例的系统可以为高速互联网络下的集群数据库系统,其中,本方案实施例所提及的节点在系统中可以为节点交换机(Infiniband,高速互连设备),路由器等一类具有数据传输、共享功能的互联设备。
本发明实施例的系统可以为Shared-Nothing架构的集群数据库系统,系统为系统中节点设置了安全系数以及多个保存事务日志的备份节点缓存区,故本发明实施例提高了事务日志的持久性;本发明实施例提供的系统中,本节点以及备份节点均可执行将其缓存区中保存的本节点事务日志写入其配置磁盘中的本节点事务日志文件,保证系统可以获取到信息最完整的事务日志文件并进行节点数据恢复工作,提高了事务日志文件的可靠性,本发明实施例的系统在数据处理方面保持了现有技术中异步提交方案的并发处理性能,同时兼具了同步提交方案的持久性,降低了系统数据风险,提高了系统数据安全性、可靠性。
前述实施例主要以Shared-Disk架构以及Shared-Nothing架构的集群数据库系统为例阐述了实施方案,前述方案还可以适用于利用WAL技术实现的在线分布式数据处理系统或集群,如分布式存储系统、分布式KEY/VALUE数据库系统、分布式列式数据库、分布式图数据库以及数据库备份系统等,本方案详述的实施例不应理解为对本方案实施方式的限制。
图12是本发明实施例提供的节点交换机的结构组成示意图,图1所示的方法可通过节点交换机实现,本实施例中节点交换机可包括:处理器121、存储器122、接收器123、发送器124,其中:
处理器121,用于在事务提交后,将生成的事务日志保存至本节点缓存区;还用于将本节点缓存区中保存的事务日志或备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件;本节点发生数据丢失事件时,还用于基于磁盘中的事务日志文件恢复本节点丢失的数据。
发送器124,与处理器121相连接,用于将生成的事务日志发送至本节点以外的至少一个备份节点的缓存区进行备份。
存储器122,用于在处理器121处理过程中储存缓存文件。
进一步可选的,本发明实施例中的移动终端还可以包括通信接口125,用于与外部设备通信。其中,本实施例中的移动终端可以包括总线126。处理器121、存储器122、接收器123以及发送器124可通过总线连接并通信。处理器121可以是中央处理器(central processing unit,CPU)、专用集成电路(application-specificintegrated circuit,ASIC)等,存储器122可以包括:随机存取存储器(random accessmemory,RAM),只读存储器(read-only memory,ROM)等具有存储功能的实体。
图13是本发明实施例提供的节点交换机的结构组成示意图,图2所示的方法可通过节点交换机实现,本实施例中节点交换机可包括:处理器131、存储器132、接收器133、发送器134以及通信接口135,其中:
处理器131,用于在事务提交后,将生成的事务日志保存至本节点缓存区;还用于将本节点缓存区中保存的事务日志或备份节点的缓存区中备份的事务日志写入磁盘中的事务日志文件;本节点发生数据丢失事件时,还用于基于磁盘中的事务日志文件恢复本节点丢失的数据。
接收器133,与处理器131相连接,用于从其他节点交换机接收存储区其他节点交换机配置磁盘中的本节点事务日志文件。
发送器134,与处理器131相连接,用于将生成的事务日志发送至本节点以外的至少一个备份节点的缓存区进行备份。
存储器132,用于在处理器131处理过程中储存缓存文件。
进一步可选的,本发明实施例中的移动终端还可以包括通信接口135,用于与外部设备通信。其中,本实施例中的移动终端可以包括总线136。处理器131、存储器132、接收器133以及发送器134可通过总线连接并通信。处理器131可以是中央处理器(central processing unit,CPU)、专用集成电路(application-specificintegrated circuit,ASIC)等,存储器132可以包括:随机存取存储器(random accessmemory,RAM),只读存储器(read-only memory,ROM)等具有存储功能的实体。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘(Disk)和碟(disc)包括压缩光碟(CD)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (14)
1.一种恢复数据的方法,其特征在于,所述方法包括:
事务提交后,将生成的事务日志保存至本节点缓存区,同时将所述事务日志备份至本节点以外的至少一个备份节点的缓存区;
将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件,所述磁盘中的事务日志文件用于恢复所述本节点的数据;
所述本节点发生数据丢失事件时,基于所述磁盘中的事务日志文件恢复所述本节点丢失的数据。
2.如权利要求1所述的方法,其特征在于,事务提交后,将生成的事务日志保存至本节点缓存区,同时将所述事务日志备份至所述本节点以外的至少一个备份节点的缓存区之前,还包括:
设置所述本节点的安全等级以及与所述安全等级相对应的备份节点数目;
从所述本节点以外的节点中为所述本节点选择出与所述安全等级相对应的备份节点数目的节点作为备份节点,并将所述选择出的备份节点的缓存区作为用于备份所述事务日志的缓存区。
3.如权利要求2所述的方法,其特征在于,从所述本节点以外的节点中为所述本节点选择出与所述安全等级相对应的备份节点数目的节点作为备份节点包括:
从所述本节点以外的与所述本节点相邻的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目;
或者,从所述本节点以外的包含空余缓冲区的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目。
4.如权利要求1-3中任一项所述的方法,其特征在于,将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件包括:
所述本节点定时判断所述磁盘中的事务日志文件是否包含所述本节点缓存区中保存的所述事务日志;
若判断出所述磁盘中的事务日志文件不包含所述本节点缓存区中保存的所述事务日志,则所述本节点将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件;
若判断出所述磁盘中的事务日志文件包含所述本节点缓存区中保存的所述事务日志,则所述本节点不将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件。
5.如权利要求1-4中任一项所述的方法,其特征在于,将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件包括:
所述备份节点定时判断所述磁盘中的事务日志文件是否包含所述备份节点的缓存区中备份的所述事务日志;
若判断出所述磁盘中的事务日志文件不包含所述备份节点的缓存区中备份的所述事务日志,则所述备份节点将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件;
若判断出所述磁盘中的事务日志文件包含所述备份节点的缓存区中备份的所述事务日志,则所述备份节点不将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件。
6.如权利要求1-3任一项所述的方法,其特征在于,所述磁盘包括仅支持所述本节点访问的本节点磁盘,以及仅支持备份节点访问的备份节点磁盘,将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件包括:
所述本节点将所述本节点缓存区中保存的所述事务日志写入所述本节点磁盘中的事务日志文件,所述本节点磁盘中的事务日志文件用于恢复所述本节点的数据;
并且,
所述备份节点将所述备份节点的缓存区中备份的所述事务日志写入所述备份节点磁盘中的事务日志文件,所述备份节点磁盘中的事务日志文件用于恢复所述本节点的数据。
7.如权利要求6所述的方法,其特征在于,所述本节点发生数据丢失事件时,基于所述磁盘中所述事务日志文件恢复所述本节点丢失的数据包括:
读取所述本节点磁盘中的事务日志文件;
读取所述备份节点磁盘中的事务日志文件;
从读取到的各个所述事务日志文件中选择出信息最完整的事务日志文件;
使用所述信息最完整的事务日志文件恢复所述本节点丢失的数据。
8.一种数据恢复系统,其特征在于,包括:
保存与备份模块,用于事务提交后,将生成的事务日志保存至本节点缓存区,同时将所述事务日志备份至本节点以外的至少一个备份节点的缓存区;
写入模块,用于将所述本节点缓存区中保存的所述事务日志或所述备份节点的缓存区中备份的所述事务日志写入磁盘中的事务日志文件,所述磁盘中的事务日志文件用于恢复所述本节点的数据;
恢复模块,用于所述本节点发生数据丢失事件时,基于所述磁盘中的事务日志文件恢复所述本节点丢失的数据。
9.如权利要求8所述的系统,其特征在于,还包括:
设置模块,用于设置所述本节点的安全等级以及与所述安全等级相对应的备份节点数目;
选择模块,用于从所述本节点以外的节点中为所述本节点选择出与所述安全等级相对应的备份节点数目的节点作为备份节点,并将所述选择出的备份节点的缓存区作为用于备份所述事务日志的缓存区。
10.如权利要求9所述的系统,其特征在于,所述选择模块,
还用于从所述本节点以外的与所述本节点相邻的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目;
或者,
还用于从所述本节点以外的包含空余缓冲区的节点中选择出备份节点,选择出的所述备份节点的数目等同于与所述安全等级相对应的备份节点数目。
11.如权利要求8-10任一项所述的系统,其特征在于,所述写入模块包括:
第一判断单元,用于定时判断所述磁盘中的事务日志文件是否包含所述本节点缓存区中保存的所述事务日志;若判断出所述磁盘中的事务日志文件不包含所述本节点缓存区中保存的所述事务日志,则生成第一写入消息并发送至第一写入单元;若判断出所述磁盘中的事务日志文件包含所述本节点缓存区中保存的所述事务日志,则生成第一不写入消息并发送至所述第一写入单元;
第一写入单元,用于接收到所述第一写入消息后,将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件;用于接收到所述第一不写入消息后,不将所述本节点缓存区中保存的所述事务日志写入所述磁盘中的事务日志文件。
12.如权利要求8-11任一项所述的系统,其特征在于,所述写入模块还包括:
第二判断单元,用于定时判断所述磁盘中的事务日志文件是否包含所述备份节点的缓存区中备份的所述事务日志;若判断出所述磁盘中的事务日志文件不包含所述备份节点的缓存区中备份的所述事务日志,则生成第二写入消息并发送至第二写入单元;若判断出所述磁盘中的事务日志文件包含所述备份节点的缓存区中备份的所述事务日志,则生成第二不写入消息并发送至所述第二写入单元;
第二写入单元,用于接收到所述第二写入消息后,将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件;用于接收到所述第二不写入消息后,不将所述备份节点的缓存区中备份的所述事务日志写入所述磁盘中的事务日志文件。
13.如权利要求8-10任一项所述的系统,其特征在于,所述磁盘包括仅支持所述本节点访问的本节点磁盘,以及仅支持备份节点访问的备份节点磁盘,所述写入模块包括:
本节点写入单元,用于将所述本节点缓存区中保存的所述事务日志写入所述本节点磁盘中的事务日志文件,所述本节点磁盘中的事务日志文件用于恢复所述本节点的数据;
备份节点写入单元,用于将所述备份节点的缓存区中备份的所述事务日志写入所述备份节点磁盘中的事务日志文件,所述备份节点磁盘中的事务日志文件用于恢复所述本节点的数据。
14.如权利要求13所述的系统,其特征在于,所述恢复模块包括:
读取单元,用于读取所述本节点磁盘中的事务日志文件;还用于读取所述备份节点磁盘中的事务日志文件;
选择单元,用于从所述读取模块读取到的各个所述事务日志文件中选择出信息最完整的事务日志文件;
恢复单元,用于使用所述信息最完整的事务日志文件恢复所述本节点丢失的数据。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410099107.6A CN103942252B (zh) | 2014-03-17 | 2014-03-17 | 一种恢复数据的方法及系统 |
EP15159366.2A EP2921974A1 (en) | 2014-03-17 | 2015-03-17 | Data restoration method and system |
US14/660,460 US9778998B2 (en) | 2014-03-17 | 2015-03-17 | Data restoration method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410099107.6A CN103942252B (zh) | 2014-03-17 | 2014-03-17 | 一种恢复数据的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103942252A true CN103942252A (zh) | 2014-07-23 |
CN103942252B CN103942252B (zh) | 2017-11-28 |
Family
ID=51189920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410099107.6A Active CN103942252B (zh) | 2014-03-17 | 2014-03-17 | 一种恢复数据的方法及系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9778998B2 (zh) |
EP (1) | EP2921974A1 (zh) |
CN (1) | CN103942252B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016155002A1 (en) * | 2015-04-03 | 2016-10-06 | Yahoo! Inc. | Method and system for data recovery in a data system |
CN106407039A (zh) * | 2016-08-30 | 2017-02-15 | 广州鼎甲计算机科技有限公司 | 一种Domino数据库异机恢复到指定时间点的方法 |
CN106528349A (zh) * | 2016-12-06 | 2017-03-22 | 郑州云海信息技术有限公司 | 一种数据存储方法及装置 |
CN106648971A (zh) * | 2016-11-11 | 2017-05-10 | 努比亚技术有限公司 | 一种崩溃crash恢复装置、终端及方法 |
CN106790562A (zh) * | 2016-12-26 | 2017-05-31 | 中国建设银行股份有限公司 | 一种分布式缓存系统、方法及装置 |
CN107229510A (zh) * | 2017-06-30 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种分布式系统事务管理方法及装置 |
CN107229537A (zh) * | 2017-05-31 | 2017-10-03 | 广州鼎甲计算机科技有限公司 | 一种数据库实时备份方法 |
CN108509462A (zh) * | 2017-02-28 | 2018-09-07 | 华为技术有限公司 | 一种同步活动事务表的方法及装置 |
CN109271277A (zh) * | 2017-07-17 | 2019-01-25 | 阿里巴巴集团控股有限公司 | 数据库宕机后的访问方法、装置和系统 |
CN109857593A (zh) * | 2019-01-21 | 2019-06-07 | 北京工业大学 | 一种数据中心日志缺失数据恢复方法 |
CN110928890A (zh) * | 2019-11-08 | 2020-03-27 | 广州华多网络科技有限公司 | 数据存储方法、装置、电子设备及计算机可读介质 |
CN115630003A (zh) * | 2022-11-16 | 2023-01-20 | 苏州浪潮智能科技有限公司 | 一种缓存数据的镜像方法、装置、设备及介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109165117B (zh) * | 2018-06-29 | 2022-05-31 | 华为技术有限公司 | 数据处理的方法和系统 |
CN110674105A (zh) * | 2019-08-30 | 2020-01-10 | 中国人民财产保险股份有限公司 | 一种数据备份方法、系统及服务器 |
CN113282564B (zh) * | 2021-07-24 | 2022-01-04 | 阿里云计算有限公司 | 数据存储方法、系统、节点和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070189153A1 (en) * | 2005-07-27 | 2007-08-16 | Archivas, Inc. | Method for improving mean time to data loss (MTDL) in a fixed content distributed data storage |
CN101034364A (zh) * | 2007-04-02 | 2007-09-12 | 华为技术有限公司 | 一种实现内存数据备份的方法、装置和系统 |
CN102156720A (zh) * | 2011-03-28 | 2011-08-17 | 中国人民解放军国防科学技术大学 | 一种数据恢复的方法、装置和系统 |
US20130151895A1 (en) * | 2011-12-09 | 2013-06-13 | Altibase Corp. | Apparatus and method of managing databases of active node and standby node of main memory database management system |
CN103198159A (zh) * | 2013-04-27 | 2013-07-10 | 国家计算机网络与信息安全管理中心 | 一种基于事务重做的异构集群多副本一致性维护方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5715447A (en) * | 1991-08-06 | 1998-02-03 | Fujitsu Limited | Method of and an apparatus for shortening a lock period of a shared buffer |
US5535381A (en) * | 1993-07-22 | 1996-07-09 | Data General Corporation | Apparatus and method for copying and restoring disk files |
US5793944A (en) * | 1996-09-13 | 1998-08-11 | International Business Machines Corporation | System for restoring register data in a pipelined data processing system using register file save/restore mechanism |
JP3974538B2 (ja) * | 2003-02-20 | 2007-09-12 | 株式会社日立製作所 | 情報処理システム |
US20050071391A1 (en) * | 2003-09-29 | 2005-03-31 | International Business Machines Corporation | High availability data replication set up using external backup and restore |
US7392319B2 (en) * | 2004-04-23 | 2008-06-24 | International Business Machines Corporation | Method and apparatus for failure resilient forwarding of data over a computer network |
US7355975B2 (en) * | 2004-04-30 | 2008-04-08 | International Business Machines Corporation | Method and apparatus for group communication with end-to-end reliability |
US20060150010A1 (en) * | 2005-01-03 | 2006-07-06 | Stiffler Jack J | Memory-controller-embedded apparatus and procedure for achieving system-directed checkpointing without operating-system kernel support |
AU2010333716B2 (en) | 2009-12-17 | 2016-06-16 | Commonwealth Scientific And Industrial Research Organisation | Reliable writing of database log data |
US20110184915A1 (en) * | 2010-01-28 | 2011-07-28 | Microsoft Corporation | Cluster restore and rebuild |
US9372854B2 (en) * | 2010-11-08 | 2016-06-21 | Hewlett Packard Enterprise Development Lp | Load balancing backup jobs in a virtualized storage system having a plurality of physical nodes |
US10817421B2 (en) * | 2010-12-13 | 2020-10-27 | Sandisk Technologies Llc | Persistent data structures |
TWI483105B (zh) * | 2013-01-31 | 2015-05-01 | Hon Hai Prec Ind Co Ltd | 主機板及其備份基板管理控制系統的方法 |
US9176832B2 (en) * | 2013-03-15 | 2015-11-03 | Cisco Technology, Inc. | Providing a backup network topology without service disruption |
US9753818B2 (en) * | 2014-09-19 | 2017-09-05 | Splunk Inc. | Data forwarding using multiple data pipelines |
US9792050B2 (en) * | 2014-08-13 | 2017-10-17 | PernixData, Inc. | Distributed caching systems and methods |
-
2014
- 2014-03-17 CN CN201410099107.6A patent/CN103942252B/zh active Active
-
2015
- 2015-03-17 EP EP15159366.2A patent/EP2921974A1/en not_active Ceased
- 2015-03-17 US US14/660,460 patent/US9778998B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070189153A1 (en) * | 2005-07-27 | 2007-08-16 | Archivas, Inc. | Method for improving mean time to data loss (MTDL) in a fixed content distributed data storage |
CN101034364A (zh) * | 2007-04-02 | 2007-09-12 | 华为技术有限公司 | 一种实现内存数据备份的方法、装置和系统 |
CN102156720A (zh) * | 2011-03-28 | 2011-08-17 | 中国人民解放军国防科学技术大学 | 一种数据恢复的方法、装置和系统 |
US20130151895A1 (en) * | 2011-12-09 | 2013-06-13 | Altibase Corp. | Apparatus and method of managing databases of active node and standby node of main memory database management system |
CN103198159A (zh) * | 2013-04-27 | 2013-07-10 | 国家计算机网络与信息安全管理中心 | 一种基于事务重做的异构集群多副本一致性维护方法 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11210185B2 (en) | 2015-04-03 | 2021-12-28 | Verizon Media Inc. | Method and system for data recovery in a data system |
WO2016155002A1 (en) * | 2015-04-03 | 2016-10-06 | Yahoo! Inc. | Method and system for data recovery in a data system |
US10459805B2 (en) | 2015-04-03 | 2019-10-29 | Oath Inc. | Method and system for data recovery in a data system |
CN106407039A (zh) * | 2016-08-30 | 2017-02-15 | 广州鼎甲计算机科技有限公司 | 一种Domino数据库异机恢复到指定时间点的方法 |
CN106648971A (zh) * | 2016-11-11 | 2017-05-10 | 努比亚技术有限公司 | 一种崩溃crash恢复装置、终端及方法 |
CN106528349A (zh) * | 2016-12-06 | 2017-03-22 | 郑州云海信息技术有限公司 | 一种数据存储方法及装置 |
CN106790562A (zh) * | 2016-12-26 | 2017-05-31 | 中国建设银行股份有限公司 | 一种分布式缓存系统、方法及装置 |
CN108509462A (zh) * | 2017-02-28 | 2018-09-07 | 华为技术有限公司 | 一种同步活动事务表的方法及装置 |
US11442961B2 (en) | 2017-02-28 | 2022-09-13 | Huawei Technologies Co., Ltd. | Active transaction list synchronization method and apparatus |
CN107229537A (zh) * | 2017-05-31 | 2017-10-03 | 广州鼎甲计算机科技有限公司 | 一种数据库实时备份方法 |
CN107229510A (zh) * | 2017-06-30 | 2017-10-03 | 郑州云海信息技术有限公司 | 一种分布式系统事务管理方法及装置 |
CN109271277A (zh) * | 2017-07-17 | 2019-01-25 | 阿里巴巴集团控股有限公司 | 数据库宕机后的访问方法、装置和系统 |
CN109857593B (zh) * | 2019-01-21 | 2020-08-28 | 北京工业大学 | 一种数据中心日志缺失数据恢复方法 |
CN109857593A (zh) * | 2019-01-21 | 2019-06-07 | 北京工业大学 | 一种数据中心日志缺失数据恢复方法 |
CN110928890A (zh) * | 2019-11-08 | 2020-03-27 | 广州华多网络科技有限公司 | 数据存储方法、装置、电子设备及计算机可读介质 |
CN110928890B (zh) * | 2019-11-08 | 2023-01-24 | 广州华多网络科技有限公司 | 数据存储方法、装置、电子设备及计算机可读存储介质 |
CN115630003A (zh) * | 2022-11-16 | 2023-01-20 | 苏州浪潮智能科技有限公司 | 一种缓存数据的镜像方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
US9778998B2 (en) | 2017-10-03 |
CN103942252B (zh) | 2017-11-28 |
EP2921974A1 (en) | 2015-09-23 |
US20150261626A1 (en) | 2015-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103942252A (zh) | 一种恢复数据的方法及系统 | |
US11614867B2 (en) | Distributed storage system-based data processing method and storage device | |
US20150213100A1 (en) | Data synchronization method and system | |
US11307776B2 (en) | Method for accessing distributed storage system, related apparatus, and related system | |
CN107506266B (zh) | 一种数据恢复方法及系统 | |
US11176110B2 (en) | Data updating method and device for a distributed database system | |
CN104937904B (zh) | 用于卸载的方法、系统和计算机存储介质 | |
WO2020063600A1 (zh) | 数据容灾方法与站点 | |
CN103973810A (zh) | 基于互联网协议ip盘的数据处理方法和装置 | |
CN110121694B (zh) | 一种日志管理方法、服务器和数据库系统 | |
CN110442601B (zh) | 一种Openstack镜像数据并行加速的方法和装置 | |
CN108616598B (zh) | 数据同步方法、装置和分布式存储系统 | |
CN113051428B (zh) | 一种摄像机前端存储备份的方法及装置 | |
US10620872B2 (en) | Replicating data in a data storage system | |
CN109347746B (zh) | 一种mac地址学习方法及装置 | |
US11693844B2 (en) | Processing delete requests based on change feed of updates | |
US9852031B2 (en) | Computer system and method of identifying a failure | |
CN107045426B (zh) | 一种多副本读取方法和系统 | |
CN113535477B (zh) | 一种用于数据容灾恢复的方法与设备 | |
CN105159790A (zh) | 一种数据抢救方法及文件服务器 | |
CN112799872B (zh) | 一种基于键值对存储系统的纠删码编码方法及装置 | |
CN115470041A (zh) | 一种数据灾备管理方法及装置 | |
CN111586438B (zh) | 一种业务数据的处理方法、装置及系统 | |
CN115698955A (zh) | 事务镜像的容错 | |
CN110399098A (zh) | 一种数据处理方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |