一种增量备份方法及设备技术领域
本发明涉及数据安全技术领域,尤其涉及一种增量备份方法及设备。
背景技术
为了保证数据的安全,避免存储阵列发生故障等所导致的数据面临丢失的
风险,需要将本地存储设备中的数据备份至备份存储设备,如远端备份存储设
备中。这样,即使本地发生自然灾害或本地数据存储设备出现故障,在远端的
备份存储设备中也保留有数据备份,可用以恢复本地数据存储。
具体地,目前业界通常采用基于快照的增量备份方式进行数据的备份。即,
每一次备份时,进行快照操作以获取备份时刻源数据的状态,并通过对比快照
的写时复制数据,得出变化的数据块,并将得出的变化数据块作为新增的数据
内容备份至备份端。同时,在备份端也可进行快照操作,并传回本地端与对应
快照进行比较,以确保两端数据一致。
但是,由于这种备份方式在每次备份时,都需进行快照的对比等计算操作,
因而导致资源耗费较大、实用性较低。另外,由于需要利用快照来保存备份时
刻源数据的状态等,因而还需要提供额外的快照存储空间,从而会进一步加大
资源的耗费。再有,由于在非备份过程中,快照也需要一直存在,因而还会对
源数据的业务处理造成较大影响。
综上所述,现有的增量备份方案存在每次备份时,都需要对比快照数据、
建立快照存储空间以及在非备份过程中快照依然存在等导致的资源耗费、实用
性较低以及对源数据影响较大等的问题。
发明内容
本发明实施例提供了一种增量备份方法及设备,用以解决现有的增量备份
方案存在的、每次备份时都需要对比快照数据、建立快照存储空间以及在非备
份过程中快照依然存在等导致的资源耗费、实用性较低以及对源数据影响较大
等的问题。
本发明实施例提供了一种增量备份方法,包括:
在每一非首次备份时刻到来时,根据源数据中的各数据块的数据块时间标
签,确定对应的数据块时间标签与上一备份周期的备份周期标识相一致的各数
据块;
将确定的各数据块备份至备份端;
其中,针对任一备份周期,该备份周期的备份周期标识用于唯一标识该备
份周期;且,针对任一数据块,若该数据块的数据块时间标签与上一备份周期
的备份周期标识相一致,则表明该数据块在上一备份时刻后、本次备份时刻之
前发生过更新。
相应地,本发明实施例还提供了一种增量备份设备,包括确定模块以及处
理模块:
所述确定模块,用于在每一非首次备份时刻到来时,根据源数据中的各数
据块的数据块时间标签,确定对应的数据块时间标签与上一备份周期的备份周
期标识相一致的各数据块;其中,针对任一备份周期,该备份周期的备份周期
标识用于唯一标识该备份周期;且,针对任一数据块,若该数据块的数据块时
间标签与上一备份周期的备份周期标识相一致,则表明该数据块在上一备份时
刻后、本次备份时刻之前发生过更新;
所述处理模块,用于将确定的各数据块备份至备份端。
本发明有益效果如下:
本发明实施例提供了一种增量备份方法及设备,在本发明实施例所述的技
术方案中,可根据用于记录源数据中的各数据块在上一备份时刻之后、本次备
份时刻之前的更新状态的数据块时间标签,以及,用于唯一标识各备份周期的
备份周期标识,确定在每一非首次备份时刻到来时,源数据中的数据块时间标
签与上一备份周期的备份周期标识相一致的各数据块,并将确定的各数据块作
为本次需要备份的数据块备份至备份端,从而解决了现有的增量备份方案存在
的、每次备份时都需要对比快照数据、建立快照存储空间以及在非备份过程中
快照依然存在等导致的资源耗费、实用性较低以及对源数据影响较大等的问
题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所
需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的
一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,
还可以根据这些附图获得其他的附图。
图1所示为本发明实施例一中的增量备份方法的流程示意图;
图2所示为本发明实施例一中的备份周期示意图;
图3所示为本发明实施例一中的在源数据的备份过程中存在针对数据块的
读写请求的实现流程图;
图4所示为本发明实施例一中的在源数据的非备份过程中存在针对数据块
的读写请求的实现流程图;
图5所示为本发明实施例二中的增量备份设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发
明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,
而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做
出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一:
为了解决现有的增量备份方案存在的、每次备份时都需要对比快照数据、
建立快照存储空间以及在非备份过程中快照依然存在等导致的资源耗费、实用
性较低以及对源数据影响较大等的问题,本发明实施例一提供了一种增量备份
方法,具体地,如图1所示,其为本发明实施例一中所述的增量备份方法的流
程示意图,由图1可知,所述增量备份方法可包括以下步骤:
步骤101:在每一非首次备份时刻到来时,根据源数据中的各数据块的数
据块时间标签,确定对应的数据块时间标签与上一备份周期的备份周期标识相
一致的各数据块;其中,针对任一备份周期,该备份周期的备份周期标识用于
唯一标识该备份周期;且,针对任一数据块,若该数据块的数据块时间标签与
上一备份周期的备份周期标识相一致,则表明该数据块在上一备份时刻后、本
次备份时刻之前发生过更新。
也就是说,针对任一备份周期,该备份周期的备份周期标识可用于明确在
该备份周期存在更新的数据块的数据块时间标签所需更新至的数值。
其中,每一备份周期是指相邻的两个备份时刻所限定的时间段,即,针对
任一备份周期,该备份周期指的是该备份周期的起始备份时刻之后、下一备份
时刻(即该备份周期的终止备份时刻)之前的这一时间段(且,通常可包含相
应的起始备份时刻在内、而不包含终止备份时刻)。例如,如图2所示,第一
备份周期,可指的是T0~T1之间的时间段;第二备份周期,可指的是T1~T2
之间的时间段等,此处不再赘述。
步骤102:将确定的各数据块备份至备份端。
也就是说,在本发明实施例所述方案中,在进行数据的增量备份时,无需
采用快照存储技术,更无需进行快照的对比、计算等,可根据用于记录源数据
中的各数据块在上一备份时刻之后、本次备份时刻之前的更新状态的数据块时
间标签(即数据块的时间戳),以及,用于唯一标识各备份周期的备份周期标
识来得出每一非首次备份时刻需要备份至备份端的增量数据,从而减少了计算
资源的损耗,且,本地存储设备和备份存储设备均不需要额外的快照存储空间,
使得进一步节省了设备的存储空间,以及,由于本方案中不存在快照,使得在
非备份过程中源数据业务并不会受到任何影响,有效地提高了增量备份的实用
性。
下面,将对本发明实施例中的各步骤进行具体说明。
需要说明的是,在执行步骤101之前(具体可以是在首次备份之前或同时),
可首先根据设定的数据块划分规则,将源数据划分为N个数据块(所述N通
常可为不小于2的正整数),以便后续可按顺序对各数据块进行相应更新或备
份。
也就是说,当任一备份时刻到来时,可按照顺序处理的方式,依次处理源
数据中的各个数据块。当然,除了可按顺序对各数据块进行依次处理之外,也
可采用并行方式对各数据块进行处理,此处不作任何限定。
例如,对于步骤101来说,当任一非首次备份时刻到来时,可顺序查询每
一数据块的数据块时间标签,并判断各数据块的数据块时间标签是否与上一备
份周期的备份周期标识相一致,若是,则说明对应的数据块在上一备份时刻后、
本次备份时刻之前发生过更新,本次需要将该数据块备份至备份端;若否,则
说明对应的数据块在上一备份时刻后、本次备份时刻之前没有发生过更新,本
次不需要将该数据块备份至备份端。
相应地,当任一非首次备份时刻到来时,针对任一数据块,在确定该数据
块在上一备份时刻后、本次备份时刻之前发生过更新时,可直接将该数据块备
份至备份端,也可在确定出所有的对应的数据块时间标签与上一备份周期的备
份周期标识相一致的数据块之后,再一并将确定出的各数据块备份至备份端,
此处不再赘述。
其中,需要说明的是,本发明实施例中涉及到的数据块时间标签以及备份
周期标识可为内存标识以及持久化信息等信息。且,具体地,针对任一备份周
期,该备份周期的备份周期标识的具体取值可为该备份周期的起始备份时刻的
备份时刻值(当然,也可设置为其它能够唯一标识该备份周期的任意值),如
首次备份时刻T0与第一备份时刻T1所限定的第一备份周期的备份周期标识的
取值可设置为T0,第一备份时刻T1与第二备份时刻T2所限定的第二备份周
期的备份周期标识的取值可设置为T1等,此处不再赘述。
进一步地,所述方法还可包括:
在首次备份时刻到来时,将源数据中的各数据块备份至备份端;并
在备份完毕后,将各数据块的数据块时间标签设置为设定的时间标签初始
值,以表示各数据块已被备份至备份端。
也就是说,在首次备份时刻(T0)到来时,可先对源数据进行初始化操作,
即,将源数据全部备份至备份端,并在备份完成之后,将所有数据块的数据块
时间标签设置为设定的时间标签初始值(如T-start等)。
进一步地,所述方法还可包括:
在源数据的备份过程中,若确定存在针对数据块的写请求,则比较该写请
求所针对的第一数据块在源数据中的第一处理序号M、与当前正在备份的第二
数据块在源数据中的第二处理序号K的大小,其中,M、K为正整数,且所述
M、K的取值均不大于源数据中的数据块的数目;
根据比较结果以及所述第一数据块的数据块时间标签判断是否能够直接
更新所述第一数据块;
若是,则直接更新所述第一数据块,并设置所述第一数据块的数据块时间
标签与该备份过程对应的备份周期的备份周期标识相一致;
若否,则在所述第一数据块备份完毕之后,更新所述第一数据块,并设置
所述第一数据块的数据块时间标签与该备份过程对应的备份周期的备份周期
标识相一致。
其中,源数据的备份过程是指,每个备份周期内(即相邻的两个备份时刻
所限定的时间段),从起始备份时刻至源数据中的所有数据块均备份完毕的这
一时间段(具体可如图2所示),此处不再赘述。
再有,需要说明的是,相邻的两个备份时刻之间的间隔(即备份周期的时
长)是根据实际情况灵活调整的,如可设置为一小时、一天、一个月等,此处
也不再赘述。
进一步地,需要说明的是,在源数据的备份过程中,若确定存在针对数据
块的读请求,则可直接读取该读请求所针对的数据块,对此也不作赘述。
进一步地,根据比较结果以及所述第一数据块的数据块时间标签判断是否
能够直接更新所述第一数据块,可包括:
若确定M小于K,则确定能够直接更新所述第一数据块;
若确定M等于K,则确定需在所述第一数据块备份完毕之后,更新所述
第一数据块。
也就是说,当确定M小于K时,可直接更新第一数据快,并设置第一数
据块的数据块时间标签与该备份过程对应的备份周期的备份周期标识相一致;
当确定M等于K时,可在第一数据块备份完毕之后,更新第一数据块,并设
置第一数据块的数据块时间标签与该备份过程对应的备份周期的备份周期标
识相一致。
进一步地,根据比较结果以及所述第一数据块的数据块时间标签判断是否
能够直接更新所述第一数据块,还可包括:
若确定M大于K,且确定所述第一数据块的数据块时间标签与所述设定
的时间标签初始值、或上一备份周期之前的任一备份周期的备份周期标识、或
该备份过程对应的备份周期的备份周期标识相一致,则确定能够直接更新所述
第一数据块;或者,
若确定M大于K,且确定所述第一数据块的数据块时间标签与上一备份
周期的备份周期标识相一致,则确定需在所述第一数据块备份完毕之后,更新
所述第一数据块。
也就是说,当确定M大于K时,可根据第一数据块的数据块时间标签的
取值来执行相应的操作,例如,若第一数据块的数据块时间标签的取值为设定
的时间标签初始值、或上一备份周期之前的任一备份周期的备份周期标识、或
该备份过程对应的备份周期的备份周期标识,则可直接更新第一数据快,并设
置第一数据块的数据块时间标签与该备份过程对应的备份周期的备份周期标
识相一致;若第一数据块的数据块时间标签为上一备份周期的备份周期标识,
则可将第一数据块备份至备份端,并在备份完毕之后,更新第一数据块,并设
置第一数据块的数据块时间标签与该备份过程对应的备份周期的备份周期标
识相一致。
由上述内容可知,在源数据的备份过程中,若存在数据块的读写请求,则
可按照图3所示的流程执行相应的读写请求,其中,图3以T2备份时刻与T3
备份时刻所限定的第三备份周期的备份过程(即T2备份时刻对应的备份过程)
为例进行示意说明:
首先,判断所述读写请求是读请求、还是写请求;若仅为读请求,则直接
读取源数据中的对应的数据块即可;
若为写请求,则可先对比该写请求所针对的第一数据块的处理序号M与
当前正在备份的第二数据块的处理序号K的大小;
如果M小于K,则说明在源数据的本次备份过程中,第一数据块已被备
份至备份端,因而,可直接更新源数据中的第一数据块,并将第一数据块的数
据块时间标签设置为与该备份过程对应的备份周期的备份周期标识相一致的
取值,以表示在下一备份时刻,第一数据块需要备份至备份端;
如果M等于K,则说明在源数据的本次备份过程中,第一数据块正在备
份,因而,可在第一数据块备份完毕之后,更新源数据中的第一数据块,并将
第一数据块的数据块时间标签设置为与该备份过程对应的备份周期的备份周
期标识相一致,以表示在下一备份时刻,第一数据块需要备份至备份端;
如果M大于K,且,若第一数据块的数据块时间标签为设定的时间标签
初始值(如T-start等),则说明第一数据块在首次备份完成之后、本次备份开
始之前,没有发生过更新,即,本次无需备份至备份端,因而,可直接更新源
数据中的第一数据块,并将第一数据块的数据块时间标签设置为与该备份过程
对应的备份周期的备份周期标识相一致,以表示在下一备份时刻,第一数据块
需要备份至备份端;或者,
如果M大于K,且,若第一数据块的数据块时间标签为上一备份周期之
前的任一备份周期的备份周期标识(如T0),则说明第一数据块在上一备份时
刻之前的特定备份时刻后发生过更新,并在所述特定备份时刻的下一备份过程
已被备份至备份端,即,本次无需备份至备份端,因而,可直接更新源数据中
的第一数据块,并将第一数据块的数据块时间标签设置为与该备份过程对应的
备份周期的备份周期标识相一致,以表示在下一备份时刻,第一数据块需要备
份至备份端;或者,
如果M大于K,且,若第一数据块的数据块时间标签为上一备份周期的
备份周期标识(如T1),则说明第一数据块在上一备份时刻之后、本次备份时
刻之前发生过更新,因而,可将第一数据块备份至备份端,并且,在备份完毕
之后,更新源数据中的第一数据块并将第一数据块的数据块时间标签设置为与
该备份过程对应的备份周期的备份周期标识相一致,以表示在下一备份时刻,
第一数据块需要备份至备份端;或者,
如果M大于K,且,若第一数据块的数据块时间标签为本次备份过程对
应的备份周期的备份周期标识(如T2),则说明第一数据块在本次备份时刻之
后已经发生过更新,即,第一数据块在本次备份过程中已不是首次更新,因而,
可直接更新源数据中的第一数据块,并保持第一数据块的数据块时间标签与该
备份过程对应的备份周期的备份周期标识相一致,即,不对第一数据块的数据
块时间标签进行更改。
需要说明的是,若写请求针对的数据块为多个,则针对每一数据块,均可
按照图3所示的流程对其进行写入处理,且,对该多个数据块进行的写入处理
操作可串行或并行进行,此处不再赘述。
也就是说,在本发明所述实施例中,在源数据的备份过程中,当存在数据
块的写请求时,可通过查询当前的备份进度,将本次需要备份但尚未备份完毕
的数据直接备份至备份端,并在备份完毕后再更新本地源数据;将已备份完的
数据或本次无需备份的数据直接更新本地源数据,从而摒弃了快照,本地存储
从始至终都不需要有额外的存储空间,从而节省了大量的存储资源。
另外,需要说明的是,在源数据的备份过程中,若确定存在针对数据块的
写请求时,整个源数据的备份操作可不中断,即,对数据块的更新操作以及对
源数据的备份操作可并行运行,从而进一步降低对源数据业务的影响。例如,
当前正在备份的数据块为K数据块,当前存在写请求的数据块为M数据块,
且,当前正在备份的数据块的序列号K大于当前存在写请求的数据块的序列号
M等时,则可同时执行对数据块K的备份以及对数据块M的更新,对此不再
赘述。
进一步地,所述方法还可包括:
在源数据的非备份过程中,若确定存在针对数据块的写请求,则更新该写
请求所针对的数据块,并设置(或保持)该数据块的数据块时间标签与该非备
份过程对应的备份周期的备份周期标识相一致。
其中,源数据的非备份过程是指各备份周期内的、除了备份过程之外的时
间段(具体可如图2中所示),此处不再赘述。
例如,在源数据初始化完毕之后,当有数据写入时,可将写请求针对的数
据块的数据块时间标签由设定的数据块时间标签初始值(如T-start)更改为与
首次备份周期的备份周期标识(如T0)相一致的数值。另外,需要说明的是,
如果在同一备份过程中,出现对该数据块的再次写入,则直接更新该数据块即
可,不需要再次更新该数据块的数据块时间标签(即,可保持该数据块的数据
块时间标签为T0)。
进一步地,在源数据的非备份过程中,若确定存在针对数据块的读请求,
则可直接读取该读请求所针对的数据块,此处不再赘述。
例如,在第二备份时刻T2、第三备份时刻T3所限定的第三备份周期的非
备份过程中,若存在针对源数据中的数据块的读写请求,则可首先判断其为读
请求还是写请求,若为读请求,则直接读取该读请求所针对的数据块即可,若
为写请求,则可直接更新该数据块,并将该数据块的数据块时间标签设置为或
保持为第三备份周期的备份周期标识(如T2等),以使得在下一备份时刻(如
T3等)到来时,将该数据块备份至备份端,具体可参见图4所示的内容。
也就是说,在源数据的非备份过程中,本地源数据可实现正常的读写,若
存在针对源数据中某一数据块的写请求,只需将该数据块的数据块时间标签设
置为与该非备份过程所对应的备份周期的备份周期标识相一致即可,且如果存
在针对该数据块的多次写请求,也仅需在第一次写请求时更新该数据块的数据
块时间标签即可,对此也不作赘述。
下面,将以一具体实例为例,对本发明实施例一中所述的增量备份方法进
行详细说明。
第一步:建立本地端与备份端的数据备份关系。
即,建立本地端的本地存储设备与备份端的备份存储设备之间的连接,以
使得可将本地存储设备中的源数据按照一定的周期备份至备份存储设备中。其
中,在实际使用中,可根据实际的需求来灵活设置备份的周期,即备份间隔。
其中,需要说明的是,本地存储设备中存储的数据可来自于业务服务器等
根据实际需求生成的数据内容,这些数据内容可通过远程备份系统备份至远端
的备份存储设备中。当本地存储设备发生故障、或自然灾害等导致本地数据丢
失时,如果没有远端的备份存储设备,业务数据将会丢失,可能会对企业等产
生不可估量的损失。如果存在远端的备份存储设备,可在本地重新部署后,通
过备份存储设备,将业务数据重新恢复至本地,从而能够保证业务处理的不中
断以及业务数据不丢失。
进一步地,需要说明的是,所述本地存储设备以及备份存储设备均可为磁
盘阵列,或者普通服务器等。另外,本地存储设备和备份存储设备可通过备份
链路连接,且可相互访问存储的数据,其中,备份链路可为专有、且独立的链
路,如IB(Infiniband,无限带宽技术)、FC(FibreChannel,光纤通道)网络
等,也可为公有链路,如IP(InternetProtocol,网络之间互连的协议)网络等。
再有,需要说明的是,本地存储设备与备份存储设备之间的物理空间位置
可根据实际情况灵活设置,即,可以相距很近,也可以相距很远。
第二步,将本地存储设备中的源数据划分为多个数据块。
可选地,可按照固定处理单元将本地源数据划分为多个数据块,以便后续
可按顺序处理这多个数据块。
第三步,数据备份。
首先,在T0时刻(即首次备份时刻),初始化系统,即,将本地源数据全
盘备份至备份端,并在备份完毕之后,将所有数据块的数据块时间标签设置为
T-start。
在T0时刻之后、且T1时刻之前,若存在针对某一数据块的写请求,则设
置该数据块的数据块时间标签为T0,以表示在T1时刻到来时,需要将该数据
块备份至备份端。
在T1时刻,按照顺序处理源数据中的各个数据块,并根据各数据块的数
据块时间标签,判断是否需要将其备份至备份端。如,针对任一数据块,若确
定其数据块时间标签为T0,则将该数据块备份至备份端,若确定其数据块时
间标签为T-start,则说明该数据块在T0时刻之后、T1时刻之前未发生过更新,
因而,不需要备份至备份端。
另外,在T1时刻所对应的备份过程中,即T1时刻、T2时刻所限定的备
份周期(即第二备份周期)的备份过程中,若存在针对某一数据块的写请求,
则判断该写请求所针对的第一数据块在源数据中的处理序号M与当前正在备
份的第二数据块在源数据中的处理序号K的大小:
若确定M小于K,则直接更新第一数据块,并将第一数据块的数据块时
间标签设置为T1;
若确定M等于K,则在第一数据块备份完毕之后,更新第一数据块,并
设置第一数据块的数据块时间标签为T1;
若确定M大于K,则可根据第一数据块的数据块时间标签的取值来执行
相应的操作,若确定第一数据块的数据块时间标签的取值为T-start,则直接更
新第一数据块,并设置第一数据块的数据块时间标签为T1;若确定第一数据
块的数据块时间标签的取值为T0,则将第一数据块备份至备份端,并在备份
完毕之后,设置第一数据块的数据块时间标签为T1;若确定第一数据块的数
据块时间标签的取值为T1,则更新第一数据块,并保持第一数据块的数据块
时间标签为T1。
进一步地,在T1时刻、T2时刻所限定的备份周期(即第二备份周期)的
非备份过程中,若存在针对某一数据块的写请求,则设置该数据块的数据块时
间标签为T1,以表示在T2时刻到来时,需要将该数据块备份至备份端。
之后的每一非首次备份时刻到来时,均可重复执行上述T1时刻到来时的
操作,此处不再赘述。
可选地,需要说明的是,在本实施例中,除了引入了用于记录数据块在上
一备份时刻之后、本次备份时刻之前的更新状态的数据块时间标签以及用于唯
一标识各备份周期的备份周期标识之外,还可引入全局时间标签,以表明每个
备份周期的数据备份过程是否完毕。
其中,需要说明的是,本发明实施例中涉及到的全局时间标签也可为内存
标识以及持久化信息等信息。且,针对任一备份周期,该备份周期对应的全局
时间标签的具体取值也可为该备份周期的起始备份时刻的备份时刻值(当然,
也可为其它能够唯一标识该备份周期的任意值)。
例如,在执行完初始化操作之后,即首次备份过程完毕之后,可根据实际
需求设置首次备份周期对应的全局时间标签的取值为T0等,或者,可在首次
备份时刻T0与第一备份时刻T1所限定的第一备份周期的备份过程结束之后,
将全局时间标签设置为T1等,对此不作限定。
本发明实施例一提供了一种增量备份方法,可根据用于记录源数据中的各
数据块在上一备份时刻之后、本次备份时刻之前的更新状态的数据块时间标
签,以及,用于唯一标识各备份周期的备份周期标识,确定在每一非首次备份
时刻到来时,源数据中的数据块时间标签与上一备份周期的备份周期标识相一
致的各数据块,并将确定的各数据块作为本次需要备份的数据块备份至备份
端,从而解决了现有的增量备份方案存在的、每次备份时都需要对比快照数据、
建立快照存储空间以及在非备份过程中快照依然存在等导致的资源耗费、实用
性较低以及对源数据影响较大等的问题。
实施例二:
基于与本发明实施例一相同的发明构思,本发明实施例二提供了一种增量
备份设备,具体地,如图5所示,其为本发明实施例二中所述的增量备份设备
的结构示意图,由图5可知,所述增量备份设备可包括确定模块51以及处理
模块52:
所述确定模块51,用于在每一非首次备份时刻到来时,根据源数据中的各
数据块的数据块时间标签,确定对应的数据块时间标签与上一备份周期的备份
周期标识相一致的各数据块;其中,针对任一备份周期,该备份周期的备份周
期标识用于唯一标识该备份周期;且,针对任一数据块,若该数据块的数据块
时间标签与上一备份周期的备份周期标识相一致,则表明该数据块在上一备份
时刻后、本次备份时刻之前发生过更新。
所述处理模块52,可用于将确定的各数据块备份至备份端。
也就是说,在本发明实施例所述方案中,在进行数据的增量备份时,无需
采用快照存储技术,更无需进行快照的对比、计算等,可根据用于记录源数据
中的各数据块在上一备份时刻之后、本次备份时刻之前的更新状态的数据块时
间标签(即数据块的时间戳),以及,用于唯一标识各备份周期的备份周期标
识来得出每一非首次备份时刻需要备份至备份端的增量数据,从而减少了计算
资源的损耗,且,本地存储设备和备份存储设备均不需要额外的快照存储空间,
使得进一步节省了设备的存储空间,以及,由于本方案中不存在快照,使得在
非备份过程中源数据业务并不会受到任何影响,有效地提高了增量备份的实用
性。
进一步地,所述处理模块52,还可用于在首次备份时刻到来时,将源数据
中的各数据块备份至备份端;并在备份完毕后,将各数据块的数据块时间标签
设置为设定的时间标签初始值,以表示各数据块已被备份至备份端。
进一步地,所述处理模块52,还用于在源数据的备份过程中,若确定存在
针对数据块的写请求,则比较该写请求所针对的第一数据块在源数据中的第一
处理序号、与当前正在备份的第二数据块在源数据中的第二处理序号的大小;
根据比较结果以及所述第一数据块的数据块时间标签判断是否能够直接
更新所述第一数据块;
若是,则直接更新所述第一数据块,并设置所述第一数据块的数据块时间
标签与该备份过程对应的备份周期的备份周期标识相一致;
若否,则在所述第一数据块备份完毕之后,更新所述第一数据块,并设置
所述第一数据块的数据块时间标签与该备份过程对应的备份周期的备份周期
标识相一致。
其中,源数据的备份过程是指,每个备份周期内(即相邻的两个备份时刻
所限定的时间段),从备份起始时刻至源数据中的所有数据块均备份完毕这一
时间段,此处不再赘述。
再有,在源数据的备份过程中,若确定存在针对数据块的读请求,则可直
接读取该读请求所针对的数据块,对此也不作赘述。
进一步地,所述处理模块52,具体用于若确定第一处理序号小于第二处理
序号,则确定能够直接更新所述第一数据块;若确定第一处理序号等于第二处
理序号,则确定需在所述第一数据块备份完毕之后,更新所述第一数据块。
进一步地,所述处理模块52,具体用于若确定第一处理序号大于第二处理
序号,且确定所述第一数据块的数据块时间标签与所述设定的时间标签初始
值、或上一备份周期之前的任一备份周期的备份周期标识、或该备份过程对应
的备份周期的备份周期标识相一致,则确定能够直接更新所述第一数据块;或
者,若确定第一处理序号大于第二处理序号,且确定所述第一数据块的数据块
时间标签与上一备份周期的备份周期标识相一致,则确定需在所述第一数据块
备份完毕之后,更新所述第一数据块。
进一步地,所述处理模块52,还用于在源数据的非备份过程中,若确定存
在针对数据块的写请求,则更新该写请求所针对的数据块,并设置该数据块的
数据块时间标签与该非备份过程对应的备份周期的备份周期标识相一致。
其中,需要说明的是,本发明实施例中涉及到的数据块时间标签以及备份
周期标识可为内存标识以及持久化信息等信息。且,具体地,针对任一备份周
期,该备份周期的备份周期标识的具体取值可为该该备份周期的起始备份时刻
的备份时刻值(当然,也可设置为其它能够唯一标识该备份周期的任意值),
如首次备份时刻T0与第一备份时刻T1所限定的第一备份周期的备份周期标识
的取值可设置为T0,第一备份时刻T1与第二备份时刻T2所限定的第二备份
周期的备份周期标识的取值可设置为T1等,此处不再赘述。
本领域技术人员应明白,本发明的实施例可提供为方法、装置(设备)、
或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、
或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其
中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储
器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品
的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或
方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的
结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机
或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他
可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或
多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设
备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中
的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个
流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使
得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处
理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个
流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基
本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要
求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及
其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。