CN103885854A - 一种数据备份方法、装置及系统 - Google Patents
一种数据备份方法、装置及系统 Download PDFInfo
- Publication number
- CN103885854A CN103885854A CN201210554576.3A CN201210554576A CN103885854A CN 103885854 A CN103885854 A CN 103885854A CN 201210554576 A CN201210554576 A CN 201210554576A CN 103885854 A CN103885854 A CN 103885854A
- Authority
- CN
- China
- Prior art keywords
- snapshot
- service node
- transaction journal
- response
- network storage
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
本发明实施例提供一种数据备份方法、装置及系统,所述方法应用于分布式环境,包括:接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;向网络中需要进行快照操作的各个业务节点发送准备命令;接收所述各个业务节点发送的响应;如果所述响应中有一个为失败响应,将网络存储设备中记录的事务日志修改为失败状态;向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理。本发明解决了现有技术中由于网络节点的失效而导致快照事务停止的技术问题。
Description
技术领域
本发明涉及分布存储技术领域,特别涉及一种数据备份方法、装置及系统。
背景技术
在分布式系统中的事务处理,以及跨网络的事务处理中,通常包括两个阶段,第一阶段为准备阶段,第二阶段为提交节点,而所述二阶段提交是一种非常常用的原子提交协议,用来保证各个资源的事务操作,要么全部成功,要么全部回滚(即取消)。
其中,传统的二阶段中,发起和协调事务操作的节点称为事务协调器(Coordinator),控制各个分布式资源的节点称为资源管理器(Worker);具体协调事务操作的过程为:
第一阶段:Coordinator发起一个事务,并发送准备命令给所有的Worker。每个Worker接收到该准备命令之后,根据自身的状态,向Coordinator发送成功或者失败结果。
第二阶段:Coordinator在根据接收到的各个Worker的响应结果,如果全部是成功结果,则向各个Worker发送提交快照命令,如果有一个失败结果,则向发送成功结果的Worker或者向全部Worker发送回滚(取消)命令;各个Worker接收到该回滚(取消)命令后,停止事务处理,从而导致整个事务被卡住(即停止)。
其中,在上述的第一阶段和第二阶段中,各个节点(即Coordinator和所有的Worker)均在本地记录并存储自己处理事务的日志。
在对现有技术的研究和实践过程中,本发明的发明人发现,现有的实现方式中,如果网络中的各个节点(比如Coordinator、至少一个Worker等)出现失效的情况下,整个事务就被停止(卡住),只有在该失效的节点恢复后,才能重新进行该事务处理。
发明内容
本发明实施例中提供了一种数据备份方法、装置及系统,以解决现有技术中,由于网络节点的失效而导致快照事务停止的技术问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
第一方面提供了一种数据备份方法,应用于分布式环境,所述方法包括:
接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;
记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;
向网络中需要进行快照操作的各个业务节点发送准备命令;
接收所述各个业务节点发送的响应;
如果所述响应中有一个为失败响应,将所述网络存储设备中记录的事务日志修改为失败状态;
向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理。
在第一方面的第一种可能的实现方式中,还包括:
如果所述响应全部为成功响应,将所述网络存储设备中记录的事务日志修改为成功状态;
向所述各个业务节点发送提交快照命令;
接收所述各个业务节点提交的快照。
第二方面提供了一种数据备份方法,应用于分布式环境,所述方法包括:
接收管理节点发送的准备命令;
向所述管理节点发送响应;
如果在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理。
在第二方面的第一种可能的实现方式中,还包括:
如果在设定时间内没有接收到所述管理节点发送的提交快照命令或者回滚命令,则查找所述网络存储设备中事务日志的记录状态;
如果查找到的记录状态为成功状态,则提交自身的快照。
如果查找到的记录状态为失败状态,则取消自身的快照。
结合第二方面或第二方面第一种可能的实现方式,在第二种可能的实现方式中,还包括:如果查找所述网络存储设备中事务日志的记录状态失败,或者不能与所述网络存储设备通信时,则中止自身的快照服务。
第三方面提供了一种数据备份装置,应用于分布式环境,所述装置包括:
第一接收单元,用于接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;
记录单元,用于记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;
第一发送单元,用于向网络中需要进行快照操作的各个业务节点发送准备命令;
第二接收单元,用于接收所述各个业务节点发送的响应;
第一修改单元,用于在所述第二接收单元接收到的所述响应中有一个为失败响应时,将所述网络存储设备中的事务日志修改为失败状态;
第二发送单元,用于向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理。
在第三方面的第一种可能的实现方式中,还包括:
第二修改状态,用于在所述第二接收单元接收到的所述响应全部为成功响应,将所述网络存储设备中记录的事务日志修改为成功状态;
第三发送单元,用于向所述各个业务节点发送提交快照命令;
第三接收单元,用于在第三发送单元发送提交快照命令后,接收所述各个业务节点提交的快照。
第四方面提供了一种数据备份装置,应用于分布式环境,所述装置包括:
第一接收单元,用于接收管理节点发送的准备命令;
第一发送单元,用于向所述管理节点发送响应;
处理单元,用于在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理。
在第四方面的第一种可能的实现方式中,还包括:
查找单元,用于在设定时间内没有接收到所述管理节点发送的提交快照命令或者回滚命令,则查找所述网络存储设备中事务日志的记录状态;
提交单元,用于在所述查找单元查找到的记录状态为成功状态时,提交自身的快照;
取消单元,用于在所述查找单元查找到的记录状态为失败状态时,取消自身的快照。
结合第四方面或第四方面第一种可能的实现方式,在第二种可能的实现方式中,还包括:
第一中止单元,用于在所述查找单元查找所述网络存储设备中事务日志的记录状态失败时,则中止自身的快照服务;和/或
第二中止单元,用于在所述装置不能与所述网络存储设备通信时,中止自身的快照服务。
第五方面提供了一种数据备份系统,应用于分布式环境,所述系统包括:管理节点、多个业务节点和网络存储设备,其中,所述网络存储设备分别与所述管理节点,以及所有业务节点连接,其中,
所述管理节点,用于接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;向网络中需要进行快照操作的各个业务节点发送准备命令;接收所述各个业务节点发送的响应;如果所述响应中有一个为失败响应,将所述网络存储设备中记录的事务日志修改为失败状态;向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理;
每个业务节点,用于接收管理节点发送的准备命令;向所述管理节点发送响应;如果在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理;
所述网络存储设备,用于存储创建快照命令的事务日志,并为各个业务节点提供事务日志的记录状态。
在第五方面的第一种可能的实现方式中,所述网络存储设备包括:分布式的数据集群、分布式存储设备或分布式存储器。
由上述技术方案可知,本发明实施例中,在事务参与的业务节点失效后,整个事务依然可以提交快照或者回滚,从而解决了事务参与节点失效后带来的事务卡住的问题,提高了用户满意度。进一步,在事务参与的业务节点失效后,其他参与事务节点仍然可以在一个设定的时间(比如超时时间内T)完成快照提交事务,或者回滚该事务。不会因为事务处理占用的资源无法释放而带来的事务中止的问题,从而提高了用户的满意度
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据备份方法的流程图;
图2为本发明实施例提供的一种数据备份方法的另一流程图;
图3为本发明实施例提供的一种数据备份方法的又一流程图;
图4为本发明实施例提供的一种数据备份装置的结构示意图;
图5为本发明实施例提供的数据备份装置另一结构示意图;
图6为本发明实施例提供的数据备份系统的结构示意图;
图7为本发明实施例提供的一种数据备份系统的应用实例。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明实施例提供的一种数据备份方法的流程图;所述方法应用于分布式环境,比如,在分布式块存储系统中,如果一个逻辑卷(即逻辑硬盘)会被分散到集群中的各个业务节点(比如存储节点)上。如果需要创建快照的时候,需要将创建命令发送到拥有该逻辑卷的各个业务节点上。并且需要确保该创建操作,在所有的业务节点上,需要同时成功,或者同时失败。为了方面描述,本实施例将发起和协调事务操作的业务节点称为管理节点,控制各个分布式资源的业务节点称为业务节点。所述方法包括:
步骤101:接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;
在该步骤中,管理节点接收到用户发送的创建快照的命令,所述快照命令包括准备命令和提交快照命令,但并不限于此,还可以包括其他的参数,本实施例不作限制。
步骤102:记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;
该实施例,由管理节点记录事务日志,并将记录的事务日志存储到网络存储设备中,对于所述网络存储设备,该网络正常的情况下,所有的业务节点均可以查询其存储事务日志的状态。也就是说,所有业务节点均不需要在本地记录事务日志,如需需要查看事务日志的状态时,可以从所述网络存储设备中读取。
步骤103:向网络中需要进行快照操作的各个业务节点发送准备命令;
在管理节点接到创建快照命令,可以,先确定需要进行快照操作的各个业务节点,然后向确定的各个业务节点发送准备命令,以便于各个业务节点在接收到所述准备命令后,查看自身的存储情况。
步骤104:接收所述各个业务节点发送的响应;
其中,管理节点接收到各个业务节点发送的成功或失败响应。
步骤105:如果所述响应中有一个为失败响应,将所述网络存储设备中记录的事务日志修改为失败状态;
步骤106:向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理。
在该实施例中,如果有一个业务节点发送的响应为失败响应,则管理节点在修改事务日志的状态为失败状态后,向所述各个业务节点,或发送成功响应的业务节点发送回滚命令,接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理,如果查找到的记录状态为成功状态,则提交自身的快照;如果查找到的记录状态为失败状态,则取消自身的快照。
本发明实施例中,在事务参与的业务节点失效后,整个事务依然可以提交快照或者回滚,从而解决了事务参与节点失效后带来的事务卡住的问题,提高了用户满意度。
还请参阅图2,为本发明实施例提供的一种数据备份方法的另一流程图,所述方法应用分布式环境,具体包括:
步骤201:接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;
管理节点接收到用户发送的创建快照的命令,所述快照命令包括准备命令和提交快照命令,但并不限于此,还可以包括其他的参数,本实施例不作限制。
步骤202:记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;
步骤203:向网络中需要进行快照操作的各个业务节点发送准备命令;
步骤204:接收所述各个业务节点发送的响应;
其中,管理节点接收到各个业务节点发送的成功或失败响应。
步骤205:如果所述响应全部为成功响应,将所述网络存储设备中记录的事务日志修改为成功状态;
步骤206:向所述各个业务节点发送提交快照命令;
如果管理节点接收到各个业务节点反馈的所述响应全部为成功响应,则先修改网络存储设备中记录的事务日志修改为成功状态,之后,向各个业务节点发送提交快照命令,以便于各个业务节点提供快照。其中,所述快照就是对某一时间点之前的数据进行备份。
步骤207:接收所述各个业务节点提交的快照。
本发明实施例中,在事务参与的业务节点失效后,整个事务依然可以提交快照或者回滚,从而解决了事务参与节点失效后带来的事务卡住的问题,提高了用户满意度。
还请参阅图3,为本发明实施例提供的一种数据备份方法的又一流程图,所述方法应用分布式环境,具体包括:
步骤301:接收管理节点发送的准备命令;
在该步骤中,每个参与的业务节点都会接收到所述管理节点发送的准备命令,其发送的方式,可以通过广播,或者多播的方式发送,当然,也可以通过其他的方式,本实施例不作限制。
步骤302:向所述管理节点发送响应;
所述业务节点在接收到所述准备命令后,查看自身的存储情况,然后向管理节点发送成功或失败响应。
步骤303:如果在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理。
比如,如果是在设定的时间内接收到提交快照命令,则向管理节点提交快照的操作;如果是在设定的时间内接收到回滚命令,则取消提交快照的操作。
其中,所述设定时间可以按照用户能接受的失效容忍时间来设定,当然,并不限于此,还可以结合其他参数来设定,本实施例不作限制。
可选的,在该实施例中,业务节点在接收到管理节点发送的准备命令后,可以启动超时处理流程,比如启动计时器进行计时,然后,判断计数器记录的时间是否达到设定时间。
如果计时器记录的时间达到设定时间之前,接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理;
如果计时器记录的时间达到设定时间之前,没有接收到所述管理节点发送的提交快照命令或者回滚命令,则查找所述网络存储设备中事务日志的记录状态;
如果查找到的记录状态为成功状态,则提交自身的快照。
如果查找到的记录状态为失败状态,则取消自身的快照。
可选的,在上述实施例的基础上,所述方法还可以包括:如果业务节点查找所述网络存储设备中事务日志的记录状态失败,或者不能与所述网络存储设备通信时,则中止自身的快照服务。并且,在中止自身快照服务后,不断重试,直到与数据集群恢复通信为止。
本发明实施例中,在事务参与的业务节点失效后,其他参与事务节点仍然可以在一个设定的时间(比如超时时间内T)完成快照提交事务,或者回滚该事务。不会因为事务处理占用的资源无法释放而带来的事务中止的问题,从而提高了用户的满意度。
基于上述方法的实现过程,本发明实施例还提供一种数据备份装置,其结构示意图如图4所示,所述装置应用于分布式环境,包括:第一接收单元41,记录单元42,第一发送单元43,第二接收单元44,第一修改单元45和第二发送单元46,其中,
所述第一接收单元41,用于接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;所述记录单元42,用于记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;所述第一发送单元43,用于向网络中需要进行快照操作的各个业务节点发送准备命令;所述第二接收单元44,用于接收所述各个业务节点发送的响应;所述第一修改单元45,用于在所述第二接收单元接收到的所述响应中有一个为失败响应时,将所述网络存储设备中的事务日志修改为失败状态;所述第二发送单元46,用于向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理。
所述装置还可以包括:第二修改单元,第三发送单元和第三接收单元,其中,
所述第二修改单元,用于在所述第二接收单元接收到的所述响应全部为成功响应,将所述网络存储设备中记录的事务日志修改为成功状态;所述第三发送单元,用于向所述各个业务节点发送提交快照命令;所述第三接收单元,用于在第三发送单元发送提交快照命令后,接收所述各个业务节点提交的快照。
可选的,所述装置可以集成在管理节点上,也可以集成在分布式存储节点上,还可以独立部署,本实施例不作限制。
所述装置中各个单元的功能和作用的实现过程详见上述方法中对应的实现过程,在此不再赘述。
相应的,本发明实施例还提供一种数据备份装置,其结构示意图如图5所示,所述装置应用于分布式环境,包括:第一接收单元51,第一发送单元52和处理单元53,其中,
所述第一接收单元51,用于接收管理节点发送的准备命令;所述第一发送单元52,用于向所述管理节点发送响应;所述处理单元53,用于在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理。
可选的,所述装置还可以包括:查找单元,提交单元和取消单元,其中,所述查找单元,用于在设定时间内没有接收到所述管理节点发送的提交快照命令或者回滚命令,则查找所述网络存储设备中事务日志的记录状态;所述提交单元,用于在所述查找单元查找到的记录状态为成功状态时,提交自身的快照;所述取消单元,用于在所述查找单元查找到的记录状态为失败状态时,取消自身的快照。当然,在该实施例中,可以只包括提交单元,或者取消单元,本实施例不作限制。
可选的,所述装置还可以包括:第一中止单元和/或第二中止单元,其中,所述第一中止单元,用于在所述查找单元查找所述网络存储设备中事务日志的记录状态失败时,则中止自身的快照服务;所述第二中止单元,用于在所述装置不能与所述网络存储设备通信时,中止自身的快照服务。
可选的,所述装置可以集成在业务节点上,也可以集成在分布式存储节点上,还可以独立部署,本实施例不作限制。
所述装置中各个单元的功能和作用的实现过程详见上述方法中对应的实现过程,在此不再赘述。
相应的,本发明实施例还提供一种数据备份系统,其结构示意图如图6所示,所述系统应用于分布式环境,所述系统包括:管理节点61、多个业务节点(本实施例中以业务节点62和业务节点63为例,但并不限于此)和网络存储设备64,其中,所述网络存储设备64分别与所述管理节点61,以及所有业务节点(本实施例以所述业务节点62和业务节点63为例)连接,其中,
所述管理节点61,用于接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备64中;向网络中需要进行快照操作的各个业务节点发送准备命令;接收所述各个业务节点(本实例以第一业务节点62和第二业务节点63为例,下同)发送的响应;如果所述响应中有一个为失败响应,将所述网络存储设备中记录的事务日志修改为失败状态;向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理;
每个业务节点(以业务节点62和业务节点63为例,下同),用于接收管理节点发送的准备命令;向所述管理节点发送响应;如果在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理;
所述网络存储设备64,用于存储创建快照命令的事务日志,并为各个业务节点提供事务日志的记录状态。
其中,所述网络存储设备包括:分布式的数据集群、分布式存储设备或分布式存储器,但并不限于此,还可以是其他的分布式存储设备。
需要说明的是,该实施例中,所述管理节点包括上述对应的数据备份装置,所述业务节点也可以包括上述对应的数据备份装置。
为了便于本领域技术人员的理解,下面以具体的应用实例来说明。
请参阅图7,为本发明实施例提供的一种数据备份系统的应用实例。
该实施例中以分布式块存储系统为例,一个逻辑卷(逻辑硬盘)会被分散到集群中的各个节点。如果需要创建快照的时候,需要将创建命令发送到拥有该逻辑卷的数据的各个存储节点。并且需要确保该创建操作,在所有的存储节点上,需要同时成功,或者同时失败回滚。该实施例以包括3个业务节点为例,但并不限于此。
具体的操作步骤为:
1、用户将创建快照的命令发送给集群的管理节点(或者中心节点),由该管理节点作为分布式事务(创建快照)的协调者。
2、管理节点先记录事务日志到一个可靠的网络存储中,本实施例以分布式的数据集群为例,但并不限于此。
3、管理节点发送准备命令到需要进行快照操作的3个业务节点;
4、3个业务节点接收到所述准备命令之后,根据自身情况响应成功或者失败。
5、管理节点在接收到所述3个业务节点发送的响应:
如果所述响应全部为成功响应,则先将数据集群中的事务日志修改为成功状态,并向所有业务节点发送提交命令(Commit)到各个业务节点。
如果所述响应有一个失败时,则修改数据集群中的事务日志为失败状态,并向所有业务节点或者发送成功响应的业务节点发送回滚命令(Rollback)。
收到所述回滚命令的业务节点在接收到准备命令之后,启动超时处理。
如果在超时时间(T)到来之前,接收到了管理节点发送的提交快照命令或者回滚命令,则依照该命令进行对应的处理。
如果超时时间(T)到达之后,仍然没有接收到管理节点的下一步指令,则自行去数据集群中读取对应的事务日志。如果读取出的事务日志为成功状态,则提交自身的快照;如果为失败,或者为初始状态,则回滚自身的快照;
如果读取事务日志失败,或者无法与存放事务日志的数据集群无法通信,则中止自身的块存储服务,并不断重试,直到与数据集群恢复通信为止。
本发明实施例与单纯的二阶段提交相比,解决了事务参与节点失效带来的事务卡住的问题。可以确保即使有节点在事务处理的过程中失效,其他节点仍然可以在一个超时时间内(T)完成或者回滚该事务。不会因为事务处理占用的资源无法释放带来的服务中止的问题,从而提高了用户的满意度。
本发明实施例中,不但可以适用于分布式块存储领域,还可以适用于其他各种各样的分布式环境。凡是在分布式环境中使用二阶段提交的,都是应用本发明实施例。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种数据备份方法,其特征在于,应用于分布式环境,所述方法包括:
接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;
记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;
向网络中需要进行快照操作的各个业务节点发送准备命令;
接收所述各个业务节点发送的响应;
如果所述响应中有一个为失败响应,将所述网络存储设备中记录的事务日志修改为失败状态;
向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理。
2.根据权利要求1所述的方法,其特征在于,还包括:
如果所述响应全部为成功响应,将所述网络存储设备中记录的事务日志修改为成功状态;
向所述各个业务节点发送提交快照命令;
接收所述各个业务节点提交的快照。
3.一种数据备份方法,其特征在于,应用于分布式环境,所述方法包括:
接收管理节点发送的准备命令;
向所述管理节点发送响应;
如果在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理。
4.根据权利要求3所述的方法,其特征在于,还包括:
如果在设定时间内没有接收到所述管理节点发送的提交快照命令或者回滚命令,则查找所述网络存储设备中事务日志的记录状态;
如果查找到的记录状态为成功状态,则提交自身的快照。
如果查找到的记录状态为失败状态,则取消自身的快照。
5.根据权利要求4所述的方法,其特征在于,还包括:
如果查找所述网络存储设备中事务日志的记录状态失败,或者不能与所述网络存储设备通信时,则中止自身的快照服务。
6.一种数据备份装置,其特征在于,应用于分布式环境,所述装置包括:
第一接收单元,用于接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;
记录单元,用于记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;
第一发送单元,用于向网络中需要进行快照操作的各个业务节点发送准备命令;
第二接收单元,用于接收所述各个业务节点发送的响应;
第一修改单元,用于在所述第二接收单元接收到的所述响应中有一个为失败响应时,将所述网络存储设备中的事务日志修改为失败状态;
第二发送单元,用于向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理。
7.根据权利要求6所述的装置,其特征在于,还包括:
第二修改状态,用于在所述第二接收单元接收到的所述响应全部为成功响应,将所述网络存储设备中记录的事务日志修改为成功状态;
第三发送单元,用于向所述各个业务节点发送提交快照命令;
第三接收单元,用于在第三发送单元发送提交快照命令后,接收所述各个业务节点提交的快照。
8.一种数据备份装置,其特征在于,应用于分布式环境,所述装置包括:
第一接收单元,用于接收管理节点发送的准备命令;
第一发送单元,用于向所述管理节点发送响应;
处理单元,用于在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理。
9.根据权利要求8所述的装置,其特征在于,还包括:
查找单元,用于在设定时间内没有接收到所述管理节点发送的提交快照命令或者回滚命令,则查找所述网络存储设备中事务日志的记录状态;
提交单元,用于在所述查找单元查找到的记录状态为成功状态时,提交自身的快照;
取消单元,用于在所述查找单元查找到的记录状态为失败状态时,取消自身的快照。
10.根据权利要求9所述的装置,其特征在于,还包括:
第一中止单元,用于在所述查找单元查找所述网络存储设备中事务日志的记录状态失败时,则中止自身的快照服务;和/或
第二中止单元,用于在所述装置不能与所述网络存储设备通信时,中止自身的快照服务。
11.一种数据备份系统,其特征在于,应用于分布式环境,所述系统包括:管理节点、多个业务节点和网络存储设备,其中,所述网络存储设备分别与所述管理节点,以及所有业务节点连接,其中,
所述管理节点,用于接收用户发送的创建快照命令,所述快照命令包括准备命令和提交快照命令;记录接收所述创建快照命令的事务日志,并将所述事务日志存储到网络存储设备中;向网络中需要进行快照操作的各个业务节点发送准备命令;接收所述各个业务节点发送的响应;如果所述响应中有一个为失败响应,将所述网络存储设备中记录的事务日志修改为失败状态;向所述各个业务节点或发送成功响应的业务节点发送回滚命令,以便于接收到所述回滚命令的业务节点通过查找网络存储设备中的事务日志的记录状态进行对应的处理;
每个业务节点,用于接收管理节点发送的准备命令;向所述管理节点发送响应;如果在设定时间内接收到所述管理节点发送的提交快照命令或者回滚命令,则按照所述提交快照命令或者回滚命令执行对应的处理;
所述网络存储设备,用于存储创建快照命令的事务日志,并为各个业务节点提供事务日志的记录状态。
12.根据权利要求11所述的系统,其特征在于,所述网络存储设备包括:分布式的数据集群、分布式存储设备或分布式存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210554576.3A CN103885854A (zh) | 2012-12-19 | 2012-12-19 | 一种数据备份方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210554576.3A CN103885854A (zh) | 2012-12-19 | 2012-12-19 | 一种数据备份方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103885854A true CN103885854A (zh) | 2014-06-25 |
Family
ID=50954762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210554576.3A Pending CN103885854A (zh) | 2012-12-19 | 2012-12-19 | 一种数据备份方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103885854A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335253A (zh) * | 2015-10-28 | 2016-02-17 | 北京百度网讯科技有限公司 | 创建虚拟机系统盘快照的方法和装置 |
CN105487473A (zh) * | 2014-10-06 | 2016-04-13 | Ls产电株式会社 | 具有备份功能的plc数据日志模块 |
WO2016095372A1 (zh) * | 2014-12-19 | 2016-06-23 | 中兴通讯股份有限公司 | 实现事务日志镜像备份的方法及装置 |
CN105989164A (zh) * | 2015-03-04 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 回滚处理方法及装置 |
CN107168775A (zh) * | 2016-03-07 | 2017-09-15 | 阿里巴巴集团控股有限公司 | 一种悬挂事务自动处理的方法和装置 |
WO2018023994A1 (zh) * | 2016-08-05 | 2018-02-08 | 华为技术有限公司 | 一种容灾切换的方法、节点及系统 |
CN108280080A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置以及电子设备 |
CN109324926A (zh) * | 2018-08-30 | 2019-02-12 | 黄疆 | 一种基于rollback的垃圾数据处理系统及方法 |
CN109684048A (zh) * | 2018-11-22 | 2019-04-26 | 华为技术有限公司 | 事务提交系统中处理事务的方法及装置 |
CN111210350A (zh) * | 2020-01-03 | 2020-05-29 | 平安科技(深圳)有限公司 | 区块链的交易方法、装置、计算机设备及存储介质 |
CN112000521A (zh) * | 2020-08-24 | 2020-11-27 | 中国银联股份有限公司 | 分布式数据库系统的全量备份方法、装置及计算机可读存储介质 |
CN112685497A (zh) * | 2020-12-25 | 2021-04-20 | 北京浪潮数据技术有限公司 | 一种mysql数据库集群的数据操作执行方法、装置及设备 |
CN112948856A (zh) * | 2021-03-03 | 2021-06-11 | 电信科学技术第五研究所有限公司 | 一种防篡改可信的网络协同管控系统及实现方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266698B1 (en) * | 1998-07-31 | 2001-07-24 | Compaq Computer Corporation | Logging of transaction branch information for implementing presumed nothing and other protocols |
US6728958B1 (en) * | 1998-07-31 | 2004-04-27 | Hewlett-Packard Development Company, L.P. | Volatile resource manager with pre-prepare notification |
JP2007293650A (ja) * | 2006-04-26 | 2007-11-08 | Hitachi Ltd | 分散トランザクション制御システムおよびその方法 |
-
2012
- 2012-12-19 CN CN201210554576.3A patent/CN103885854A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266698B1 (en) * | 1998-07-31 | 2001-07-24 | Compaq Computer Corporation | Logging of transaction branch information for implementing presumed nothing and other protocols |
US6728958B1 (en) * | 1998-07-31 | 2004-04-27 | Hewlett-Packard Development Company, L.P. | Volatile resource manager with pre-prepare notification |
JP2007293650A (ja) * | 2006-04-26 | 2007-11-08 | Hitachi Ltd | 分散トランザクション制御システムおよびその方法 |
Non-Patent Citations (2)
Title |
---|
Y.A.L.E: "分布式事务设计-两段式提交", 《YALE.ITEYE.COM/BLOG/1397917》 * |
陈俊伟: "对两阶段提交协议的一些改进", 《重庆职业技术学院学报》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487473A (zh) * | 2014-10-06 | 2016-04-13 | Ls产电株式会社 | 具有备份功能的plc数据日志模块 |
US9817590B2 (en) | 2014-10-06 | 2017-11-14 | Lsis Co., Ltd. | PLC data log module with backup function |
CN105487473B (zh) * | 2014-10-06 | 2018-06-05 | Ls产电株式会社 | 具有备份功能的plc数据日志模块 |
WO2016095372A1 (zh) * | 2014-12-19 | 2016-06-23 | 中兴通讯股份有限公司 | 实现事务日志镜像备份的方法及装置 |
CN105989164B (zh) * | 2015-03-04 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 回滚处理方法及装置 |
CN105989164A (zh) * | 2015-03-04 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 回滚处理方法及装置 |
US11741046B2 (en) | 2015-10-28 | 2023-08-29 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and apparatus for creating system disk snapshot of virtual machine |
CN105335253A (zh) * | 2015-10-28 | 2016-02-17 | 北京百度网讯科技有限公司 | 创建虚拟机系统盘快照的方法和装置 |
CN105335253B (zh) * | 2015-10-28 | 2019-01-15 | 北京百度网讯科技有限公司 | 创建虚拟机系统盘快照的方法和装置 |
CN107168775A (zh) * | 2016-03-07 | 2017-09-15 | 阿里巴巴集团控股有限公司 | 一种悬挂事务自动处理的方法和装置 |
CN107168775B (zh) * | 2016-03-07 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 一种悬挂事务自动处理的方法和装置 |
US10834186B2 (en) | 2016-08-05 | 2020-11-10 | Huawei Technologies Co., Ltd. | Disaster recovery switchover method and system, and node |
WO2018023994A1 (zh) * | 2016-08-05 | 2018-02-08 | 华为技术有限公司 | 一种容灾切换的方法、节点及系统 |
CN108280080A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置以及电子设备 |
CN108280080B (zh) * | 2017-01-06 | 2022-02-22 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置以及电子设备 |
CN109324926A (zh) * | 2018-08-30 | 2019-02-12 | 黄疆 | 一种基于rollback的垃圾数据处理系统及方法 |
CN109684048A (zh) * | 2018-11-22 | 2019-04-26 | 华为技术有限公司 | 事务提交系统中处理事务的方法及装置 |
CN111210350A (zh) * | 2020-01-03 | 2020-05-29 | 平安科技(深圳)有限公司 | 区块链的交易方法、装置、计算机设备及存储介质 |
CN112000521A (zh) * | 2020-08-24 | 2020-11-27 | 中国银联股份有限公司 | 分布式数据库系统的全量备份方法、装置及计算机可读存储介质 |
CN112685497A (zh) * | 2020-12-25 | 2021-04-20 | 北京浪潮数据技术有限公司 | 一种mysql数据库集群的数据操作执行方法、装置及设备 |
CN112685497B (zh) * | 2020-12-25 | 2024-02-13 | 北京浪潮数据技术有限公司 | 一种mysql数据库集群的数据操作执行方法、装置及设备 |
CN112948856A (zh) * | 2021-03-03 | 2021-06-11 | 电信科学技术第五研究所有限公司 | 一种防篡改可信的网络协同管控系统及实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103885854A (zh) | 一种数据备份方法、装置及系统 | |
CN107077382B (zh) | 在多租户应用服务器环境中进行事务恢复的系统和方法 | |
CN103782574B (zh) | 用于数据库事务的幂等性 | |
KR102072726B1 (ko) | 데이터베이스로의 미들-티어 트랜잭션 로그들의 인라인 위임을 지원하는 시스템들 및 방법들 | |
US5680610A (en) | Method and apparatus for testing recovery scenarios in global transaction processing systems | |
DE602004005344T2 (de) | Verfahren, system und programm zur handhabung eines failover zu einem fernspeicherort | |
US8140623B2 (en) | Non-blocking commit protocol systems and methods | |
US6434555B1 (en) | Method for transaction recovery in three-tier applications | |
CN111753013B (zh) | 分布式事务处理方法及装置 | |
CN104094228B (zh) | 用于支持基于二阶段提交调用的严格定序的事务恢复的系统和方法 | |
DE602005002532T2 (de) | Cluster-datenbank mit ferndatenspiegelung | |
CN103559245A (zh) | 一种分布式事务提交故障的处理方法、装置和系统 | |
US8504873B1 (en) | Method and apparatus for providing in-memory checkpoint services within a distributed transaction | |
US11917005B2 (en) | Clustered storage system synchronization | |
CN102317913B (zh) | 一种事务恢复方法和事务恢复装置 | |
CN110569149A (zh) | 基于故障探测触发Oracle容灾自动应急切换的方法 | |
CN102521073B (zh) | 在故障恢复期间增加数据库的可用性 | |
CN107368485A (zh) | 一种数据库的管理方法及数据库系统 | |
US7072912B1 (en) | Identifying a common point in time across multiple logs | |
US7698519B2 (en) | Backup of hierarchically structured storage pools | |
AU2291701A (en) | Preserving consistency of passively-replicated non-deterministic objects | |
US20230004465A1 (en) | Distributed database system and data disaster backup drilling method | |
US11809284B2 (en) | System and method of cloning a multi-tiered application | |
CN106055433A (zh) | 一种数据备份方法及装置 | |
CA2679021C (en) | System and method for transactional application lifecycle management for mobile devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140625 |
|
RJ01 | Rejection of invention patent application after publication |