WO2016107042A1 - Data incremental backup method and apparatus, and nas device - Google Patents

Data incremental backup method and apparatus, and nas device Download PDF

Info

Publication number
WO2016107042A1
WO2016107042A1 PCT/CN2015/078495 CN2015078495W WO2016107042A1 WO 2016107042 A1 WO2016107042 A1 WO 2016107042A1 CN 2015078495 W CN2015078495 W CN 2015078495W WO 2016107042 A1 WO2016107042 A1 WO 2016107042A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
data block
segment
hash value
determining
Prior art date
Application number
PCT/CN2015/078495
Other languages
French (fr)
Chinese (zh)
Inventor
徐帆
黄茁
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2016107042A1 publication Critical patent/WO2016107042A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation

Definitions

  • the present invention relates to the field of information storage technologies, and in particular, to a data incremental backup method, device, and NAS device.
  • NDMP Network Data Management Protocol
  • NAS Network Attached Storage
  • NDMP divides the control and data flow of backup and recovery operations into separate sessions. This gives you more flexibility in configuring the environment used to protect NAS device data. Because sessions are independent, they can be launched from various locations and directed to different locations for more flexible design of NDMP-based topologies.
  • control flow follows a unified interface defined by the standard protocol, and the data flow can be customized according to the device characteristics of each NAS vendor.
  • device vendors have introduced an incremental backup mechanism.
  • the main incremental backup methods are as follows:
  • Method 1 Record the timestamp of the backup, obtain the timestamp of the most recent backup operation before each backup, compare the modification time of the file to be backed up and the latest backup time. If the file has not been modified, filter the file. Otherwise, the file will be filtered. File attributes and file data blocks are sent to the backup destination device. There are certain risks in this method. For example, the system time may be updated, and this incremental backup method can only send the entire difference file, and cannot send different data blocks.
  • Method 2 Use the file system mirroring method to record the difference data block to the backup destination device by comparing the current file system snapshot with the baseline snapshot difference before each backup. This method relies on the snapshot function of the file system, and the NDMP protocol cannot complete the snapshot management, which will cause a snapshot backlog.
  • the present invention provides a data incremental backup method, which solves at least the problem that the data backup function in the related art cannot perform reliable data incremental backup based on NDMP, and the backup server has a heavy burden.
  • a data incremental backup method includes: segmenting a data block; determining each segment data of the data block stored at the source end and the data block stored by the destination end Whether the segment data corresponds to the consistency; if the determination result is no, one or more segment data of the source end having the difference is sent to the destination end for incremental backup.
  • the method further includes: determining whether the backup attribute information of the data block in the source end and the destination end is the same, where the backup attribute information is used to identify the data block. Backup history information; if the judgment result is no, the data block is segmented for data incremental backup.
  • determining whether the segment data of the data block stored by the source end and the segment data of the data block stored by the destination end are consistently include: calculating the a first hash value corresponding to each segment data of the data block, and a second hash value corresponding to each segment data of the data block stored by the destination end; according to the first hash value and the The second hash value determines whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored by the destination end.
  • determining, according to the first hash value and the second hash value, each segment data of the data block stored by the source end and each segment of the data block stored by the destination end Whether the segment data is consistent or not includes: determining whether the first hash value is the same as the second hash value; if the determination result is yes, determining segment data and destination of the data block stored by the source end The segment data of the data block stored at the end is consistent; and/or, if the determination result is no, determining that the segment data of the data block stored at the source end corresponds to the segment data of the data block stored at the destination end Inconsistent.
  • sending the one or more segment data of the source end that has the difference to the destination end for incremental backup comprises: calculating the first hash value according to the Generate source segmentation a first hash list corresponding to the data, and a second hash list corresponding to each segment data of the destination end according to the calculated second hash value; one or more segment data of the source end where there is a difference
  • the storage is sent to the destination end in the first hash table for incremental backup.
  • a data incremental backup apparatus includes: a data segmentation module configured to segment a data block; and a first determining module configured to determine the source storage Whether each segment data of the data block is consistent with each segment data of the data block stored at the destination end; and the sending module is configured to have a difference if the determination result of the determining module is negative.
  • One or more segment data of the source end is sent to the destination end for incremental backup.
  • the method further includes: determining, by the second determining module, whether the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify a backup of the data block
  • the data segmentation module is further configured to segment the data block for data incremental backup if the determination result of the second determining module is negative.
  • the first determining module includes: a first acquiring unit, configured to acquire a first hash value corresponding to each segment data of the data block stored by the source end; and the a second hash value corresponding to each segment data of the data block; the determining unit is configured to determine, according to the first hash value and the second hash value, each segment of the data block stored by the source end Whether the segment data is consistent with each segment data of the data block stored at the destination end.
  • the determining unit includes: a determining subunit, configured to determine whether the first hash value and the second hash value are the same; the first determining subunit is set as a determining result in the determining subunit In the case of YES, it is determined that the segment data of the data block stored at the source end is consistent with the segment data of the data block stored at the destination end; and/or the second determining subunit is set to be in the determining If the judgment result of the unit is no, it is determined that the segment data of the data block stored at the source end is inconsistent with the segment data of the data block stored at the destination end.
  • the sending module includes: a second acquiring unit, configured to acquire a first hash list corresponding to each segment data of the source end according to the first hash value, and generate a destination according to the second hash value a second hash list corresponding to each segment data; a sending unit, configured to store one or more segment data of the source end having a difference in the first hash table, and send the data to the destination end Incremental backup.
  • a network connection storage NAS device is provided, the NAS supporting a network data management protocol NDMP, including the apparatus of any of the above.
  • One or more segmented data is sent to the destination for incremental backup, which solves the problem that the data backup function in the related art cannot perform reliable data incremental backup based on NDMP, and the backup server has a heavy burden, thereby achieving NDMP-based Perform incremental data backups, reduce backup server load, and reduce bandwidth transfer.
  • FIG. 1 is a flow chart of a data incremental backup method according to an embodiment of the present invention
  • FIG. 2 is a block diagram showing the structure of a data incremental backup apparatus according to an embodiment of the present invention
  • FIG. 3 is a block diagram 1 of a preferred structure of a data incremental backup device according to an embodiment of the present invention.
  • FIG. 4 is a block diagram showing a preferred structure of the first determining module 24 in the data incremental backup device according to an embodiment of the present invention
  • FIG. 5 is a block diagram showing a preferred structure of the determining unit 44 in the first determining module 24 in the data incremental backup device according to the embodiment of the present invention
  • FIG. 6 is a block diagram showing a preferred structure of a transmit module 26 in a data incremental backup device according to an embodiment of the present invention
  • FIG. 7 is a structural block diagram of a network connection storage NAS device according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of an NDMP operation mode in accordance with a preferred embodiment of the present invention.
  • FIG. 9 is a schematic diagram of NDMP data flow command interaction in accordance with a preferred embodiment of the present invention.
  • FIG. 1 is a flowchart of a data incremental backup method according to an embodiment of the present invention. As shown in FIG. 1 , the process includes:
  • Step S102 segmenting the data block
  • Step S104 determining whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored at the destination end;
  • Step S106 If the determination result is no, one or more segment data of the source end having the difference is sent to the destination end for incremental backup.
  • the differential backup is performed according to the segmentation data, and the data backup function in the related art cannot be reliably performed, and the data backup function cannot be performed based on NDMP.
  • the problem is heavy, which in turn achieves incremental data backup based on NDMP, and reduces the load on the backup server and reduces the effect of bandwidth transmission.
  • the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify the backup history information of the data block; If the result is no, the data block is segmented for incremental data backup.
  • a plurality of manners may be adopted, for example, a manner of directly determining whether the segment data is consistent;
  • the following hash value may be optionally used for comparison: first calculating a first hash value corresponding to each segment data of the data block stored at the source end, and calculating each segment data of the data block stored at the destination end Corresponding second hash value; determining, according to the first hash value and the second hash value, whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored by the destination end.
  • the method includes: determining the first hash value Whether the second hash value is the same; if the judgment result is yes, it is determined that the segment data of the data block stored at the source end is consistent with the segment data of the data block stored at the destination end; and/or, in the judgment result In the case of No, it is determined that the segment data of the data block stored at the source end is inconsistent with the segment data of the data block stored at the destination end.
  • one or more segment data of the source end having the difference may be sent to the destination end for backup according to the following processing: first according to calculation
  • the first hash value generates a first hash list corresponding to each segment data of the source end, and generates a second hash list corresponding to each segment data of the destination end according to the calculated second hash value;
  • One or more segmented data of the end is stored in the first hash table and sent to the destination for incremental backup. That is to say, according to the form directly according to the table, the corresponding feedback needs to update the segmentation data, which is directly clear.
  • a data incremental backup device is also provided, which is used to implement the foregoing embodiments and preferred embodiments, and has not been described again.
  • the term “module” may implement a combination of software and/or hardware of a predetermined function.
  • the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
  • FIG. 2 is a structural block diagram of a data incremental backup apparatus according to an embodiment of the present invention. As shown in FIG. 2, the apparatus includes: a data segmentation module 22, a first determination module 24, and a transmission module 26, and the device is performed below. Description.
  • the data segmentation module 22 is configured to segment the data block;
  • the first determining module 24 is connected to the data segmentation module 22, and is configured to determine the segment data of the data block stored at the source end and the data stored by the destination end. Whether the segment data of the block corresponds to the consistency;
  • the sending module 26 is connected to the first determining module 24, and is configured to set one or more segment data of the source end having the difference if the determining result of the determining module is negative. Send to the destination for incremental backup.
  • FIG. 3 is a block diagram of a preferred structure of a data incremental backup device according to an embodiment of the present invention. As shown in FIG. 3, the device includes a second judging module 32 in addition to all the modules shown in FIG. The device is described.
  • the second judging module 32 is connected to the data segmentation module 22, and is configured to determine whether the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify the backup history information of the data block;
  • the segment module 22 is further configured to segment the data block for data incremental backup if the determination result of the second determination module is negative.
  • the first determining module 24 includes: a first obtaining unit 42 and a determining unit 44.
  • the first judging module 24 is described.
  • the first obtaining unit 42 is configured to obtain a first hash value corresponding to each segment data of the data block stored at the source end, and a second hash value corresponding to each segment data of the data block stored at the destination end; 44, connected to the first obtaining unit 42, configured to determine, according to the first hash value and the second hash value, whether each segment data of the data block stored at the source end and each segment data of the data block stored at the destination end are Corresponding.
  • FIG. 5 is a block diagram showing a preferred structure of the determining unit 44 in the first determining module 24 of the data incremental backup device according to the embodiment of the present invention.
  • the determining unit 44 includes: a determining subunit 52 and a first determining unit. Unit 54 and/or second decision subunit 56, the determination unit 44 will be described below.
  • the determining subunit 52 is configured to determine whether the first hash value and the second hash value are the same; the first determining subunit 54 is configured to determine the data stored at the source end if the judgment result of the determining subunit is YES.
  • the segmentation data of the block is consistent with the segmentation data of the data block stored at the destination; and/or the second determination subunit 56 is configured to determine the source storage when the determination result of the determination subunit is negative.
  • the segmentation data of the data block is inconsistent with the segmentation data of the data block stored at the destination.
  • FIG. 6 is a block diagram showing a preferred structure of a transmission breaking module 26 in a data incremental backup apparatus according to an embodiment of the present invention.
  • the transmitting module 26 includes a second obtaining unit 62 and a transmitting unit 64. Module 26 is described.
  • the second obtaining unit 62 is configured to: acquire a first hash list corresponding to each segment data of the source end according to the first hash value, and generate a second hash corresponding to each segment data of the destination end according to the second hash value.
  • the sending unit 64 is connected to the second obtaining unit 62, and is configured to store one or more segment data of the source end having the difference in the first hash table and send the data to the destination end for incremental backup.
  • FIG. 7 is a structural block diagram of a network connection storage NAS device according to an embodiment of the present invention. As shown in FIG. 7, the NAS device 70 supports a network data management protocol NDMP, including the data backup device 72 described in any of the above.
  • NDMP network data management protocol
  • reliable data incremental backup is performed based on NDMP, and according to the feature of NDMP file-based backup, considering the mature rsync algorithm mechanism to implement incremental backup of the custom data stream.
  • the solution includes the following processing: for a NAS device that supports the NDMP protocol, the data stream interaction command between the source end and the destination end is defined, so that the source end can obtain the destination end data backup destination data file and data block information, and is based on the rsync algorithm. The changed data block is sent to the destination for incremental backup.
  • FIG. 8 is a schematic diagram of an NDMP operation mode according to a preferred embodiment of the present invention.
  • the storage server A is a source end
  • the storage server B is a destination end
  • the data management software DMA establishes an NDMP protocol control flow with A and B respectively.
  • the control command interaction is performed; after the server backup parameter is set by the control command, the DMA notifies A and B to establish a data flow channel, and starts the backup process.
  • Table 1 is a NDMP data stream interactive command function table according to a preferred embodiment of the present invention
  • NDMP_GET_ATTR_EX Get the specified file attribute information File does not exist empty
  • NDMP_GET_HASH_EX Get the specified segmentation hash table Specify block length and number of segments
  • NDMP_GET_ATTR_EX is used to obtain the attribute information of the file to be backed up from the peer host. If the attribute returns null, the file has no backup history; NDMP_GET_HASH_EX is used to obtain the file from the peer host.
  • the backup file data block segmentation hash value; NDMP_SET_HASH_EX is used to update the peer data block segmentation data.
  • Table 2 is an NDMP hash table element field description table in accordance with a preferred embodiment of the present invention
  • each element in the table records a data segmentation information, including the segment ID number, the data block start offset and length, the data block 128-bit strong, the weak hash value, and the update peer. Data data.
  • FIG. 9 is a schematic diagram of NDMP data flow command interaction according to a preferred embodiment of the present invention.
  • source A backs up a specified file
  • destination B the file attribute query request
  • Attribute comparison if the file does not change the attribute, the file data block is not sent; if the file attribute is changed, the file data block is segmented, each data block hash value is calculated and stored in the table, and the data block is sent at the same time.
  • the source data block content is added to the hash table, and B receives the hash table of the updated data block content to perform the destination data block update.
  • modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein.
  • the steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module.
  • the invention is not limited to any specific combination of hardware and software.
  • the above embodiments and preferred embodiments solve the problem that the data backup function in the related art cannot perform reliable data incremental backup based on NDMP, and the backup server has a heavy burden, thereby achieving data increase based on NDMP.
  • Volume backup and reduce the backup server load, reducing the effect of bandwidth transmission.

Abstract

Disclosed are a data incremental backup method and apparatus, and a NAS device. The method comprises: segmenting data blocks; determining whether each data segment of the data blocks stored in a source end is correspondingly identical to each data segment of the data blocks stored in a destination end; and if not, sending, to the destination end for incremental backup, one or more data segments of the source end that are different from those of the destination end. Therefore, the problems in the related art that it is impossible to use a data backup function to perform reliable data incremental backup based on NDMP and a backup server is under heavy load are solved, so that data incremental backup can be realized based on NDMP, the load on the backup server is alleviated, and the bandwidth transmission is reduced.

Description

数据增量备份方法、装置及NAS设备Data incremental backup method, device and NAS device 技术领域Technical field
本发明涉及信息存储技术领域,具体而言,涉及一种数据增量备份方法、装置及NAS设备。The present invention relates to the field of information storage technologies, and in particular, to a data incremental backup method, device, and NAS device.
背景技术Background technique
随着信息数据的不断增长,企业对于数据保护的意识日益增强,容灾备份已成为存储设备必不可少的功能之一。然而对于海量的数据和设备,如何进行统一管理以及如何减小容灾备份对于在线业务的影响,是当前存储工业待解决的重要课题。With the continuous growth of information data, enterprises are increasingly aware of data protection, and disaster recovery backup has become one of the essential functions of storage devices. However, for massive data and equipment, how to manage it in a unified manner and how to reduce the impact of disaster recovery backup on online services is an important issue to be solved in the current storage industry.
因此,网络数据管理协议(Network Data Management Protocol,简称为NDMP),用于集中控制管理企业级数据。NDMP体系结构可使备份应用程序厂商在网络连接存储服务器,例如,在网络附加存储设备(Network Attached Storage,简称为NAS)上控制本机备份和恢复设备。在任何备份软件应用与NAS设备之间提供一种通用接口。这样,应用厂商就可以支持各种NAS设备,而无需重新设计费用昂贵的编程逻辑。而且,NAS设备厂商还可以与任何NDMP兼容应用实现无缝协作。Therefore, the Network Data Management Protocol (NDMP) is used to centrally control and manage enterprise-level data. The NDMP architecture enables backup application vendors to control local backup and recovery devices on a network attached storage server, for example, on a Network Attached Storage (NAS). Provides a common interface between any backup software application and NAS devices. In this way, application vendors can support a variety of NAS devices without having to redesign expensive programming logic. Moreover, NAS device vendors can seamlessly collaborate with any NDMP-compliant application.
NDMP将备份和恢复操作的控制和数据流分成若干个独立的会话。这样可更灵活地配置用来保护NAS设备数据的环境。由于会话是独立的,所以它们可以从各个位置启动,并引导到不同的位置,从而更灵活地设计基于NDMP的拓扑。NDMP divides the control and data flow of backup and recovery operations into separate sessions. This gives you more flexibility in configuring the environment used to protect NAS device data. Because sessions are independent, they can be launched from various locations and directed to different locations for more flexible design of NDMP-based topologies.
目前NDMP的实现中,控制流都遵循了标准协议定义的统一接口,而数据流可以根据各NAS厂商的设备特点进行定制。为了有效降低数据流传输过程中的带宽占用,设备厂商都引入了增量备份机制,主要的增量备份方式有以下两种:In the current implementation of NDMP, the control flow follows a unified interface defined by the standard protocol, and the data flow can be customized according to the device characteristics of each NAS vendor. In order to effectively reduce the bandwidth usage during data stream transmission, device vendors have introduced an incremental backup mechanism. The main incremental backup methods are as follows:
方法一:采用记录备份时间戳的方式,每次备份前获取最近一次备份操作的时间戳,对比待备份文件的修改时间和最近一次备份时间,如果文件没有被修改,则过滤该文件,否则将文件属性和文件数据块发送到备份目的设备中。此方法存在一定风险,如系统时间可能会被更新,而且此增量备份方式,只能将整个差异文件发送,并不能把差异的数据块进行发送。 Method 1: Record the timestamp of the backup, obtain the timestamp of the most recent backup operation before each backup, compare the modification time of the file to be backed up and the latest backup time. If the file has not been modified, filter the file. Otherwise, the file will be filtered. File attributes and file data blocks are sent to the backup destination device. There are certain risks in this method. For example, the system time may be updated, and this incremental backup method can only send the entire difference file, and cannot send different data blocks.
方法二:采用文件系统镜像的方式,每次备份前将最近一次备份作为基准快照,对比当前文件系统快照和基准快照差异,将差异数据块发送到备份目的设备中。此方法依赖于文件系统的快照功能,而且NDMP协议无法完成快照管理,将造成快照积压。Method 2: Use the file system mirroring method to record the difference data block to the backup destination device by comparing the current file system snapshot with the baseline snapshot difference before each backup. This method relies on the snapshot function of the file system, and the NDMP protocol cannot complete the snapshot management, which will cause a snapshot backlog.
以上两种方式都存在一定缺陷,无法很好地与NDMP集成。因此,在相关技术中的数据备份功能存在无法基于NDMP进行数据增量备份,存在备份服务器负担重的问题。Both of the above methods have certain defects and cannot be well integrated with NDMP. Therefore, in the related art, the data backup function cannot perform incremental data backup based on NDMP, and there is a problem that the backup server is heavy.
发明内容Summary of the invention
本发明提供了一种数据增量备份方法,以至少解决相关技术中的数据备份功能存在无法基于NDMP进行可靠的数据增量备份,存在备份服务器负担重的问题。The present invention provides a data incremental backup method, which solves at least the problem that the data backup function in the related art cannot perform reliable data incremental backup based on NDMP, and the backup server has a heavy burden.
根据本发明的一个方面,提供了一种数据增量备份方法,包括:将数据块进行分段;判断源端存储的所述数据块的各分段数据与目的端存储的所述数据块的各分段数据是否对应一致;在判断结果为否的情况下,将存在差异的所述源端的一个或多个分段数据发送给所述目的端进行增量备份。According to an aspect of the present invention, a data incremental backup method includes: segmenting a data block; determining each segment data of the data block stored at the source end and the data block stored by the destination end Whether the segment data corresponds to the consistency; if the determination result is no, one or more segment data of the source end having the difference is sent to the destination end for incremental backup.
可选地,在将所述数据块进行分段之前,还包括:判断源端与目的端中所述数据块的备份属性信息是否相同,其中,所述备份属性信息用于标识所述数据块的备份历史信息;在判断结果为否的情况下,将所述数据块进行分段进行数据增量备份。Optionally, before the segmentation of the data block, the method further includes: determining whether the backup attribute information of the data block in the source end and the destination end is the same, where the backup attribute information is used to identify the data block. Backup history information; if the judgment result is no, the data block is segmented for data incremental backup.
可选地,判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致包括:计算所述源端存储的所述数据块的各分段数据对应的第一哈希值,以及所述目的端存储的所述数据块的各分段数据对应的第二哈希值;依据所述第一哈希值与所述第二哈希值判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致。Optionally, determining whether the segment data of the data block stored by the source end and the segment data of the data block stored by the destination end are consistently include: calculating the a first hash value corresponding to each segment data of the data block, and a second hash value corresponding to each segment data of the data block stored by the destination end; according to the first hash value and the The second hash value determines whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored by the destination end.
可选地,依据所述第一哈希值与所述第二哈希值判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致包括:判断所述第一哈希值与所述第二哈希值是否相同;在判断结果为是的情况下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应一致;和/或,在判断结果为否的情况下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应不一致。Optionally, determining, according to the first hash value and the second hash value, each segment data of the data block stored by the source end and each segment of the data block stored by the destination end Whether the segment data is consistent or not includes: determining whether the first hash value is the same as the second hash value; if the determination result is yes, determining segment data and destination of the data block stored by the source end The segment data of the data block stored at the end is consistent; and/or, if the determination result is no, determining that the segment data of the data block stored at the source end corresponds to the segment data of the data block stored at the destination end Inconsistent.
可选地,在判断结果为否的情况下,将存在差异的所述源端的一个或多个分段数据发送给所述目的端进行增量备份包括:依据计算的所述第一哈希值生成源端各分段 数据对应的第一哈希列表,以及依据计算的所述第二哈希值生成目的端各分段数据对应的第二哈希列表;将存在差异的所述源端的一个或多个分段数据存储在所述第一哈希表中发送给所述目的端进行增量备份。Optionally, if the determination result is no, sending the one or more segment data of the source end that has the difference to the destination end for incremental backup comprises: calculating the first hash value according to the Generate source segmentation a first hash list corresponding to the data, and a second hash list corresponding to each segment data of the destination end according to the calculated second hash value; one or more segment data of the source end where there is a difference The storage is sent to the destination end in the first hash table for incremental backup.
根据本发明的另一方面,提供了一种数据增量备份装置,包括:数据分段模块,设置为对数据块进行分段;第一判断模块,设置为判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致;发送模块,设置为在所述判断模块的判断结果为否的情况下,将存在差异的所述源端的一个或多个分段数据发送给所述目的端进行增量备份。According to another aspect of the present invention, a data incremental backup apparatus includes: a data segmentation module configured to segment a data block; and a first determining module configured to determine the source storage Whether each segment data of the data block is consistent with each segment data of the data block stored at the destination end; and the sending module is configured to have a difference if the determination result of the determining module is negative. One or more segment data of the source end is sent to the destination end for incremental backup.
可选地,还包括:第二判断模块,设置为判断所述源端与目的端中所述数据块的备份属性信息是否相同,其中,所述备份属性信息用于标识所述数据块的备份历史信息;所述数据分段模块,还设置为在所述第二判断模块的判断结果为否的情况下,将所述数据块进行分段进行数据增量备份。Optionally, the method further includes: determining, by the second determining module, whether the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify a backup of the data block The data segmentation module is further configured to segment the data block for data incremental backup if the determination result of the second determining module is negative.
可选地,第一判断模块包括:第一获取单元,设置为获取所述源端存储的所述数据块的各分段数据对应的第一哈希值;以及所述目的端存储的所述数据块的各分段数据对应的第二哈希值;判断单元,设置为依据所述第一哈希值与所述第二哈希值判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致。Optionally, the first determining module includes: a first acquiring unit, configured to acquire a first hash value corresponding to each segment data of the data block stored by the source end; and the a second hash value corresponding to each segment data of the data block; the determining unit is configured to determine, according to the first hash value and the second hash value, each segment of the data block stored by the source end Whether the segment data is consistent with each segment data of the data block stored at the destination end.
可选地,判断单元包括:判断子单元,设置为判断所述第一哈希值与所述第二哈希值是否相同;第一确定子单元,设置为在所述判断子单元的判断结果为是的情况下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应一致;和/或,第二确定子单元,设置为在所述判断子单元的判断结果为否的情况下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应不一致。Optionally, the determining unit includes: a determining subunit, configured to determine whether the first hash value and the second hash value are the same; the first determining subunit is set as a determining result in the determining subunit In the case of YES, it is determined that the segment data of the data block stored at the source end is consistent with the segment data of the data block stored at the destination end; and/or the second determining subunit is set to be in the determining If the judgment result of the unit is no, it is determined that the segment data of the data block stored at the source end is inconsistent with the segment data of the data block stored at the destination end.
可选地,发送模块包括:第二获取单元,设置为获取依据所述第一哈希值生成源端各分段数据对应的第一哈希列表,以及依据所述第二哈希值生成目的端各分段数据对应的第二哈希列表;发送单元,设置为将存在差异的所述源端的一个或多个分段数据存储在所述第一哈希表中发送给所述目的端进行增量备份。Optionally, the sending module includes: a second acquiring unit, configured to acquire a first hash list corresponding to each segment data of the source end according to the first hash value, and generate a destination according to the second hash value a second hash list corresponding to each segment data; a sending unit, configured to store one or more segment data of the source end having a difference in the first hash table, and send the data to the destination end Incremental backup.
根据本发明的还一方面,提供了一种网络连接存储NAS设备,该NAS支持网络数据管理协议NDMP,包括上述任一项所述的装置。According to still another aspect of the present invention, a network connection storage NAS device is provided, the NAS supporting a network data management protocol NDMP, including the apparatus of any of the above.
通过将数据块进行分段;判断源端存储的数据块的各分段数据与目的端存储的数据块的各分段数据是否对应一致;在判断结果为否的情况下,将存在差异的源端的一 个或多个分段数据发送给目的端进行增量备份,解决了相关技术中的数据备份功能存在无法基于NDMP进行可靠的数据增量备份,存在备份服务器负担重的问题,进而达到了基于NDMP进行数据增量备份,以及减轻备份服务器负荷,减少带宽传输的效果。By segmenting the data block; determining whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored at the destination end; if the determination result is negative, there will be a source of the difference One end One or more segmented data is sent to the destination for incremental backup, which solves the problem that the data backup function in the related art cannot perform reliable data incremental backup based on NDMP, and the backup server has a heavy burden, thereby achieving NDMP-based Perform incremental data backups, reduce backup server load, and reduce bandwidth transfer.
附图说明DRAWINGS
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:The drawings described herein are intended to provide a further understanding of the invention, and are intended to be a part of the invention. In the drawing:
图1是根据本发明实施例的数据增量备份方法的流程图;1 is a flow chart of a data incremental backup method according to an embodiment of the present invention;
图2是根据本发明实施例的数据增量备份装置的结构框图;2 is a block diagram showing the structure of a data incremental backup apparatus according to an embodiment of the present invention;
图3是根据本发明实施例的数据增量备份装置的优选结构框图一;3 is a block diagram 1 of a preferred structure of a data incremental backup device according to an embodiment of the present invention;
图4是根据本发明实施例的数据增量备份装置中第一判断模块24的优选结构框图;4 is a block diagram showing a preferred structure of the first determining module 24 in the data incremental backup device according to an embodiment of the present invention;
图5是根据本发明实施例的数据增量备份装置中第一判断模块24中判断单元44的优选结构框图;FIG. 5 is a block diagram showing a preferred structure of the determining unit 44 in the first determining module 24 in the data incremental backup device according to the embodiment of the present invention;
图6是根据本发明实施例的数据增量备份装置中发送断模块26的优选结构框图;6 is a block diagram showing a preferred structure of a transmit module 26 in a data incremental backup device according to an embodiment of the present invention;
图7是根据本发明实施例的网络连接存储NAS设备的结构框图;7 is a structural block diagram of a network connection storage NAS device according to an embodiment of the present invention;
图8是根据本发明优选实施例的NDMP运行模式示意图;8 is a schematic diagram of an NDMP operation mode in accordance with a preferred embodiment of the present invention;
图9是根据本发明优选实施例的NDMP数据流命令交互示意图。9 is a schematic diagram of NDMP data flow command interaction in accordance with a preferred embodiment of the present invention.
具体实施方式detailed description
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。The invention will be described in detail below with reference to the drawings in conjunction with the embodiments. It should be noted that the embodiments in the present application and the features in the embodiments may be combined with each other without conflict.
在本实施例中,提供了一种数据增量备份方法,图1是根据本发明实施例的数据增量备份方法的流程图,如图1所示,该流程包括:In this embodiment, a data incremental backup method is provided. FIG. 1 is a flowchart of a data incremental backup method according to an embodiment of the present invention. As shown in FIG. 1 , the process includes:
步骤S102,将数据块进行分段; Step S102, segmenting the data block;
步骤S104,判断源端存储的数据块的各分段数据与目的端存储的数据块的各分段数据是否对应一致;Step S104, determining whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored at the destination end;
步骤S106,在判断结果为否的情况下,将存在差异的源端的一个或多个分段数据发送给目的端进行增量备份。Step S106: If the determination result is no, one or more segment data of the source end having the difference is sent to the destination end for incremental backup.
通过将数据块进行分段,依据分段比较的方式,依据分段数据进行差异化的备份,解决了相关技术中的数据备份功能存在无法基于NDMP进行可靠的数据增量备份,存在备份服务器负担重的问题,进而达到了基于NDMP进行数据增量备份,以及减轻备份服务器负荷,减少带宽传输的效果。By segmenting the data blocks, according to the method of segmentation comparison, the differential backup is performed according to the segmentation data, and the data backup function in the related art cannot be reliably performed, and the data backup function cannot be performed based on NDMP. The problem is heavy, which in turn achieves incremental data backup based on NDMP, and reduces the load on the backup server and reduces the effect of bandwidth transmission.
为了确保备份的正解,在将数据块进行分段之前,可以先判断源端与目的端中数据块的备份属性信息是否相同,其中,备份属性信息用于标识数据块的备份历史信息;在判断结果为否的情况下,将数据块进行分段进行数据增量备份。通过上述处理,保证了备份的准确性。In order to ensure the correct solution of the backup, before the data block is segmented, it may be determined whether the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify the backup history information of the data block; If the result is no, the data block is segmented for incremental data backup. Through the above processing, the accuracy of the backup is ensured.
在判断源端存储的数据块的各分段数据与目的端存储的数据块的各分段数据是否对应一致时,可以采用多种方式,例如,可以直接判断分段数据是否一致的方式;又例如,可选地还可以采用以下哈希值的方式进行比较:先计算源端存储的数据块的各分段数据对应的第一哈希值,以及目的端存储的数据块的各分段数据对应的第二哈希值;依据第一哈希值与第二哈希值判断源端存储的数据块的各分段数据与目的端存储的数据块的各分段数据是否对应一致。When it is determined whether the segment data of the data block stored at the source end and the segment data of the data block stored at the destination end are consistent, a plurality of manners may be adopted, for example, a manner of directly determining whether the segment data is consistent; For example, the following hash value may be optionally used for comparison: first calculating a first hash value corresponding to each segment data of the data block stored at the source end, and calculating each segment data of the data block stored at the destination end Corresponding second hash value; determining, according to the first hash value and the second hash value, whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored by the destination end.
在依据第一哈希值与第二哈希值判断源端存储的数据块的各分段数据与目的端存储的数据块的各分段数据是否对应一致时,包括:判断第一哈希值与第二哈希值是否相同;在判断结果为是的情况下,确定源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应一致;和/或,在判断结果为否的情况下,确定源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应不一致。When determining, according to the first hash value and the second hash value, whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored by the destination end, the method includes: determining the first hash value Whether the second hash value is the same; if the judgment result is yes, it is determined that the segment data of the data block stored at the source end is consistent with the segment data of the data block stored at the destination end; and/or, in the judgment result In the case of No, it is determined that the segment data of the data block stored at the source end is inconsistent with the segment data of the data block stored at the destination end.
在依据哈希值对分段数据判断是否相同之后,在判断结果为否的情况下,可以依据以下处理将存在差异的源端的一个或多个分段数据发送给目的端进行备份:先依据计算的第一哈希值生成源端各分段数据对应的第一哈希列表,以及依据计算的第二哈希值生成目的端各分段数据对应的第二哈希列表;将存在差异的源端的一个或多个分段数据存储在第一哈希表中发送给目的端进行增量备份。即采用直接依据表格的方式,对应的反馈需要更新的分段数据,直接明了。 After determining whether the segment data is the same according to the hash value, if the judgment result is no, one or more segment data of the source end having the difference may be sent to the destination end for backup according to the following processing: first according to calculation The first hash value generates a first hash list corresponding to each segment data of the source end, and generates a second hash list corresponding to each segment data of the destination end according to the calculated second hash value; One or more segmented data of the end is stored in the first hash table and sent to the destination for incremental backup. That is to say, according to the form directly according to the table, the corresponding feedback needs to update the segmentation data, which is directly clear.
在本实施例中还提供了一种数据增量备份装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。In this embodiment, a data incremental backup device is also provided, which is used to implement the foregoing embodiments and preferred embodiments, and has not been described again. As used below, the term "module" may implement a combination of software and/or hardware of a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
图2是根据本发明实施例的数据增量备份装置的结构框图,如图2所示,该装置包括:数据分段模块22、第一判断模块24和发送模块26,下面对该装置进行说明。2 is a structural block diagram of a data incremental backup apparatus according to an embodiment of the present invention. As shown in FIG. 2, the apparatus includes: a data segmentation module 22, a first determination module 24, and a transmission module 26, and the device is performed below. Description.
数据分段模块22,设置为对数据块进行分段;第一判断模块24,连接至上述数据分段模块22,设置为判断源端存储的数据块的各分段数据与目的端存储的数据块的各分段数据是否对应一致;发送模块26,连接至上述第一判断模块24,设置为在判断模块的判断结果为否的情况下,将存在差异的源端的一个或多个分段数据发送给目的端进行增量备份。The data segmentation module 22 is configured to segment the data block; the first determining module 24 is connected to the data segmentation module 22, and is configured to determine the segment data of the data block stored at the source end and the data stored by the destination end. Whether the segment data of the block corresponds to the consistency; the sending module 26 is connected to the first determining module 24, and is configured to set one or more segment data of the source end having the difference if the determining result of the determining module is negative. Send to the destination for incremental backup.
图3是根据本发明实施例的数据增量备份装置的优选结构框图一,如图3所示,该装置除包括图2所示的所有模块外,还包括第二判断模块32,下面对该装置进行说明。3 is a block diagram of a preferred structure of a data incremental backup device according to an embodiment of the present invention. As shown in FIG. 3, the device includes a second judging module 32 in addition to all the modules shown in FIG. The device is described.
第二判断模块32,连接至上述数据分段模块22,设置为判断源端与目的端中数据块的备份属性信息是否相同,其中,备份属性信息用于标识数据块的备份历史信息;数据分段模块22,还设置为在第二判断模块的判断结果为否的情况下,将数据块进行分段进行数据增量备份。The second judging module 32 is connected to the data segmentation module 22, and is configured to determine whether the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify the backup history information of the data block; The segment module 22 is further configured to segment the data block for data incremental backup if the determination result of the second determination module is negative.
图4是根据本发明实施例的数据增量备份装置中第一判断模块24的优选结构框图,如图4所示,该第一判断模块24包括:第一获取单元42和判断单元44,下面对该第一判断模块24进行说明。4 is a block diagram of a preferred structure of the first determining module 24 in the data incremental backup device. As shown in FIG. 4, the first determining module 24 includes: a first obtaining unit 42 and a determining unit 44. The first judging module 24 is described.
第一获取单元42,设置为获取源端存储的数据块的各分段数据对应的第一哈希值;以及目的端存储的数据块的各分段数据对应的第二哈希值;判断单元44,连接至上述第一获取单元42,设置为依据第一哈希值与第二哈希值判断源端存储的数据块的各分段数据与目的端存储的数据块的各分段数据是否对应一致。The first obtaining unit 42 is configured to obtain a first hash value corresponding to each segment data of the data block stored at the source end, and a second hash value corresponding to each segment data of the data block stored at the destination end; 44, connected to the first obtaining unit 42, configured to determine, according to the first hash value and the second hash value, whether each segment data of the data block stored at the source end and each segment data of the data block stored at the destination end are Corresponding.
图5是根据本发明实施例的数据增量备份装置中第一判断模块24中判断单元44的优选结构框图,如图5所示,该判断单元44包括:判断子单元52、第一确定子单元54和/或第二判断子单元56,下面对该判断单元44进行说明。 FIG. 5 is a block diagram showing a preferred structure of the determining unit 44 in the first determining module 24 of the data incremental backup device according to the embodiment of the present invention. As shown in FIG. 5, the determining unit 44 includes: a determining subunit 52 and a first determining unit. Unit 54 and/or second decision subunit 56, the determination unit 44 will be described below.
判断子单元52,设置为判断第一哈希值与第二哈希值是否相同;第一确定子单元54,设置为在判断子单元的判断结果为是的情况下,确定源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应一致;和/或,第二确定子单元56,设置为在判断子单元的判断结果为否的情况下,确定源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应不一致。The determining subunit 52 is configured to determine whether the first hash value and the second hash value are the same; the first determining subunit 54 is configured to determine the data stored at the source end if the judgment result of the determining subunit is YES. The segmentation data of the block is consistent with the segmentation data of the data block stored at the destination; and/or the second determination subunit 56 is configured to determine the source storage when the determination result of the determination subunit is negative. The segmentation data of the data block is inconsistent with the segmentation data of the data block stored at the destination.
图6是根据本发明实施例的数据增量备份装置中发送断模块26的优选结构框图,如图6所示,该发送模块26包括第二获取单元62和发送单元64,下面对该发送模块26进行说明。FIG. 6 is a block diagram showing a preferred structure of a transmission breaking module 26 in a data incremental backup apparatus according to an embodiment of the present invention. As shown in FIG. 6, the transmitting module 26 includes a second obtaining unit 62 and a transmitting unit 64. Module 26 is described.
第二获取单元62,设置为获取依据第一哈希值生成源端各分段数据对应的第一哈希列表,以及依据第二哈希值生成目的端各分段数据对应的第二哈希列表;发送单元64,连接至上述第二获取单元62,设置为将存在差异的源端的一个或多个分段数据存储在第一哈希表中发送给目的端进行增量备份。The second obtaining unit 62 is configured to: acquire a first hash list corresponding to each segment data of the source end according to the first hash value, and generate a second hash corresponding to each segment data of the destination end according to the second hash value. The sending unit 64 is connected to the second obtaining unit 62, and is configured to store one or more segment data of the source end having the difference in the first hash table and send the data to the destination end for incremental backup.
图7是根据本发明实施例的网络连接存储NAS设备的结构框图,如图7所示,该NAS设备70支持网络数据管理协议NDMP,包括上述任一项所述的数据备份装置72。FIG. 7 is a structural block diagram of a network connection storage NAS device according to an embodiment of the present invention. As shown in FIG. 7, the NAS device 70 supports a network data management protocol NDMP, including the data backup device 72 described in any of the above.
针对相关技术中的上述问题,在本实施例中,基于NDMP进行可靠的数据增量备份,根据NDMP基于文件进行备份的特点,考虑参考成熟的rsync算法机制来实现自定义数据流的增量备份功能。该方案包括如下处理:对于支持NDMP协议的NAS设备,定义备份源端和目的端之间数据流交互命令,使得源端可以获取目的端数据备份目的端数据文件和数据块信息,并基于rsync算法得到变更后的数据块,发送到目的端实现增量备份过程。For the above problems in the related art, in this embodiment, reliable data incremental backup is performed based on NDMP, and according to the feature of NDMP file-based backup, considering the mature rsync algorithm mechanism to implement incremental backup of the custom data stream. Features. The solution includes the following processing: for a NAS device that supports the NDMP protocol, the data stream interaction command between the source end and the destination end is defined, so that the source end can obtain the destination end data backup destination data file and data block information, and is based on the rsync algorithm. The changed data block is sent to the destination for incremental backup.
下面对本发明优选实施例进行说明。Preferred embodiments of the invention are described below.
图8是根据本发明优选实施例的NDMP运行模式示意图,如图8所示,存储服务器A为源端,存储服务器B为目的端,数据管理软件DMA分别与A、B建立NDMP协议控制流,进行控制命令交互;通过控制命令设定服务器备份参数后,DMA通知A、B之间建立数据流通道,并启动备份过程。8 is a schematic diagram of an NDMP operation mode according to a preferred embodiment of the present invention. As shown in FIG. 8, the storage server A is a source end, the storage server B is a destination end, and the data management software DMA establishes an NDMP protocol control flow with A and B respectively. The control command interaction is performed; after the server backup parameter is set by the control command, the DMA notifies A and B to establish a data flow channel, and starts the backup process.
表1是根据本发明优选实施例的NDMP数据流交互命令功能表,Table 1 is a NDMP data stream interactive command function table according to a preferred embodiment of the present invention,
表1Table 1
命令名称Command name 功能Features 备注Remarks
NDMP_GET_ATTR_EXNDMP_GET_ATTR_EX 获取指定文件属性信息Get the specified file attribute information 文件不存在返回空File does not exist empty
NDMP_GET_HASH_EXNDMP_GET_HASH_EX 获取指定分段哈希值表Get the specified segmentation hash table 指定块长度和分段个数Specify block length and number of segments
NDMP_SET_HASH_EXNDMP_SET_HASH_EX 设置指定分段哈希值表Set the specified segmentation hash table 附加需要更新的分段数据Attach segmentation data that needs to be updated
如表1所示,A、B之间自定义数据流命令,NDMP_GET_ATTR_EX用于从对端主机获取待备份文件属性信息,属性返回空表示该文件无备份历史;NDMP_GET_HASH_EX用于从对端主机获取待备份文件数据块分段哈希值;NDMP_SET_HASH_EX用于更新对端数据块分段数据。As shown in Table 1, the custom data stream command between A and B, NDMP_GET_ATTR_EX is used to obtain the attribute information of the file to be backed up from the peer host. If the attribute returns null, the file has no backup history; NDMP_GET_HASH_EX is used to obtain the file from the peer host. The backup file data block segmentation hash value; NDMP_SET_HASH_EX is used to update the peer data block segmentation data.
表2是根据本发明优选实施例的NDMP哈希表元素字段说明表,Table 2 is an NDMP hash table element field description table in accordance with a preferred embodiment of the present invention,
表2Table 2
字段名称Field Name 类型Types of 说明Description
idId uint32_tUint32_t 分段编号Segment number
offsetOffset uint64_tUint64_t 分段偏移Segment offset
lengthLength uint32_tUint32_t 分段长度Segment length
md5_sumMd5_sum uint32_tUint32_t 分段弱哈希值Segmented weak hash
sha1_sumSha1_sum uint32_tUint32_t 分段强哈希值Piecewise strong hash
dataData BYTE*BYTE* 分段数据Segmentation data
如表2所示,表中每一个元素记录一个数据分段信息,包括分段ID号、数据块起始偏移和长度、数据块128位强、弱哈希值,以及用于更新对端数据的数据。As shown in Table 2, each element in the table records a data segmentation information, including the segment ID number, the data block start offset and length, the data block 128-bit strong, the weak hash value, and the update peer. Data data.
Figure PCTCN2015078495-appb-000001
Figure PCTCN2015078495-appb-000001
图9是根据本发明优选实施例的NDMP数据流命令交互示意图,如图9所示,源端A备份指定文件时,先发送文件属性查询请求到目的端B,根据B反馈的属性与本地文件属性进行对比,如果文件未发生属性改变,则不发送该文件数据块;如果文件属性改变,则对文件数据块进行分段,计算各数据块哈希值存入表中,同时发送数据块分段哈希请求到B,根据B反馈的哈希表与本地文件数据块哈希表进行对比,哈希值相同的数据块在哈希表中标记数据未空,哈希值不相同的数据块在哈希表中附加源端数据块内容,B收到更新数据块内容的哈希表进行目的端数据块更新。FIG. 9 is a schematic diagram of NDMP data flow command interaction according to a preferred embodiment of the present invention. As shown in FIG. 9 , when source A backs up a specified file, first sends a file attribute query request to destination B, according to attributes and local files fed back by B. Attribute comparison, if the file does not change the attribute, the file data block is not sent; if the file attribute is changed, the file data block is segmented, each data block hash value is calculated and stored in the table, and the data block is sent at the same time. The segment hash requests to B, and the hash table according to the B feedback is compared with the local file data block hash table, and the data block with the same hash value is marked in the hash table, the data is not empty, and the data blocks with different hash values are different. The source data block content is added to the hash table, and B receives the hash table of the updated data block content to perform the destination data block update.
通过实现NDMP数据流基于rsync算法的增量备份技术,可以有效节省了50%的带宽占用,大大减轻了服务器备份任务的负荷。 By implementing the incremental backup technology based on the rsync algorithm for the NDMP data stream, 50% of the bandwidth usage can be effectively saved, and the load of the server backup task is greatly reduced.
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。It will be apparent to those skilled in the art that the various modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein. The steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module. Thus, the invention is not limited to any specific combination of hardware and software.
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The above description is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.
工业实用性Industrial applicability
如上所述,通过上述实施例及优选实施方式,解决了相关技术中的数据备份功能存在无法基于NDMP进行可靠的数据增量备份,存在备份服务器负担重的问题,进而达到了基于NDMP进行数据增量备份,以及减轻备份服务器负荷,减少带宽传输的效果。 As described above, the above embodiments and preferred embodiments solve the problem that the data backup function in the related art cannot perform reliable data incremental backup based on NDMP, and the backup server has a heavy burden, thereby achieving data increase based on NDMP. Volume backup, and reduce the backup server load, reducing the effect of bandwidth transmission.

Claims (11)

  1. 一种数据增量备份方法,包括:A data incremental backup method, including:
    将数据块进行分段;Segment the data block;
    判断源端存储的所述数据块的各分段数据与目的端存储的所述数据块的各分段数据是否对应一致;Determining whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored at the destination end;
    在判断结果为否的情况下,将存在差异的所述源端的一个或多个分段数据发送给所述目的端进行增量备份。If the determination result is no, one or more segment data of the source end having the difference is sent to the destination end for incremental backup.
  2. 根据权利要求1所述的方法,其中,在将所述数据块进行分段之前,还包括:The method of claim 1 further comprising: before segmenting said data block, further comprising:
    判断源端与目的端中所述数据块的备份属性信息是否相同,其中,所述备份属性信息用于标识所述数据块的备份历史信息;Determining whether the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify backup history information of the data block;
    在判断结果为否的情况下,将所述数据块分段进行数据增量备份。In the case where the determination result is no, the data block is segmented for data incremental backup.
  3. 根据权利要求1所述的方法,其中,判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致包括:The method of claim 1, wherein determining whether the segment data of the data block stored by the source end and the segment data of the data block stored by the destination end are consistently comprises:
    获取所述源端存储的所述数据块的各分段数据对应的第一哈希值,以及所述目的端存储的所述数据块的各分段数据对应的第二哈希值;Acquiring a first hash value corresponding to each segment data of the data block stored by the source end, and a second hash value corresponding to each segment data of the data block stored by the destination end;
    依据获取的所述第一哈希值与所述第二哈希值判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致。Determining, according to the obtained first hash value and the second hash value, each segment data of the data block stored by the source end and each segment data of the data block stored by the destination end Whether it corresponds to the same.
  4. 根据权利要求3所述的方法,其中,依据所述第一哈希值与所述第二哈希值判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致包括:The method according to claim 3, wherein, according to the first hash value and the second hash value, each segment data of the data block stored at the source end is stored with the destination end Whether the pieces of data of the data block correspond to each other consistently includes:
    判断所述第一哈希值与所述第二哈希值是否相同;Determining whether the first hash value is the same as the second hash value;
    在判断结果为是的情况下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应一致;和/或,在判断结果为否的情况下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应不一致。 If the determination result is yes, determining that the segment data of the data block stored at the source end is consistent with the segment data of the data block stored by the destination end; and/or, if the determination result is negative, determining The segment data of the data block stored at the source end is inconsistent with the segment data of the data block stored at the destination end.
  5. 根据权利要求3所述的方法,其中,在判断结果为否的情况下,将存在差异的所述源端的一个或多个分段数据发送给所述目的端进行增量备份包括:The method according to claim 3, wherein, if the determination result is negative, transmitting the one or more segment data of the source end having the difference to the destination end for incremental backup comprises:
    获取依据所述第一哈希值生成的源端各分段数据对应的第一哈希列表,以及依据所述第二哈希值生成的目的端各分段数据对应的第二哈希列表;Acquiring a first hash list corresponding to each segment data of the source end generated according to the first hash value, and a second hash list corresponding to each segment data of the destination end generated according to the second hash value;
    将存在差异的所述源端的一个或多个分段数据存储在所述第一哈希表中发送给所述目的端进行增量备份。One or more segment data of the source end having a difference is stored in the first hash table and sent to the destination for incremental backup.
  6. 一种数据增量备份装置,包括:A data incremental backup device comprising:
    数据分段模块,设置为对数据块进行分段;a data segmentation module, configured to segment the data block;
    第一判断模块,设置为判断源端存储的所述数据块的各分段数据与目的端存储的所述数据块的各分段数据是否对应一致;a first judging module, configured to determine whether each segment data of the data block stored at the source end is consistent with each segment data of the data block stored at the destination end;
    发送模块,设置为在所述判断模块的判断结果为否的情况下,将存在差异的所述源端的一个或多个分段数据发送给所述目的端进行增量备份。The sending module is configured to send, when the determining result of the determining module is negative, one or more segment data of the source end having a difference to the destination end for incremental backup.
  7. 根据权利要求6所述的装置,其中,还包括:The apparatus of claim 6 further comprising:
    第二判断模块,设置为判断所述源端与目的端中所述数据块的备份属性信息是否相同,其中,所述备份属性信息用于标识所述数据块的备份历史信息;a second determining module, configured to determine whether the backup attribute information of the data block in the source end and the destination end is the same, wherein the backup attribute information is used to identify backup history information of the data block;
    所述数据分段模块,还设置为在所述第二判断模块的判断结果为否的情况下,将所述数据块进行分段进行数据增量备份。The data segmentation module is further configured to segment the data block for data incremental backup if the determination result of the second determination module is negative.
  8. 根据权利要求7所述的装置,其中,所述第一判断模块包括:The apparatus of claim 7, wherein the first determining module comprises:
    第一获取单元,设置为获取所述源端存储的所述数据块的各分段数据对应的第一哈希值;以及所述目的端存储的所述数据块的各分段数据对应的第二哈希值;a first acquiring unit, configured to acquire a first hash value corresponding to each segment data of the data block stored by the source end, and a corresponding to each segment data of the data block stored by the destination end Two hash values;
    判断单元,设置为依据所述第一哈希值与所述第二哈希值判断所述源端存储的所述数据块的各分段数据与所述目的端存储的所述数据块的各分段数据是否对应一致。a determining unit, configured to determine, according to the first hash value and the second hash value, each segment data of the data block stored by the source end and each of the data blocks stored by the destination end Whether the segmentation data corresponds to the same.
  9. 根据权利要求8所述的装置,其中,所述判断单元包括:The apparatus according to claim 8, wherein said determining unit comprises:
    判断子单元,设置为判断所述第一哈希值与所述第二哈希值是否相同;a determining subunit, configured to determine whether the first hash value is the same as the second hash value;
    第一确定子单元,设置为在所述判断子单元的判断结果为是的情况下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应一致;和/或,第二确定子单元,设置为在所述判断子单元的判断结果为否的情况 下,确定所述源端存储的数据块的分段数据与目的端存储的数据块的分段数据对应不一致。a first determining subunit, configured to determine, in a case that the determining result of the determining subunit is YES, determining that the segment data of the data block stored by the source end is consistent with the segment data of the data block stored by the destination end; And/or the second determining subunit is set to be a case where the judgment result of the judging subunit is no And determining that the segment data of the data block stored by the source end is inconsistent with the segment data of the data block stored by the destination end.
  10. 根据权利要求8所述的装置,其中,所述发送模块包括:The apparatus of claim 8 wherein said transmitting module comprises:
    第二获取单元,设置为获取依据所述第一哈希值生成源端各分段数据对应的第一哈希列表,以及依据所述第二哈希值生成目的端各分段数据对应的第二哈希列表;a second acquiring unit, configured to acquire a first hash list corresponding to each segment data of the source end according to the first hash value, and generate a corresponding number corresponding to each segment data of the destination end according to the second hash value Two hash list;
    发送单元,设置为将存在差异的所述源端的一个或多个分段数据存储在所述第一哈希表中发送给所述目的端进行增量备份。And a sending unit, configured to store one or more segment data of the source end with a difference in the first hash table and send the data to the destination end for incremental backup.
  11. 一种网络连接存储NAS设备,该NAS支持网络数据管理协议NDMP,包括权利要求6至10中任一项所述的装置。 A network connection storage NAS device supporting a network data management protocol NDMP, comprising the apparatus of any one of claims 6 to 10.
PCT/CN2015/078495 2014-12-30 2015-05-07 Data incremental backup method and apparatus, and nas device WO2016107042A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410853602.1 2014-12-30
CN201410853602.1A CN105808373A (en) 2014-12-30 2014-12-30 Incremental backup method and device of data, and NAS (Network Attached Storage) equipment

Publications (1)

Publication Number Publication Date
WO2016107042A1 true WO2016107042A1 (en) 2016-07-07

Family

ID=56284073

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/078495 WO2016107042A1 (en) 2014-12-30 2015-05-07 Data incremental backup method and apparatus, and nas device

Country Status (2)

Country Link
CN (1) CN105808373A (en)
WO (1) WO2016107042A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111258815A (en) * 2020-01-16 2020-06-09 西安奥卡云数据科技有限公司 Data backup method and device suitable for multi-node backup system based on Hash
CN113486313A (en) * 2021-07-05 2021-10-08 江苏欧帝电子科技有限公司 Uniform identity authentication method and system for school system personnel
CN113824757A (en) * 2020-12-23 2021-12-21 京东科技控股股份有限公司 Data acquisition method, system and computer readable storage medium

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109413266A (en) * 2018-09-29 2019-03-01 上海爱优威软件开发有限公司 It is a kind of based on the data back up method and terminal that fall detection
CN111104249A (en) * 2018-10-26 2020-05-05 伊姆西Ip控股有限责任公司 Method, apparatus and computer program product for data backup
CN110046155B (en) * 2018-12-07 2023-06-20 创新先进技术有限公司 Method, device and equipment for updating feature database and determining data features
CN109684130B (en) * 2018-12-12 2020-12-22 网宿科技股份有限公司 Method and device for backing up data of computer room
CN110147380B (en) * 2019-05-23 2023-11-24 腾讯科技(成都)有限公司 Data updating method, device, server and storage medium
CN110532134B (en) * 2019-07-26 2022-08-12 苏州浪潮智能科技有限公司 NAS data backup disaster recovery method and device
CN110647531A (en) * 2019-08-15 2020-01-03 中国平安财产保险股份有限公司 Data synchronization method, device, equipment and computer readable storage medium
CN112565381B (en) * 2020-11-30 2022-05-31 杭州迪普科技股份有限公司 Data packet forwarding method, device and equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005033938A2 (en) * 2003-09-30 2005-04-14 Veritas Operating Corporation System and method for maintaining temporal data in data storage
CN103345435A (en) * 2013-06-28 2013-10-09 环境保护部华南环境科学研究所 Data backup and restoration method and destination sever system for backup
CN103365745A (en) * 2013-06-07 2013-10-23 上海爱数软件有限公司 Block level backup method based on content-addressed storage and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102184128B (en) * 2011-05-26 2013-04-10 成都易我科技开发有限责任公司 Fast disc incremental backup method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005033938A2 (en) * 2003-09-30 2005-04-14 Veritas Operating Corporation System and method for maintaining temporal data in data storage
CN103365745A (en) * 2013-06-07 2013-10-23 上海爱数软件有限公司 Block level backup method based on content-addressed storage and system
CN103345435A (en) * 2013-06-28 2013-10-09 环境保护部华南环境科学研究所 Data backup and restoration method and destination sever system for backup

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111258815A (en) * 2020-01-16 2020-06-09 西安奥卡云数据科技有限公司 Data backup method and device suitable for multi-node backup system based on Hash
CN111258815B (en) * 2020-01-16 2023-08-08 西安奥卡云数据科技有限公司 Data backup method and device suitable for hash-based multi-node backup system
CN113824757A (en) * 2020-12-23 2021-12-21 京东科技控股股份有限公司 Data acquisition method, system and computer readable storage medium
CN113486313A (en) * 2021-07-05 2021-10-08 江苏欧帝电子科技有限公司 Uniform identity authentication method and system for school system personnel
CN113486313B (en) * 2021-07-05 2023-07-25 江苏欧帝电子科技有限公司 Unified identity authentication method and system for school system personnel

Also Published As

Publication number Publication date
CN105808373A (en) 2016-07-27

Similar Documents

Publication Publication Date Title
WO2016107042A1 (en) Data incremental backup method and apparatus, and nas device
US20230139473A1 (en) Malware detection and content item recovery
US11178224B2 (en) System and method for automatic cloud-based full-data backup on mobile devices
US10169163B2 (en) Managing backup operations from a client system to a primary server and secondary server
CN109597717B (en) Data backup and recovery method and device, electronic equipment and storage medium
US20170139613A1 (en) Continuous data backup using real time delta storage
US20120192175A1 (en) Method and System to Accelerate Copying of Virtual Machine Images
US11144405B2 (en) Optimizing database migration in high availability and disaster recovery computing environments
US20160042024A1 (en) Continuous data health check
TWI663515B (en) Storage system of distributed deduplication for internet of things backup in data center and method for achieving the same
WO2017107984A1 (en) Data recovery method and device
US11630737B2 (en) Virtual replication of unstructured data
JP6196389B2 (en) Distributed disaster recovery file synchronization server system
US9146816B2 (en) Managing system image backup
US20180341666A1 (en) Data protection method and associated apparatus
US20110197088A1 (en) Method and system to provide a compliance clock service suitable for cloud deployment
US11163748B1 (en) Fingerprint backward compatibility in deduplication backup systems
TW201617871A (en) Data backup restoring system and method thereof
CN117643015A (en) Snapshot-based client-side key modification of log records manages keys across a series of nodes
CN108196979B (en) Data backup method and device
JP2017162062A (en) Information processing device, information processing system, information processing method, and program
JP5466740B2 (en) System failure recovery method and system for virtual server
CN108733460B (en) Method and apparatus for maintaining sessions for network storage devices
TW201621645A (en) Management system, method and device for recovering version of application
CN111125001A (en) Snap copy method, electronic device, and computer program product

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15874735

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15874735

Country of ref document: EP

Kind code of ref document: A1