一种数据备份方法及相关装置的制作方法

文档序号:6385068阅读:179来源:国知局
专利名称:一种数据备份方法及相关装置的制作方法
技术领域
本发明涉及数据处理领域,尤其涉及一种数据备份方法及相关装置。
背景技术
随着信息技术的高速发展,企业数据量急剧增长,数据重要性大幅提升,为了防止由于操作失误或系统故障等导致数据丢失,数据往往通过备份软件从应用主机备份到备份存储介质保存,并在应用主机异常后从备份存储介质进行恢复。传统备份中常用的三种备份方式是全量备份、累积增量备份和差异增量备份。其中,全量备份时备份整个数据集,累积增量备份时备份自前一次全量备份以来发生变化的数据,差异增量备份时备份自前一次备份以来发生变化的数据。可见,从备份时间和备份存储空间的消耗上来看,全量备份最大,累积增量备份次之,差异增量备份最小。对于备份软件来讲,其恢复功能所支持的恢复点目标(RPO,RecoveryPointObject)和恢复时间目标(RTO, Recovery Time Object)是两个重要指标。备份软件在进行恢复时,RPO用于表示系统可以恢复到正常状态的时间点,RTO则表示系统恢复到正常状态所需要的时间。RPO越小(即越接近最近一次的备份)则系统丢失的数据越少,RTO越小则系统恢复到正常状态所需的时间越少。因此,较近时间点的快速恢复能有效降低企业因系统异常而带来的经济损失。全量备份时备份整个数据集以生成全量备份集,其优点是在恢复时可直接从全量备份集恢复数据,因此全量备份能够对数据提供最好的保护,其缺点则是备份消耗的时间较长,所需的存储空间较大。相反,差异增量备份时只备份相对于前一时刻变化的数据以生成差异增量备份集,其优点是消耗的时间较短,所需的存储空间较小,缺点则是恢复时不能直接从差异增量备份集恢复,而需要依赖于之前的备份。因此一种常见的做法是结合全量备份和差异增量备份对数据进行保护,具体做法是周期性地对数据进行备份,一般地,一个备份周期由一次全量备份加后续若干次差异增量备份组成。现有技术一请参阅图1,图中T0-T5为一个备份周期,TO时刻执行全量备份,T1、T2、T3、T4和Τ5时刻执行差异增量备份,实线框中的数据为备份集中保存的数据。图中备份步骤可描述为1、TO时刻执行全量备份,备份整个数据集;2,Tl时刻执行差异增量备份,备份Tl时刻相对于TO时刻发生变化的数据变化后的值(此例中为Al和BI),该步一般由两个子步骤步完成,即先从备份客户端获取此时刻相对于前一备份时刻变化数据块的信息(如位图信息),从而计算出此次备份相对于前一次备份时刻改变的数据块;再从备份源拷贝改变数据块改变后的数据,生成备份集。3、Τ2-Τ5时刻执行差异增量备份,备份Ti时刻(i = 2,3,4,5)相对于T(i_l)时刻变化后的数据,处理步骤与Tl时刻备份类似。在现有技术一中,恢复到越近时间点越慢。以T5时刻备份完成后系统崩溃为例,若要恢复到T5时刻则需要对TO至T5共6个备份集数据进行合成才能实现恢复,若要恢复到T4时刻则需要对TO至T4时刻共5个备份集数据进行合成。恢复到较近时间点的效率较低;考虑到RPO的要求,一般能恢复到越近的时间点越好,因此,现有技术一恢复到较近时间点效率很低。现有技术二考虑到现有技术一恢复到较近时间点效率低的问题,另一种做法是在全量备份和累积增量备份的基础上,将累积增量备份纳入备份周期中,从而在一定程度上提高恢复到较近时间点的恢复效率。请参阅图2,图中TO — T5为一个备份周期,TO时刻执行全量备份,Tl、T2、T4和T5时刻执行差异增量备份,T3时刻执行累积增量备份。实线框中的数据为备份集中保存的数据。图中备份步骤可描述为1、TO时刻执行全量备份,备份整个数据集;2,Tl时刻执行差异增量备份·,备份Tl时刻相对于TO时刻发生变化的数据变化后的值(此例中为Al和BI),处理步骤与现有技术一中所述Tl时刻备份类似;3、T2时刻执行差异增量备份,备份Τ2时刻相对于Tl时刻发生变化的数据变化后的值(此例中为Β2、C2和Ε2),处理步骤与现有技术一中所述Tl时刻备份类似;4、Τ3时刻执行累积增量备份,备份Τ3时刻相对于TO时刻发生变化的数据变化后的值(此例中为Al、Β2、C2、Ε2、G3和Η3),累积增量备份可以通过合成Tl、Τ2时刻的备份数据实现;5、Τ4时刻执行差异增量备份,备份Τ4时刻相对于Τ3时刻发生变化的数据变化后的值(此例中为C4和D4),处理步骤与现有技术一中所述Tl时刻备份类似;6、Τ5时刻执行差异增量备份,备份Τ5时刻相对于Τ4时刻发生变化的数据变化后的值(此例中为Α5和Β5),处理步骤与现有技术一中所述Tl时刻备份类似。现有技术二相比于现有技术一,在恢复到较近时间点的效率上有一定改善,但仍不能从根本上解决问题,且需要更多的备份存储空间。仍以Τ5时刻备份完成后系统崩溃为例,若要恢复到Τ5时刻则需要对Τ0、Τ3、Τ4和Τ5共4个备份集进行合成,若要恢复到Τ4时刻则需要对TO、T3和T4时刻共3个备份集数据进行合成。同时,由于T3时刻执行累积备份,因此相比于现有技术一,该方案需要更多的存储空间。

发明内容
本发明实施例提供了一种数据备份方法及相关装置,用于提高数据恢复至较近时间点的效率。本发明第一方面提供的数据备份方法,包括获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块;在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份;将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。在第一方面的第一种可能的实现方式中,所述获取变化数据块的信息之后,包括将第二备份集指向所述变化数据块对应的变换前数据,所述第二备份集为前一次备份对应的备份集。结合在第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述获取变化数据块的信息之前,包括判断前一次备份是否为差异增量备份或首次备份,若是,则在执行完所述获取变化数据块的信息的步骤之后,执行将第二备份集指向所述变化数据块对应的变换前数据的步骤;若否,则在执行完所述获取变化数据块的信息的步骤之后,直接执行将第一备份集指向所述全量映像的步骤。在第一方面的第三种可能的实现方式中,所述获取变化数据块的信息之前,包括判断本次备份是否为差异增量备份,若是,则执行所述获取变化数据块的信息的步骤;若否,则对数据进行全量备份,并将当前备份的备份集指向所述全量映像。结合在第一方面的第三种可能的实现方式,在第四种可能的实现方式中,,所述对数据进行全量备份,包括获取变化数据块的信息;在备份服务器中存储所述变化数据块对应的数据,将所述全量映像指向更新后的所有数据块;从全量映像指向的地址中拷贝所有数据块的信息。本发明第二方面提供的数据恢复方法,包括获取最近一次备份的备份集,所述备份集指向所述全量映像,所述全量映像指向更新后的所有数据块;将备份服务器中所述各个数据块的数据恢复至待备份客户端。在第二方面的第一种可能的实现方式中,所述获取最近一次备份的备份集之前,包括判断是否需要恢复至所述最近一次备份,若是,则执行所述获取最近一次备份的备份集的步骤;若否,则获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息;将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端。本发明第三方面提供的数据备份装置,包括获取单元,用于获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块;更新单元,用于在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份;第一指向单元,用于将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。在第三方面的第一种可能的实现方式中,所述装置还包括第二指向单元,用于将第二备份集指向所述变化数据块对应的变换前数据,所述第二备份集为前一次备份对应的备份集。本发明第四方面提供的数据恢复装置,包括备份获取单元,用于获取最近一次备份的备份集,所述备份集指向所述全量映像,所述全量映像指向更新后的所有数据块;备份恢复单元,用于将备份服务器中所述各个数据块的数据恢复至待备份客户端。在第四方面的第一种可能的实现方式中,所述装置还包括判断单元,用于在获取最近一次备份的备份集之前,判断是否需要恢复至所述最近一次备份,若是,则执行所述备份获取单元;若否,则执行前次恢复单元;所述前次恢复单元用于获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息;将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端。从以上技术方案可以看出,本发明实施例具有以下优点在本发明实施例中,在首次备份时执行全量备份时,生成全量映像;在后进行累积增量备份时,在备份服务器存储了变化数据块对应的数据之后,该全量映像会指向更新后的所有数据块,且当前备份对应的备份集会指向该全量映像,使得最新的备份集始终指向更新后的所有数据块,当需要对最近时间点的数据进行恢复时,可直接通过最新的备份集找到目标数据进行恢复;相对于现有技术一,备份服务器所存储的数据量相差不多,但节省了对各个备份集进行合成的时间;对于现有技术二,节省了进行累积增量备份所占用的数据量,并且在恢复最近时间点的效率上也比较高。


图1是现有技术一数据备份方法的一个示意图;图2是现有技术二数据备份方法的一个示意图;图3是本发明实施例数据备份方法的一个流程示意图;图4是本发明实施例数据备份方法的另一个流程示意图;图5是本发明实施例数据备份方法的另一个流程示意图;图6是本发明实施例数据备份方法的另一个示意图;图7是本发明实施例数据备份方法的另一个示意图;图8是本发明实施例数据恢复方法的另一个流程示意图;图9是本发明实施例数据备份装置的逻辑结构示意图;图10是本发明实施例数据恢复装置的逻辑结构示意图;图11是本发明实施例计算机设备的一结构示意图。
具体实施例方式
本发明实施例提供了 一种数据备份方法及相关装置,用于提高数据恢复至较近时间点的效率。请参阅图3,本发明实施例中数据备份方法的一个实施例包括301、对数据进行全量备份,并生成全量映像;在对数据进行首次备份时,数据备份装置需要对数据进行全量备份,将待备份客户端的数据拷贝至备份服务器(即备份服务器存储待备份客户端的数据),并生成所述数据的各个数据块对应的全量映像,所述全量映像用于指向存储所述数据的各个数据块。所述数据块为待备份客户端的实际备份数据;
所述全量映像可以为一个指针集,指针集内指针的内容为数据块的存储位置信
肩、O可选的,在完成了全量备份之后,可以将所述全量备份对应的备份集指向所述全
量映像。所述备份集为本次备份所产生的数据信息的集合,备份集内记录有数据块存储在备份服务器的存储位置信息,所述备份集指向所述全量映像的操作,即将全量映像中各个数据块在备份服务器的存储位置信息更新到备份集中。具体的,上述数据备份装置的“指向”操作可以通过指针实现。302、获取变化数据块的信息;数据备份装置获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块。在首次进行了全量备份之后,数据备份装置可以根据在后时间点的数据集域与上一次备份时的差异,进行差异增量备份。303、首次备份生成的全量映像指向更新后的所有数据块;在确定了变化数据块之后,数据备份装置在备份服务器中存储所述变化数据块对应的数据,完成当前的数据更新之后,首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份。在本发明实施例中,全量映像始终指向数据更新之后当前的所有数据块,即全量映像中指针的内容总是最新的各个数据块的存储位置信息。304、将第一备份集指向所述全量映像。数据备份装置将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集;在本步骤304中,当前备份为步骤302至304所述执行的差异增量备份。在本发明实施例中,在首次备份时执行全量备份时,生成全量映像;在后进行差异增量备份时,在备份服务器存储了变化数据块对应的数据之后,该全量映像会指向更新后的所有数据块,且当前备份对应的备份集会指向该全量映像,使得最新的备份集始终指向当前的所有数据块,当需要对最近时间点的数据进行恢复时,可直接通过最新的备份集找到目标数据进行恢复;相对于现有技术一,备份服务器所存储的数据量相差不多,但节省了对各个备份集进行合成的时间;对于现有技术二,节省了进行累积增量备份所占用的数据量,并且在恢复最近时间点的效率上也比较高。请再参与图1和2,在现有技术一中,当进行了多次差异增量备份之后,累积了多个备份集,而在实际应用中,用户至倾向于恢复一个或两个时间点的备份,但是,由于差异增量备份需要依赖前面多个备份集所备份的数据,因此,即使满足过期时间要求的备份集仍不能随意清除,影响备份空间的使用。如,现有技术一中,T5时刻的恢复需要依赖于T0-T5时刻的备份集,同样,T4时刻的恢复需要依赖于T0-T4时刻的备份集,以此类推,备份集存在后向依赖关系,即较新时刻数据的恢复依赖于较老时刻的备份集。因此,在对备份集进行过期管理时,较老时刻的备份集即使满足过期时间要求,考虑到较新时刻恢复对其的依赖,仍不能对其删除,而需要等到所有依赖于它的备份集均过期后才能进行删除。现有技术二虽然进行了累积增量备份,不依赖累积增量备份之前的差异增量备份集,但对于之前的全量备份集依然有依赖,因此,累积增量备份之后较老时刻的备份集,也存在不能及时删除的问题。本发明实施例提供了解决上述问题的方案,具体请参阅图4,本发明实施例中数据备份方法的另一个实施例包括401、对数据进行全量备份,并生成全量映像;在对数据进行首次备份时,数据备份装置需要对数据进行全量备份,将待备份客户端的数据拷贝至备份服务器(即备份服务器存储待备份客户端的数据),并生成所述数据的各个数据块对应的全量映像,所述全量映像用于指向存储所述数据的各个数据块。所述数据块为待备份客户端的实际备份数据;所述全量映像可以为一个指针集,指针集内指针的内容为数据块的存储位置信
肩、O可选的,在完成了全量备份之后,可以将所述全量备份对应的备份集指向所述全
量映像。所述备份集为本次备份所产生的数据信息的集合,备份集内记录有数据块存储在备份服务器的存储位置信息,所述备份集指向所述全量映像的操作,即将全量映像中各个数据块在备份服务器的存储位置信息更新到备份集中。具体的,上述数据备份装置的“指向”操作可以通过指针实现。402、当完成第一次差异增量备份之后,再次执行差异增量备份时,获取变化数据块的信息;数据备份装置获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块。在首次进行了全量备份之后,数据备份装置可以根据在后时间点的数据域与上一次备份时的差异,进行差异增量备份。403、将第二备份集指向所述变化数据块对应的变换前数据;当完成第一次差异增量备份之后,再次执行差异增量备份时,数据备份装置将第二备份集指向所述变化数据块中对应的变换前数据,所述第二备份集为前一次备份对应的备份集,改变所述第二备份集的指向可以便于数据备份装置对过期的备份集进行删除;在本发明实施例中,本次差异增量备份的前一次备份也为差异增量备份。即当确定了本次备份中发生变化的数据块之后,可以对前一次备份(差异增量备份)对应的备份集进行更新,修改前一次备份集(第二备份集)中指针和备份服务器中所存储数据的对应关系,将前一次备份集中指针的内容修改为变化数据块的存储地址。如图6所不的例子,本发明实施例差异增量备份的可以为图中的T2时刻,BackupSetl为前一次备份Tl的备份集,当确定T2时刻发生变化的数据块为B,C,E后,BackupSetl由在Tl时刻指向A,B改为指向B,C,E ;在后期管理员对备份服务器进行维护时,若Tl的备份集过时的话,可以直接删除Tl的备份集(删除备份集时,备份集所指向的在备份服务器所存储的数据块也会同时删除),因为Tl的备份集指向的数据块已经发生改变,因此无需保留,可以节省备份服务器的存储空间。404、将全量映像指向更新后的所有数据块;在确定了变化数据块之后,数据备份装置在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份。在本发明实施例中,全量映像始终指向更新后的所有数据块,即全量映像中指针的内容总是最新数据块的存储位置信息。405、将第一备份集指向所述全量映像。数据备份装置将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集;在本步骤405中,当前备份为步骤402至405所述执行的差异增量备份。本发明实施例中的备份集不存在前向依赖关系,即任一时刻数据的恢复只依赖于更新时刻的备份集,而不依赖于较老时刻的备份集。因此,对于任一时刻的备份集,若其满足过期时间要求,则可直接删除,无需等待更新时刻的备份集过期。可见,本发明方案中,备份集过期管理十分简单,且能及时释放删除过期备份集所占用的存储空间。为了便于理解,下面以一具体应用场景对上述的实施例中描述的数据备份方法再进行详细描述,请参考图5具体为501、判断本次备份是否为第一次备份;判断本次备份是否为第一次备份;若是,则执行步骤502 ;若否,则执行步骤503。在本发明实施例中,第一次备份需要执行全量备份,以作为在后差异增量备份的基础。502、从待备份客户端拷贝整个数据集,并生成全量映像;在对数据进行首次备份时,数据备份装置需要对数据进行全量备份,将待备份客户端的数据拷贝至备份服务器,并生成所述数据的各个数据块对应的全量映像(NEW),所述全量映像用于指向存储所述数据的各个数据块。所述全量映像可以为一个指针集,指针集内指针的内容为数据块的存储位置信息;数据备份装置的“指向”操作可以通过指针实现。503、判断本次备份是否为差异增量备份;判断本次备份是否为差异增量备份,若是,则执行步骤507 ;若否,则执行步骤504。在实际应用中,在第一次备份(全量备份)之后,可能定期还需要进行全量备份,以保证待备份客户端数据的完整性;而差异增量备份和全量备份的备份集的指针指向又有所不同,因此,需要进行本步骤的判断。504、获取变化数据块的信息;数据备份装置获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块。505、在备份服务器中存储所述变化数据块对应的数据,并将全量映像指向更新后的所有数据块。在确定了变化数据块之后,数据备份装置在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份。在本发明实施例中,全量映像始终指向更新后的所有数据块,即全量映像中指针的内容总是最新数据块的存储位置信息。506、在备份服务器中拷贝全量映像指向的各个数据块;在本发明实施例中,在首次完成全量备份之后,若再要执行全量备份,则可以直接在备份服务器中拷贝当前待备份客户端更新完后的数据,无需再从待备份客户端中重新做完整的拷贝,节省了从待备份客户端到备份服务器进行数据传输的网络资源。具体的,可以请参阅图7,假设在时间点T5之后的时间点T6,需要再进行一次全量备份,则变化数据块G6的信息(如步骤504),在备份服务器中存储所述变化数据块对应的数据,并将全量映像(NEW)指向更新后的所有数据块(如步骤505);最后在备份服务器中拷贝NEW指向的各个数据块(如步骤506),即可再次完成全量备份。507、判断前一次备份是否为差异增量备份或第一次备份;判断前一次备份是否为差异增量备份或第一次备份,若是,则执行步骤510 ;若否,则执行步骤508。若本次备份为全量备份(非第一次备份),则在本次备份的过程中,可以对上一次的备份集进行更新,使其指向已经发生改变的旧数据,便于在后对备份服务器的旧数据进
行清理。508、获取变化数据块的信息;数据备份装置获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块。509、在备份服务器中存储所述变化数据块对应的数据,并将全量映像指向更新后的所有数据块。510、获取变化数据块的信息;数据备份装置获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块。511、将第二备份集指向所述变化数据块对应的变换前数据;数据备份装置将第二备份集指向所述变化数据块对应的变换前数据,所述第二备份集为前一次备份对应的备份集,在本发明实施例中,本次差异增量备份的前一次备份也为差异增量备份。即当确定了本次备份中发生变化的数据块之后,可以对前一次备份(差异增量备份)对应的备份集进行更新,修改前一次备份集(第二备份集)中指针和备份服务器中所存储数据的对应关系,将前一次备份集中指针的内容修改为变化数据块的存储地址。如图6所不的例子,本发明实施例差异增量备份的可以为图中的T2时刻,BackupSetl为前一次备份Tl的备份集,当确定T2时刻发生变化的数据块为B,C,E后,BackupSetl由在Tl时刻指向A,B改为指向B,C,E ;在后期管理员对备份数据库进行维护时,若Tl的备份集过时的话,可以直接删除Tl的备份集(删除备份集时,备份集所指向的在备份服务器所存储的数据库也会同时删除),因为Tl的备份集指向的数据块已经发生改变,因此无需保留,可以节省备份服务器的存储空间。512、在备份服务器中存储所述变化数据块对应的数据,并将全量映像指向更新后的所有数据块;在确定了变化数据块之后,数据备份装置在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份。在本发明实施例中,全量映像始终指向更新后的所有数据块,即全量映像中指针的内容总是最新数据块的存储位置信息。513、将第一备份集指向所述全量映像。数据备份装置将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。上面仅以一些例子对本发明实施例中的应用场景进行了说明,可以理解的是,在实际应用中,还可以有更多的应用场景,具体此处不作限定。上面是从数据备份装置的角度对本发明实施例中的数据备份方法进行了描述,下面从数据恢复装置侧对本发明实施例中的数据恢复方法进行描述,请参阅图8,本发明实施例中的数据恢复方法一实施例包括801、判断是否需要恢复至最近一次备份;可选的,数据恢复装置判断本次数据恢复是否需要恢复至最近一次备份,若否,则执行步骤802 ;若是,则执行步骤804。802、获取待恢复时间点的备份集及其点之后的所有备份集;数据恢复装置获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息。示例性的,请参阅图7,若需要将数据恢复至时间点T4,则对全量映像和T4的备份集进行合成,得到时间点T4的完整数据。803、将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端;804、将备份服务器中最近一次备份的备份集中指向的各个数据块的数据恢复至待备份客户端。在本发明实施例中,数据恢复的时间点越接近当前时间,则数据恢复的效率就越闻。下面对用于执行上述数据备份方法的本发明数据备份装置的实施例进行说明,其逻辑结构请参考图9,本发明实施例中的数据备份装置一个实施例包括获取单元901,用于获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块;更新单元902,用于在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份;第一指向单元903,用于将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。可选的,所述装置还包括第二指向单元904,用于将第二备份集指向所述变化数据块对应的变换前数据,所述第二备份集为前一次备份对应的备份集。具体的,本发明实施例中,各个单元的具体操作过程包括在对数据进行首次备份时,数据备份装置需要对数据进行全量备份,将待备份客户端的数据拷贝至备份服务器(即备份服务器存储待备份客户端的数据),并生成所述数据的各个数据块对应的全量映像,所述全量映像用于指向存储所述数据的各个数据块。
所述全量映像可以为一个指针集,指针集内指针的内容为数据块的存储位置信息。可选的,在完成了全量备份之后,可以将所述全量备份对应的备份集指向所述全量映像。所述备份集为本次备份所产生的数据信息的集合,备份集内记录有数据块存储在备份服务器的存储位置信息,所述备份集指向所述全量映像的操作,即将全量映像中各个数据块在备份服务器的存储位置信息更新到备份集中。在进行差异增量备份时,获取单元901获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块。在确定了变化数据块之后,更新单元902在备份服务器中存储所述变化数据块对应的数据,完成当前的数据更新之后,首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份。可选的,当完成第一次差异增量备份之后,再次执行差异增量备份时,第二指向单元904将第二备份集指向所述变化数据块中对应的变换前数据,所述第二备份集为前一次备份对应的备份集,改变所述第二备份集的指向可以便于数据备份装置对过期的备份集进行删除;在本发明实施例中,本次差异增量备份的前一次备份也为差异增量备份。即当确定了本次备份中发生变化的数据块之后,可以对前一次备份(差异增量备份)对应的备份集进行更新,修改前一次备份集(第二备份集)中指针和备份服务器中所存储数据的对应关系,将前一次备份集中指针的内容修改为变化数据块的存储地址。如图6所不的例子,本发明实施例差异增量备份的可以为图中的T2时刻,BackupSetl为前一次备份Tl的备份集,当确定T2时刻发生变化的数据块为B,C,E后,BackupSetl由在Tl时刻指向A,B改为指向B,C,E ;在后期管理员对备份服务器进行维护时,若Tl的备份集过时的话,可以直接删除Tl的备份集(删除备份集时,备份集所指向的在备份服务器所存储的数据块也会同时删除),因为Tl的备份集指向的数据块已经发生改变,因此无需保留,可以节省备份服务器的存储空间。在确定了变化数据块之后,第一指向单元903将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。本发明实施例中的备份集不存在前向依赖关系,即任一时刻数据的恢复只依赖于更新时刻的备份集,而不依赖于较老时刻的备份集。因此,对于任一时刻的备份集,若其满足过期时间要求,则可直接删除,无需等待更新时刻的备份集过期。可见,本发明方案中,备份集过期管理十分简单,且能及时释放删除过期备份集所占用的存储空间。在本发明实施例中,全量映像始终指向数据更新之后当前的所有数据块,即全量映像中指针的内容总是最新的各个数据块的存储位置信息。下面对用于执行上述数据恢复方法的本发明数据恢复装置的实施例进行说明,其逻辑结构请参考图10,本发明实施例中的数据恢复装置一个实施例包括备份获取单元1001,用于获取最近一次备份的备份集,所述备份集指向所述全量映像,所述全量映像指向更新后的所有数据块;备份恢复单元1002,用于将备份服务器中所述各个数据块的数据恢复至待备份客户端。可选的,所述装置还包括判断单元1003,用于在获取最近一次备份的备份集之前,判断是否需要恢复至所述最近一次备份,若是,则执行所述备份获取单元;若否,则执行前次恢复单元1004 ;所述前次恢复单元用于获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息;将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端。具体的,本发明实施例中,各个单元的具体操作过程包括可选的,判断单元1003判断本次数据恢复是否需要恢复至最近一次备份;若否,则执行前次恢复单元1004 ;获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息。将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端;示例性的,请参阅图7,若需要将数据恢复至时间点T4,则对全量映像和T4的备份集进行合成,得到时间点T4的完整数据。若是,则执行备份恢复单元1002 ;将备份服务器中最近一次备份的备份集中指向的各个数据块的数据恢复至待备份客户端。在本发明实施例中,数据恢复的时间点越接近当前时间,则数据恢复的效率就越闻。本发明实施例还提供了一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的数据备份方法的部分或全部步骤。请参见图11,本发明实施例还提供了一种数据备份装置,可包括输入装置1101,输出装置1102,存储器1103和处理器1104(数据备份装置中的处理器的数量可以为一个或多个,图11中以一个处理器为例)在本发明的一些实施例中,输入装置1101,输出装置1102,存储器1103和处理器1104可通过总线或其它方式连接,其中,图11中通过总线连接为例。其中,所述处理器1104执行如下步骤在对数据进行首次备份时,需要对数据进行全量备份,将待备份客户端的数据拷贝至备份服务器(即备份服务器存储待备份客户端的数据),并生成所述数据的各个数据块对应的全量映像,所述全量映像用于指向存储所述数据的各个数据块。可选的,在完成了全量备份之后,可以将所述全量备份对应的备份集指向所述全量映像。获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块。在确定了变化数据块之后,数据备份装置在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份。数据备份装置将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集;所述存储器1103存储的信息包括所述数据块为待备份客户端的实际备份数据;所述全量映像可以为一个指针集,指针集内指针的内容为数据块的存储位置信息。所述备份集为本次备份所产生的数据信息的集合,备份集内记录有数据块存储在备份服务器的存储位置信息,所述备份集指向所述全量映像的操作,即将全量映像中各个数据块在备份服务器的存储位置信息更新到备份集中。在本发明实施例中,全量映像始终指向更新后的所有数据块,即全量映像中指针的内容总是最新数据块的存储位置信息。在本发明的另一些实施例中,处理器1104还可以执行如下步骤当完成第一次差异增量备份之后,再次执行差异增量备份时,获取变化数据块的信息;当完成第一次差异增量备份之后,再次执行差异增量备份时,数据备份装置将第二备份集指向所述变化数据块中对应的变换前数据,所述第二备份集为前一次备份对应的备份集,改变所述第二备份集的指向可以便于数据备份装置对过期的备份集进行删除;在本发明实施例中,本次差异增量备份的前一次备份也为差异增量备份。即当确定了本次备份中发生变化的数据块之后,可以对前一次备份(差异增量备份)对应的备份集进行更新,修改前一次备份集(第二备份集)中指针和备份服务器中所存储数据的对应关系,将前一次备份集中指针的内容修改为变化数据块的存储地址。如图6所不的例子,本发明实施例差异增量备份的可以为图中的T2时刻,BackupSetl为前一次备份Tl的备份集,当确定T2时刻发生变化的数据块为B,C,E后,BackupSetl由在Tl时刻指向A,B改为指向B,C,E ;在后期管理员对备份服务器进行维护时,若Tl的备份集过时的话,可以直接删除Tl的备份集(删除备份集时,备份集所指向的在备份服务器所存储的数据块也会同时删除),因为Tl的备份集指向的数据块已经发生改变,因此无需保留,可以节省备份服务器的存储空间。上述各个单元/模块的具体操作过程请参阅方法实施例,此处不再赘述。本发明实施例还提供了另一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的数据恢复方法的部分或全部步骤。请再参见图11,本发明实施例还提供了一种数据恢复装置,可包括输入装置1101,输出装置1102,存储器1103和处理器1104(数据恢复装置中的处理器的数量可以为一个或多个,图11中以一个处理器为例)在本发明的一些实施例中,输入装置1101,输出装置1102,存储器1103和处理器1104可通过总线或其它方式连接,其中,图11中通过总线连接为例。其中,所述处理器1104执行如下步骤判断本次数据恢复是否需要恢复至最近一次备份,若否,则执行获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息。将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端。示例性的,请参阅图7,若需要将数据恢复至时间点T4,则对全量映像和T4的备份集进行合成,得到时间点T4的完整数据。若是,则将备份服务器中最近一次备份的备份集中指向的各个数据块的数据恢复至待备份客户端。在本发明实施例中,数据恢复的时间点越接近当前时间,则数据恢复的效率就越高。在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(R0M,Read-OnlyMemory)、随机存取存储器(RAM, Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
1.一种数据备份方法,其特征在于,包括 获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块;在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份; 将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。
2.根据权利要求1所述的方法,其特征在于,所述获取变化数据块的信息之后,包括 将第二备份集指向所述变化数据块对应的变换前数据,所述第二备份集为前一次备份对应的备份集。
3.根据权利要求2所述的方法,其特征在于,所述获取变化数据块的信息之前,包括 判断前一次备份是否为差异增量备份或首次备份,若是,则在执行完所述获取变化数据块的信息的步骤之后,执行将第二备份集指向所述变化数据块对应的变换前数据的步骤;若否,则在执行完所述获取变化数据块的信息的步骤之后,直接执行将第一备份集指向所述全量映像的步骤。
4.根据权利要求1所述的方法,其特征在于,所述获取变化数据块的信息之前,包括 判断本次备份是否为差异增量备份,若是,则执行所述获取变化数据块的信息的步骤;若否,则对数据进行全量备份,并将当前备份的备份集指向所述全量映像。
5.根据权利要求4所述的方法,其特征在于,所述对数据进行全量备份,包括 获取变化数据块的信息; 在备份服务器中存储所述变化数据块对应的数据,将所述全量映像指向更新后的所有数据块; 从全量映像指向的地址中拷贝所有数据块的信息。
6.一种数据恢复方法,其特征在于,包括 获取最近一次备份的备份集,所述备份集指向全量映像,所述全量映像指向更新后的所有数据块; 将备份服务器中所述各个数据块的数据恢复至待备份客户端。
7.根据权利要求6所述的方法,其特征在于,所述获取最近一次备份的备份集之前,包括 判断是否需要恢复至所述最近一次备份,若是,则执行所述获取最近一次备份的备份集的步骤; 若否,则获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息;将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端。
8.一种数据备份装置,其特征在于,包括 获取单元,用于获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块; 更新单元,用于在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份; 第一指向单元,用于将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括 第二指向单元,用于将第二备份集指向所述变化数据块对应的变换前数据,所述第二备份集为前一次备份对应的备份集。
10.一种数据恢复装置,其特征在于,包括 备份获取单元,用于获取最近一次备份的备份集,所述备份集指向所述全量映像,所述全量映像指向更新后的所有数据块; 备份恢复单元,用于将备份服务器中所述各个数据块的数据恢复至待备份客户端。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括 判断单元,用于在获取最近一次备份的备份集之前,判断是否需要恢复至所述最近一次备份,若是,则执行所述备份获取单元; 若否,则执行前次恢复单元;所述前次恢复单元用于获取待恢复时间点的备份集,及所述待恢复时间点之后的所有备份集;对所述待恢复时间点的备份集和所述待恢复时间点之后的所有备份集进行备份合成,得到所述待恢复时间点的各个数据块的信息;将备份服务器中所述待恢复时间点的各个数据块的数据恢复至待备份客户端。
12.—种计算机存储介质,其特征在于, 所述计算机存储介质可存储有程序,所述程序执行时包括如权利要求1至5任意一项所述的步骤。
13.一种数据恢复装置,其特征在于,包括 输入装置,输出装置,存储器和处理器; 其中,所述处理器执行如下步骤 获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块;在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份;将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。
14.一种计算机存储介质,其特征在于, 所述计算机存储介质可存储有程序,所述程序执行时包括如权利要求6至7任意一项所述的步骤。
15.一种数据恢复装置,其特征在于,包括 输入装置,输出装置,存储器和处理器; 其中,所述处理器执行如下步骤 获取最近一次备份的备份集,所述备份集指向所述全量映像,所述全量映像指向更新后的所有数据块;将备份服务器中所述各个数据块的数据恢复至待备份客户端。
全文摘要
本发明实施例公开了一种数据备份方法及相关装置,用于提高数据恢复至较近时间点的效率。本发明实施例方法包括获取变化数据块的信息,所述变化数据块为相对于前一次备份发生变化的数据块;在备份服务器中存储所述变化数据块对应的数据,并使得首次备份生成的全量映像指向更新后的所有数据块,所述首次备份为全量备份;将第一备份集指向所述全量映像,所述第一备份集为当前备份对应的备份集。
文档编号G06F11/14GK103049353SQ20121056252
公开日2013年4月17日 申请日期2012年12月21日 优先权日2012年12月21日
发明者曾蜀芳, 张磊 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1