CN109144773A - 数据备份的方法、装置及设备 - Google Patents
数据备份的方法、装置及设备 Download PDFInfo
- Publication number
- CN109144773A CN109144773A CN201710498726.6A CN201710498726A CN109144773A CN 109144773 A CN109144773 A CN 109144773A CN 201710498726 A CN201710498726 A CN 201710498726A CN 109144773 A CN109144773 A CN 109144773A
- Authority
- CN
- China
- Prior art keywords
- data block
- data
- index
- indexes
- block
- 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
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/1448—Management of the data involved in backup or backup restore
- G06F11/1453—Management of the data involved in backup or backup restore using de-duplication of the data
-
- 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
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
技术领域
本申请涉及计算机技术,尤其涉及一种数据备份的方法、装置及设备。
背景技术
通常,数据都存储在设备中。为了达到数据保护或灾难恢复的目的,需要对设备中存储的数据进行备份。
现有技术中,在对一设备(即,源端设备)的数据进行备份时,可以通过将该设备的数据复制到另一设备(即,目标端设备)的方式实现。其中,当源端设备存储了较多的重复数据时,重复数据也需要从源端设备发送到目标端设备。
然而,上述的方案中源端设备将重复数据发送到目标设备,存在占用链路资源较多的问题。
发明内容
本申请实施例提供一种,用以解决现有技术中将重复数据发送到目标设备,存在占用链路资源较多的问题。
第一方面,本申请提供一种数据传输方法,包括:
判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
通过第一方面提供的数据传输方法,判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同,所述第一数据块索引对应的数据块为待复制的数据块,所述二数据块索引对应的数据块为已复制的数据块,若是,则向目标端设备发送用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复的重复信息,实现了对于源端设备的重复数据,源端设备向目标端发送用于指示第一数据块索引对应的待复制的数据块与第二数据块索引对应的已复制的数据块重复的重复信息,避免了源端设备将重复数据发送到目标设备,减少了链路资源的占用。
在一种可能实现的设计中,所述方法还包括:
若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不相同,则将所述第一数据块索引对应的数据块中的数据发送至所述目标端设备。
在一种可能实现的设计中,所述判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同,包括:
根据所述第二数据块索引所指向的指纹索引以及所述第一数据块索引所指向的指纹索引,判断所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据是否相同;
其中,当所述第一数据块索引与所述第二数据块索引所指向的指纹索引相同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;当所述第一数据块索引与所述第二数据块索引所指向的指纹索引不同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不同。
在一种可能实现的设计中,所述重复信息包括:所述第一数据块索引和所述第二数据块索引;或者,所述重复信息包括:所述第一数据块索引对应的数据块的起始逻辑区块地址LBA和所述第二数据块索引对应的数据块的起始LBA。
第二方面,本申请提供一种数据备份的方法,包括:
接收源端设备发送的信息;
若所述信息为重复信息,则确定第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
通过第二方面提供的数据传输方法,接收源端设备发送的信息,若所述信息为用于指示第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据重复的重复信息,则确定所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,并根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,实现了目标端设备根据源端设备发送的重复信息确定第一数据块索引对应的待复制的数据块中的数据与第二数据块索引对应的已复制的数据块中的数据相同,并根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,使得对于源端设备的重复数据,源端设备不需要发送重复数据而是发送用于指示第一数据块索引对应的待复制的数据块与第二数据块索引对应的已复制的数据块重复的重复信息,避免了源端设备将重复数据发送到目标端设备,减少了链路资源的占用,同时也减小了复制时长。
在一种可能实现的设计中,所述方法还包括:
若所述信息为所述第一数据块索引对应的数据块中的数据,则将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
在一种可能实现的设计中,所述根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份包括:
将所述第二数据块索引对应的数据块中的数据复制到所述第一数据块索引对应的存储空间;或者,将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。
通过第二方面提供的数据传输方法,将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引,避免了目标端设备内部的复制,简化了目标端设备的处理。
第三方面,本申请提供一种数据备份的装置,包括:
处理模块,用于判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
发送模块,用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
在一种可能实现的设计中,发送模块,还用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不相同,则将所述第一数据块索引对应的数据块中的数据发送至所述目标端设备。
在一种可能实现的设计中,所述处理模块,具体用于:
根据所述第二数据块索引所指向的指纹索引以及所述第一数据块索引所指向的指纹索引,判断所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据是否相同;
其中,当所述第一数据块索引与所述第二数据块索引所指向的指纹索引相同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;当所述第一数据块索引与所述第二数据块索引所指向的指纹索引不同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不同。
在一种可能实现的设计中,所述重复信息包括:所述第一数据块索引和所述第二数据块索引;或者,所述重复信息包括:所述第一数据块索引对应的数据块的起始逻辑区块地址LBA和所述第二数据块索引对应的数据块的起始LBA。
上述第三方面以及第三方面的各可能的实施方式所提供的数据备份的装置,其有益效果可以参照上述第一方面以及第一方面的各可能的实施方式所带来的有益效果,在此不再赘述。
第四方面,本申请提供一种数据备份的装置,包括:
接收模块,用于接收源端设备发送的信息;
处理模块,用于若所述信息为重复信息,则确定第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
所述处理模块,还用于根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
在一种可能实现的设计中,所述处理模块还用于:
若所述信息为所述第一数据块索引对应的数据块中的数据,则将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
在一种可能实现的设计中,所述处理模块根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,具体包括:
将所述第二数据块索引对应的数据块中的数据复制到所述第一数据块索引对应的存储空间;或者,将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。
上述第四方面以及第四方面的各可能的实施方式所提供的数据备份的装置,其有益效果可以参照上述第二方面以及第二方面的各可能的实施方式所带来的有益效果,在此不再赘述。
第五方面,本申请提供一种源端设备,包括:
处理器,用于判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
发送器,用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
第六方面,本申请提供一种目标端设备,包括:
接收器,用于接收源端设备发送的信息;
处理器,用于若所述信息为重复信息,则确定所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
所述处理器,还用于根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
第七方面,本申请提供一种源端设备,包括用于执行上述第一方面或者第一方面的各种实施方式的方法的至少一个处理元件(或芯片)。
第八方面,本申请提供一种目标端设备,包括用于执行上述第二方面或者第二方面的各种实施方式的方法的至少一个处理元件(或芯片)。
第九方面,本申请提供一种可读存储介质,可读存储介质中存储有执行指令,当源端设备的至少一个处理器执行该执行指令时,源端设备执行上述第一方面或者第一方面的各种实施方式提供的数据备份的方法。
第十方面,本申请提供一种可读存储介质,可读存储介质中存储有执行指令,当目标端设备的至少一个处理器执行该执行指令时,目标端设备执行上述第二方面或者第二方面的各种实施方式提供的数据备份的方法。
第十一方面,本申请提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。源端设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得源端设备实施第一方面或者第一方面的各种实施方式提供的数据备份的方法。
第十二方面,本申请提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。目标端设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得目标端设备实施第二方面或者第二方面的各种实施方式提供的数据备份的方法。
附图说明
图1为本申请一实施例提供的数据备份的方法的流程图;
图2为本申请另一实施例提供的数据备份的方法的流程图;
图3为本申请又一实施例提供的数据备份的方法的流程图;
图4为本申请又一实施例提供的数据备份的方法的示意图;。
图5为本申请一实施例提供的数据备份的装置的结构示意图;
图6为本申请一实施例提供的数据备份的装置的结构示意图;
图7为本申请一实施例提供的源端设备的结构示意图;
图8为本申请一实施例提供的目标端设备的结构示意图。
具体实施方式
本申请应用的背景为:将源端设备的数据备份到目标端设备。其中,源端设备与目标端设备之间通过通信网络连接。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1为本申请一实施例提供的数据备份的方法的流程图。本申请实施例提供的数据备份的方法可以由源端设备来执行。如图1所示,本实施例的方法可以包括:
步骤101、判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同。
本步骤中,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块。可选的,可以采用直接对比数据块索引对应的数据块中的数据的方式确定两个数据块索引分别对应的数据块中的数据是否相同。例如,通过对比第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据来判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同。或者,当源端设备采用指纹索引(FPI,Finger Print Index)的方式进行数据管理时,也可以通过对比数据块索引所指向的指纹索引的方式确定两个数据块索引分别对应的数据块中的数据是否相同。当源端设备采用指纹索引的方式进行数据管理时,每一个数据块索引都指向一个指纹索引,且当两个数据块索引分别对应的数据块中的数据相同时所对应的指纹索引也相同,当两个数据块索引分别对应的数据块中的数据不同时所对应的指纹索引也不相同。具体的,根据所述第二数据块索引所指向的指纹索引以及所述第一数据块索引所指向的指纹索引,判断所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据是否相同;其中,当所述第一数据块索引与所述第二数据块索引所指向的指纹索引相同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;当所述第一数据块索引与所述第二数据块索引所指向的指纹索引不同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不同。
步骤102、若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息。
本步骤中,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。当第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同时,可以认为所述第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据重复。其中,所述重复信息可以为任何能够表示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复的信息。可选的,所述重复信息包括:所述第一数据块索引和所述第二数据块索引;或者,所述第一数据块索引对应的数据块的起始逻辑区块地址(LogicalBlock Address,LBA)和所述第二数据块索引对应的数据块的起始LBA。
步骤103、若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不相同,则将所述第一数据块索引对应的数据块中的数据发送至所述目标端设备。
本实施例中,通过判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同,所述第一数据块索引对应的数据块为待复制的数据块,所述二数据块索引对应的数据块为已复制的数据块,若是,则向目标端设备发送用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复的重复信息,实现了对于源端设备的重复数据,源端设备向目标端发送用于指示第一数据块索引对应的待复制的数据块与第二数据块索引对应的已复制的数据块重复的重复信息,避免了源端设备将重复数据发送到目标设备,减少了链路资源的占用。
图2为本申请另一实施例提供的数据备份的方法的流程图。本申请实施例提供的数据备份的方法可以由目标端设备来执行。如图2所示,本实施例的方法可以包括:
步骤201、接收源端设备发送的信息。
本步骤中,所述信息可能是重复信息或者也可能是第一数据块索引对应的数据块中的数据。其中,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块。
步骤202、若所述信息为重复信息,则确定所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同。
本步骤中,由于重复信息用于指示所述第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据重复,因此当为重复信息时,可以根据重复信息确定所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同。
步骤203、根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
本步骤中,当确定所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同时,根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。具体的,可以将所述第二数据块索引对应的数据块中的数据复制到所述第一数据块索引对应的存储空间;或者,当目标设备采用指纹索引的方式进行数据管理时,可以将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。本步骤中,通过将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引,避免了目标端设备内部的复制,简化了目标端设备的处理。
步骤204、若所述信息为所述第一数据块索引对应的数据块中的数据,则将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
本步骤中,具体的,将源端设备的第一数据块索引对应的数据块写入到目标端设备的第一数据块索引对应的数据块。
本实施例中,通过接收源端设备发送的信息,若所述信息为用于指示第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据重复的重复信息,则确定所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,并根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,实现了目标端设备根据源端设备发送的重复信息确定第一数据块索引对应的待复制的数据块中的数据与第二数据块索引对应的已复制的数据块中的数据相同,并根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,使得对于源端设备的重复数据,源端设备不需要发送重复数据而是发送用于指示第一数据块索引对应的待复制的数据块与第二数据块索引对应的已复制的数据块重复的重复信息,避免了源端设备将重复数据发送到目标端设备,减少了链路资源的占用,同时也减小了复制时长。
图3为本申请又一实施例提供的数据备份的方法的流程图。本申请实施例主要描述了源端设备与目标端设备交互的一种可选的实现方式。如图3所示,本实施例的方法可以包括:
步骤301、源端设备获取第一数据块索引所指向的指纹索引。
其中,所述第一数据块索引对应的数据块为待复制的数据块。
步骤302、所述源端设备根据所述第一数据块索引所指向的指纹索引以及指纹反向索引表,确定所述第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同。
其中,所述指纹反向索引表存储了所述第二数据块索引与所述第二数据块索引所指向的指纹索引的对应关系。其中,所述第二数据块索引对应的数据块为已复制的数据块。当所述第一数据块索引对应的数据块中的与第二数据块索引对应的数据块中的数据相同时,执行步骤303;当所述第一数据块索引对应的数据块中的与第二数据块索引对应的数据块中的数据不相同时,执行步骤306。需要说明的是,所述指纹反向索引表可以在步骤301之前建立,在所有的数据块复制完成之后删除。
例如,如图4所示,其中,数据块索引K1、K4、K6指向指纹索引FPI1,数据块索引K2指向指纹索引FPI2,数据块索引K3、K7指向指纹索引FPI3,数据块索引K5指向指纹索引FPI4。在图4的基础上,假设K1对应的数据块、K2对应的数据块和K3对应的数据块都为已复制的数据块,K4对应的数据块为待复制的数据块,则第一数据块索引为K4,第二数据块为K1、K2和K3,指纹反向索引表可以如下表1所示。
表1
指纹索引 | 数据块索引 |
FPI1 | K1 |
FPI2 | K2 |
FPI3 | K3 |
因此,源端设备根据K4所指向的指纹索引FPI1以及指纹反向索引表中指纹索引FPI1对应的数据块索引为K1,可以确定K4对应的数据块中的与K1对应的数据块中的数据相同。
在图4的基础上,假设K1对应的数据块、K2对应的数据块、K3对应的数据块和K4对应的数据块都为已复制的数据块,K5对应的数据块为待复制的数据块,则第一数据块索引为K5,第二数据块为K1、K2、K3和K4,指纹反向索引表可以如下表2所示。
表2
指纹索引 | 数据块索引 |
FPI1 | K1K4 |
FPI2 | K2 |
FPI3 | K3 |
因此,源端设备根据K5所指向的指纹索引FPI4以及指纹反向索引表中不包括指纹索引FPI4,可以确定K5对应的数据块中的与K1-K4对应的数据块中的数据不相同。
步骤303、所述源端设备向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
需要说明的是,图4中由源端设备到目标端设备的虚线箭头用于表示发送重复信息。
步骤304、所述源端设备在所述指纹反向索引表中增加所述第一数据块索引与所述第二数据块索引所指向的指纹索引的对应关系。
例如,假设第一数据块索引为K4,增加前的指纹反向索引表如表1所示,则增加后的反向指纹索引表如表2所示。
步骤305、所述目标端设备根据所述重复信息确定所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,并将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。
需要说明的是,步骤305执行完之后返回步骤302执行,直到所有的数据块复制完成。
步骤306、所述源端设备将所述第一数据块索引对应的数据块中的数据发送至目标端设备。
需要说明的是,图4中由源端设备到目标端设备的实线箭头用于表示发送数据块中的数据。
步骤307、所述目标端设备将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
需要说明的是,步骤307执行完之后返回步骤302执行,直到所有的数据块复制完成。
本实施例中,通过源端设备在第一数据块索引对应的数据块(即,待复制的数据块)中的数据与第二数据块索引对应的数据块(即,已复制的数据块)中的数据相同时,向目标端设备发送重复信息,目标端设备根据重复信息将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引,避免了源端设备将重复数据发送到目标设备,减少了链路资源的占用。
图5为本申请一实施例提供的数据备份的装置的结构示意图。本实施例提供的装置可以通过软件、硬件或者两者的结合实现成为源端设备的部分或者全部。如图5所示,该装置可以包括:处理模块501,用于判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;发送模块502,用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
可选的,发送模块502,还用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不相同,则将所述第一数据块索引对应的数据块中的数据发送至所述目标端设备。
可选的,处理模块501,具体用于:
根据所述第二数据块索引所指向的指纹索引以及所述第一数据块索引所指向的指纹索引,判断所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据是否相同;
其中,当所述第一数据块索引与所述第二数据块索引所指向的指纹索引相同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;当所述第一数据块索引与所述第二数据块索引所指向的指纹索引不同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不同。
可选的,所述重复信息包括:所述第一数据块索引和所述第二数据块索引;或者,所述重复信息包括:所述第一数据块索引对应的数据块的起始逻辑区块地址LBA和所述第二数据块索引对应的数据块的起始LBA。
本实施例中提供的数据备份的装置,可以用于执行前述图1所示方法实施例、图3所示方法实施例源端设备侧的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。
图6为本申请一实施例提供的数据备份的装置的结构示意图。本实施例提供的装置可以通过软件、硬件或者两者的结合实现成为目标端设备的部分或者全部。如图6所示,该装置可以包括:接收模块601,用于接收源端设备发送的信息;处理模块602,用于若所述信息为重复信息,则确定第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;处理模块602,还用于根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
可选的,处理模块602还用于:
若所述信息为所述第一数据块索引对应的数据块中的数据,则将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
可选的,处理模块602根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,具体包括:
将所述第二数据块索引对应的数据块中的数据复制到所述第一数据块索引对应的存储空间;或者,将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。
本实施例中提供的数据备份的装置,可以用于执行前述图2所示方法实施例、图3所示方法实施例目标端设备侧的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。
图7为本申请一实施例提供的源端设备的结构示意图。如图7所示,该源端设备可以包括:处理器701、存储器702、发送器703和至少一个通信总线704。通信总线704用于实现元件之间的通信连接。存储器702可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,存储器702中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。本实施例中的发送器703可以为相应的具有通信功能和发送信息功能的输入接口,还可以为源端设备上的射频模块或者基带模块。
本实施例中,处理器701,用于判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
发送器703,用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
可选的,发送器703,还用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不相同,则将所述第一数据块索引对应的数据块中的数据发送至所述目标端设备。
可选的,处理器701,具体用于:
根据所述第二数据块索引所指向的指纹索引以及所述第一数据块索引所指向的指纹索引,判断所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据是否相同;
其中,当所述第一数据块索引与所述第二数据块索引所指向的指纹索引相同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;当所述第一数据块索引与所述第二数据块索引所指向的指纹索引不同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不同。
可选的,所述重复信息包括:所述第一数据块索引和所述第二数据块索引;或者,所述重复信息包括:所述第一数据块索引对应的数据块的起始逻辑区块地址LBA和所述第二数据块索引对应的数据块的起始LBA。
本实施例中提供的源端设备,可以用于执行前述图1所示方法实施例、图3所示方法实施例源端设备侧的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。
图8为本申请一实施例提供的目标端设备的结构示意图。如图8所示,该目标端设备可以包括:处理器801、存储器802、接收器803和至少一个通信总线804。通信总线804用于实现元件之间的通信连接。存储器802可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,存储器802中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。本实施例中的接收器803可以为相应的具有通信功能和接收信息功能的输入接口,还可以为目标端设备上的射频模块或者基带模块。
本实施例中,接收器803,用于接收源端设备发送的信息;
处理器801,用于若所述信息为重复信息,则确定第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
处理器801,还用于根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
可选的,处理器801,还用于若所述信息为所述第一数据块索引对应的数据块中的数据,则将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
可选的,处理器801根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,具体包括:
将所述第二数据块索引对应的数据块中的数据复制到所述第一数据块索引对应的存储空间;或者,将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。
本实施例中提供的目标端设备,可以用于执行前述图2所示方法实施例、图3所示方法实施例目标端设备侧的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。
本申请还提供一种可读存储介质,可读存储介质中存储有指令,当源端设备的至少一个处理器执行该指令时,源端设备执行上述图1所示方法实施例提供的数据备份的方法或图3所示方法实施例提供的源端设备侧的数据备份的方法。
本申请还提供一种可读存储介质,可读存储介质中存储有指令,当目标端设备的至少一个处理器执行该指令时,目标端设备执行上述图2所示方法实施例提供的数据备份的方法或图3所示方法实施例提供的目标端设备侧的数据备份的方法。
本申请还提供一种程序产品,该程序产品包括指令,该指令存储在可读存储介质中。源端设备的至少一个处理器可以从可读存储介质读取该指令,并执行该指令使得源端设备实施上述图1所示方法实施例提供的数据备份的方法或图3所示方法实施例提供的源端设备侧的数据备份的方法。
本申请还提供一种程序产品,该程序产品包括指令,该指令存储在可读存储介质中。目标端设备的至少一个处理器可以从可读存储介质读取该指令,并执行该指令使得目标端设备实施上述图2所示方法实施例提供的数据备份的方法或图3所示方法实施例提供的目标端设备侧的数据备份的方法。
在源端设备或者目标端设备的具体实现中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:ApplicationSpecific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppydisk)、光盘(英文:optical disc)及其任意组合。
Claims (16)
1.一种数据备份的方法,其特征在于,包括:
判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不相同,则将所述第一数据块索引对应的数据块中的数据发送至所述目标端设备。
3.根据权利要求2所述的方法,其特征在于,所述判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同,包括:
根据所述第二数据块索引所指向的指纹索引以及所述第一数据块索引所指向的指纹索引,判断所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据是否相同;
其中,当所述第一数据块索引与所述第二数据块索引所指向的指纹索引相同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;当所述第一数据块索引与所述第二数据块索引所指向的指纹索引不同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不同。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述重复信息包括:所述第一数据块索引和所述第二数据块索引;或者,所述重复信息包括:所述第一数据块索引对应的数据块的起始逻辑区块地址LBA和所述第二数据块索引对应的数据块的起始LBA。
5.一种数据备份的方法,其特征在于,包括:
接收源端设备发送的信息;
若所述信息为重复信息,则确定第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若所述信息为所述第一数据块索引对应的数据块中的数据,则将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
7.根据权利要求5或6所述的方法,其特征在于,所述根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份包括:
将所述第二数据块索引对应的数据块中的数据复制到所述第一数据块索引对应的存储空间;
或者,
将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。
8.一种数据备份的装置,其特征在于,包括:
处理模块,用于判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
发送模块,用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
9.根据权利要求8所述的装置,其特征在于,所述发送模块,还用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不相同,则将所述第一数据块索引对应的数据块中的数据发送至所述目标端设备。
10.根据权利要求9所述的装置,其特征在于,所述处理模块,具体用于:
根据所述第二数据块索引所指向的指纹索引以及所述第一数据块索引所指向的指纹索引,判断所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据是否相同;
其中,当所述第一数据块索引与所述第二数据块索引所指向的指纹索引相同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同;当所述第一数据块索引与所述第二数据块索引所指向的指纹索引不同时,所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据不同。
11.根据权利要求8-10任一项所述的装置,其特征在于,所述重复信息包括:所述第一数据块索引和所述第二数据块索引;或者,所述重复信息包括:所述第一数据块索引对应的数据块的起始逻辑区块地址LBA和所述第二数据块索引对应的数据块的起始LBA。
12.一种数据备份的装置,其特征在于,包括:
接收模块,用于接收源端设备发送的信息;
处理模块,用于若所述信息为重复信息,则确定第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
所述处理模块,还用于根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
13.根据权利要求12所述的装置,其特征在于,所述处理模块还用于:
若所述信息为所述第一数据块索引对应的数据块中的数据,则将所述第一数据块索引对应的数据块中的数据写入所述第一数据块索引对应的存储空间。
14.根据权利要求12或13所述的装置,其特征在于,所述处理模块根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份,具体包括:
将所述第二数据块索引对应的数据块中的数据复制到所述第一数据块索引对应的存储空间;
或者,
将所述第一数据块索引指向所述第二数据块索引所指向的指纹索引。
15.一种源端设备,其特征在于,包括:
处理器,用于判断第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据是否相同;所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
发送器,用于若所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据相同,则向目标端设备发送重复信息,所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复。
16.一种目标端设备,其特征在于,包括:
接收器,用于接收源端设备发送的信息;
处理器,用于若所述信息为重复信息,则确定第一数据块索引对应的数据块中的数据与第二数据块索引对应的数据块中的数据相同;所述重复信息用于指示所述第一数据块索引对应的数据块中的数据与所述第二数据块索引对应的数据块中的数据重复,所述第一数据块索引对应的数据块为待复制的数据块,所述第二数据块索引对应的数据块为已复制的数据块;
所述处理器,还用于根据所述第二数据块索引对所述第一数据块索引对应的数据块进行备份。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710498726.6A CN109144773A (zh) | 2017-06-27 | 2017-06-27 | 数据备份的方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710498726.6A CN109144773A (zh) | 2017-06-27 | 2017-06-27 | 数据备份的方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109144773A true CN109144773A (zh) | 2019-01-04 |
Family
ID=64804900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710498726.6A Pending CN109144773A (zh) | 2017-06-27 | 2017-06-27 | 数据备份的方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109144773A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022267683A1 (zh) * | 2021-06-23 | 2022-12-29 | 华为技术有限公司 | 一种通信方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019887A (zh) * | 2012-12-12 | 2013-04-03 | 华为技术有限公司 | 数据备份方法及装置 |
US20160026566A1 (en) * | 2012-07-26 | 2016-01-28 | International Business Machines Corporation | Logical and physical block addressing for efficiently storing data |
CN105487942A (zh) * | 2015-11-30 | 2016-04-13 | 上海爱数信息技术股份有限公司 | 一种基于重复数据删除的备份与远程复制方法 |
CN105608235A (zh) * | 2016-03-25 | 2016-05-25 | 上海爱数信息技术股份有限公司 | Oracle数据库中备份数据块的重复数据删除方法及系统 |
-
2017
- 2017-06-27 CN CN201710498726.6A patent/CN109144773A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160026566A1 (en) * | 2012-07-26 | 2016-01-28 | International Business Machines Corporation | Logical and physical block addressing for efficiently storing data |
CN103019887A (zh) * | 2012-12-12 | 2013-04-03 | 华为技术有限公司 | 数据备份方法及装置 |
CN105487942A (zh) * | 2015-11-30 | 2016-04-13 | 上海爱数信息技术股份有限公司 | 一种基于重复数据删除的备份与远程复制方法 |
CN105608235A (zh) * | 2016-03-25 | 2016-05-25 | 上海爱数信息技术股份有限公司 | Oracle数据库中备份数据块的重复数据删除方法及系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022267683A1 (zh) * | 2021-06-23 | 2022-12-29 | 华为技术有限公司 | 一种通信方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112948318B (zh) | 一种Linux操作系统下基于RDMA的数据传输方法及装置 | |
CN105426439A (zh) | 一种元数据的处理方法和装置 | |
CN105518641A (zh) | 点对点数据复制方法、设备和系统以及主节点切换方法、设备和系统 | |
CN108681572A (zh) | 区块链的数据存储方法、装置及电子设备 | |
CN102609479B (zh) | 一种内存数据库节点复制方法 | |
CN211376201U (zh) | 一种命令读写装置、存储器 | |
WO2013163864A1 (zh) | 数据持久化处理方法、装置及数据库系统 | |
CN103310334A (zh) | 一种业务处理的方法及装置 | |
CN109522316A (zh) | 日志处理方法、装置、设备和存储介质 | |
CN108924008A (zh) | 一种双控制器数据通信方法、装置、设备及可读存储介质 | |
CN109753478B (zh) | 一种基于fpga的并行数据处理方法、装置 | |
CN108334419A (zh) | 一种数据恢复的方法和装置 | |
WO2017147794A1 (zh) | 差异数据备份的方法和设备 | |
CN108415758B (zh) | 分布式事务协调方法及装置 | |
CN106250322B (zh) | 一种写数据的方法和装置 | |
CN104281505B (zh) | 数据备份方法、装置和电子设备 | |
CN109144773A (zh) | 数据备份的方法、装置及设备 | |
CN110502464A (zh) | 一种热拔插处理方法、装置、设备、系统及可读存储介质 | |
CN107741965B (zh) | 数据库同步处理方法、装置、计算设备及计算机存储介质 | |
CN106648984A (zh) | 数据备份方法及装置 | |
CN110532069A (zh) | 一种分布式事务提交方法及装置 | |
CN111444129B (zh) | Mdb数据传输的方法及终端设备 | |
CN108984124A (zh) | 减少写放大的方法、装置、计算机设备及存储介质 | |
CN107741887A (zh) | 一种组件间的通信交互方法和装置 | |
CN106230908A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190104 |