WO2018107792A1 - 数据的增量恢复方法和装置 - Google Patents

数据的增量恢复方法和装置 Download PDF

Info

Publication number
WO2018107792A1
WO2018107792A1 PCT/CN2017/097678 CN2017097678W WO2018107792A1 WO 2018107792 A1 WO2018107792 A1 WO 2018107792A1 CN 2017097678 W CN2017097678 W CN 2017097678W WO 2018107792 A1 WO2018107792 A1 WO 2018107792A1
Authority
WO
WIPO (PCT)
Prior art keywords
backup
data block
data
mth
snapshot
Prior art date
Application number
PCT/CN2017/097678
Other languages
English (en)
French (fr)
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 华为技术有限公司
Priority to EP17880722.8A priority Critical patent/EP3474143B1/en
Publication of WO2018107792A1 publication Critical patent/WO2018107792A1/zh
Priority to US16/371,526 priority patent/US20190227710A1/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
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Definitions

  • the embodiments of the present application relate to data storage technologies, and in particular, to a method and an apparatus for incrementally recovering data.
  • Recovery of data includes full recovery and incremental recovery, where full recovery is to recover all data, incrementally restored to the existing disk, only the modified part between the current and backup restore points is restored. Since only the changed part of the data is recovered in the incremental recovery, this part of the data is often much smaller than the entire data, so the amount of data recovery can be greatly reduced, thereby speeding up the recovery process.
  • the difference between the snapshot of the current snapshot and the backup restore point is first analyzed, and the determined modified portion is restored by using the data of the restore point.
  • the embodiment of the present invention provides a method and an apparatus for incrementally recovering data, which are used to solve the technical problem of how to perform incremental data recovery when there is no snapshot at the backup and restore point in the prior art.
  • an embodiment of the present application provides a method for incrementally recovering data, including:
  • the method for incrementally recovering data provided by the foregoing first aspect, by creating a current snapshot of the data, determining a data block in which the current snapshot changes with respect to the mth backup, and restoring the data corresponding to the changed data block to the mth time
  • the data corresponding to the corresponding data block in the backup because the mth backup is not the last backup, that is, when the mth backup does not have a snapshot, the data block that changes by the current snapshot relative to the mth backup will change.
  • the data corresponding to the data block is restored to the data corresponding to the corresponding data block in the mth backup, ensuring that the incremental recovery is always effective, thereby improving the reliability of the incremental recovery.
  • the determining the data block in which the current snapshot changes with respect to the mth backup includes:
  • the snapshot of the t-th backup is the last backup snapshot, and only the t-th backup has a snapshot.
  • the data corresponding to the changed data block is restored to the data corresponding to the corresponding data block in the mth backup, including:
  • the data corresponding to the data block whose change is changed with respect to the mth backup is restored to the data corresponding to the corresponding data block in the mth backup.
  • the snapshot of the t-th backup is the snapshot of the last backup, and only the t-th backup has a snapshot, and the other t-1th backup does not have a snapshot. Since only the snapshots of the current snapshot and the t-th backup are stored in the system, and the snapshots of each backup are not stored, the storage space can be saved and the performance of the system can be improved.
  • the data corresponding to the data block whose change is changed with respect to the mth backup can be directly restored to the mth backup.
  • the data corresponding to the corresponding data block can improve the efficiency of data recovery.
  • the method further includes:
  • Corresponding data including:
  • Recovering data corresponding to the data block whose current snapshot is changed with respect to the snapshot of the t-th backup is restored to data corresponding to the corresponding data block in the t-th backup;
  • the data corresponding to the data block whose change is changed with respect to the mth backup is restored to the data corresponding to the corresponding data block in the mth backup.
  • the data corresponding to the data block whose current snapshot is changed with respect to the snapshot of the t-th backup may be restored.
  • the data corresponding to the corresponding data block in the t-th backup the data corresponding to the data block in which the t-th backup is changed with respect to the m-th backup is restored to the data corresponding to the corresponding data block in the m-th backup
  • m times backup is not the last backup, that is, when there is no snapshot in the mth backup
  • the data corresponding to the changed data block is restored to the mth time by determining the data block whose current snapshot changes with respect to the mth backup.
  • the data corresponding to the corresponding data block in the backup ensures that the incremental recovery is always effective, thereby improving the reliability of the incremental recovery.
  • the method further includes:
  • Corresponding data including:
  • the data in the data block corresponding to the recorded second storage location is restored to the data corresponding to the corresponding data block in the mth backup.
  • the first storage location of the data block that records the current snapshot relative to the snapshot of the tth backup may be recorded.
  • determining a data block in which the tth backup changes with respect to the mth backup, and recording a second storage location of the data block in which the tth backup is changed with respect to the mth backup, and correspondingly recording the first storage location The data in the data block is restored to the data corresponding to the corresponding data block in the t-th backup, and the data in the data block corresponding to the second storage location of the record is restored to the data corresponding to the corresponding data block in the m-th backup. Since all the changed data blocks are determined and then restored, the efficiency of data recovery can be improved.
  • the method before the determining the data block that the t-th backup changes with respect to the m-th backup, the method further includes:
  • the backup mapping table includes a storage location of the data block and a change identifier of the data block, where the change identifier is used to indicate whether the data block changes with respect to a previous backup, and After each change of the data block, the value of the change identifier corresponding to the data block is different.
  • the determining the data block that the t-th backup changes with respect to the m-th backup includes:
  • the data block whose value of the change identifier is not the same is determined as the data block in which the t-th backup changes with respect to the m-th backup.
  • the value of the change identifier corresponding to the data block in the backup map of the t-th backup by comparing the value of the change identifier corresponding to the data block in the backup map of the t-th backup, the value of the change identifier corresponding to the data block at the same storage location in the backup map of the m-th backup. Whether they are the same, thereby determining the data block in which the tth backup changes with respect to the mth backup, thereby improving the efficiency of determining the changed data block.
  • an incremental data recovery device including:
  • a determining module configured to determine a data block in which the current snapshot changes with respect to the mth backup, where m is a positive integer, and the mth backup is a non-last backup;
  • a recovery module configured to restore data corresponding to the changed data block to data corresponding to the corresponding data block in the mth backup.
  • the determining module is specifically configured to:
  • the recovery module is specifically configured to:
  • the data corresponding to the data block whose change is changed with respect to the mth backup is restored to the data corresponding to the corresponding data block in the mth backup.
  • the recovery module is specifically configured to:
  • Recovering data corresponding to the data block whose current snapshot is changed with respect to the snapshot of the t-th backup is restored to data corresponding to the corresponding data block in the t-th backup;
  • the recovery module is specifically configured to:
  • the data in the data block corresponding to the recorded second storage location is restored to the data corresponding to the corresponding data block in the mth backup.
  • the creating module is further configured to: create a backup mapping table, where the backup mapping table includes a storage location of the data block and a change identifier of the data block, where the change identifier is used for Indicates whether the data block changes with respect to the previous backup, and the value of the change identifier corresponding to the data block is different after each change of the data block.
  • the determining module is specifically configured to:
  • the data block whose value of the change identifier is not the same is determined as the data block in which the t-th backup changes with respect to the m-th backup.
  • the embodiment of the present application provides a terminal device, including:
  • the processor is further configured to determine a data block in which the current snapshot changes with respect to the mth backup, where m is a positive integer, and the mth backup is a non-last backup;
  • the processor is further configured to restore the data corresponding to the changed data block to data corresponding to the corresponding data block in the mth backup.
  • the processor is further configured to determine whether there is a changed data block between the current snapshot and the snapshot of the tth backup, where t is a positive integer, and m is less than t;
  • the processor is further configured to determine data that changes in the tth backup relative to the mth backup Piece.
  • the processor is further configured to restore the data corresponding to the data block in which the tth backup is changed with respect to the mth backup to the corresponding data in the mth backup.
  • the data corresponding to the block is further configured to restore the data corresponding to the data block in which the tth backup is changed with respect to the mth backup to the corresponding data in the mth backup.
  • the processor is further configured to compare the current snapshot with respect to the t-th The data corresponding to the data block in which the snapshot of the secondary backup changes is restored to the data corresponding to the corresponding data block in the t-th backup;
  • the processor is further configured to determine a data block that changes in the tth backup relative to the mth backup;
  • the processor is further configured to restore the data corresponding to the data block in which the tth backup is changed with respect to the mth backup to the data corresponding to the corresponding data block in the mth backup.
  • the processor is further configured to record the current snapshot relative to the t-th The first storage location of the data block in which the snapshot of the secondary backup changes;
  • the processor is further configured to determine a data block in which the tth backup changes with respect to the mth backup, and record a data block in which the tth backup changes with respect to the mth backup Second storage location;
  • the processor is further configured to restore the data in the data block corresponding to the first storage location of the record to the data corresponding to the corresponding data block in the tth backup;
  • the processor is further configured to restore the data in the data block corresponding to the recorded second storage location to the data corresponding to the corresponding data block in the mth backup.
  • the processor is further configured to create a backup mapping table, where the backup mapping table includes a storage location of the data block and a change identifier of the data block, where the change identifier is used to indicate Whether the data block changes with respect to the previous backup, and the value of the change identifier corresponding to the data block is different after each change of the data block.
  • the processor is further configured to compare the value of the change identifier corresponding to the data block in the backup mapping table of the tth backup, and store the same value in the backup mapping table of the mth backup. Whether the value of the change identifier corresponding to the data block at the location is the same;
  • the processor is further configured to determine, as the data block that the value of the change identifier is different, a data block that changes in the tth backup relative to the mth backup.
  • Figure 1 is a schematic diagram of data backup
  • Figure 2 is a schematic diagram of incremental backup
  • FIG. 3 is a schematic flowchart of Embodiment 1 of a method for incrementally recovering data according to an embodiment of the present disclosure
  • Figure 4 is a schematic diagram of incremental recovery
  • Figure 5 is a flow chart showing the determination of a changed data block
  • Figure 6a is a schematic diagram of a backup mapping table during full backup
  • Figure 6b is a schematic diagram of the backup mapping table in the case of incremental backup 1;
  • Figure 7a is a schematic diagram of a backup mapping table at the mth backup
  • Figure 7b is a schematic diagram of the backup mapping table at the tth backup.
  • FIG. 8 is a schematic flowchart diagram of Embodiment 2 of the method for incrementally recovering data
  • FIG. 9 is a schematic structural diagram of Embodiment 1 of an incremental device for recovering data according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of an embodiment of a terminal device according to an embodiment of the present invention.
  • the method for incrementally restoring data in the embodiment of the present application is applicable to the scenario of data incremental backup.
  • In order to quickly compare the difference between the two backups only the difference between the snapshots corresponding to the two backups needs to be compared. Just fine. However, too many snapshots will occupy the storage space of the system on the one hand, and affect the performance of the system on the other hand. Most backup systems keep a snapshot of the most recent backup. However, if the backup restore point selected by the user is not the last backup, the incremental recovery mode will be invalid, and only the full recovery mode can be used.
  • the method and apparatus for incrementally recovering data provided by the embodiments of the present application are directed to solving the problem in the prior art when the backup restore point is not the last backup, that is, when the backup restore point has no snapshot, how to use the incremental recovery method.
  • Technical issues with data recovery are directed to solving the problem in the prior art when the backup restore point is not the last backup, that is, when the backup restore point has no snapshot, how to use the incremental recovery method.
  • Figure 1 is a schematic diagram of data backup. As shown in Figure 1, when performing data backup, there is usually one full backup. The other t backups are incremental backups, and only the last snapshot is retained, that is, the incremental backup t The corresponding snapshot.
  • Figure 2 is a schematic diagram of incremental backup. As shown in Figure 2, it is assumed that there are 10000 blocks of data to be backed up. The shaded blocks in Figure 2 indicate that there is a difference from the last snapshot data. In the case of incremental backup, only Know the difference between snapshots, back up the modified part, and before the other data block references.
  • the snapshot at the time of incremental backup 1 and the snapshot at the time of full backup only modify the data block 800 and the data block 5000, so only the data block 800 and the data block 5000 need to be backed up, and other parts can be backed up without other backups.
  • the method of volume backup 1 is similar, and will not be described here.
  • FIG. 3 is a schematic flowchart diagram of Embodiment 1 of a method for incrementally recovering data according to an embodiment of the present disclosure.
  • the embodiment of the present application provides a method for incrementally recovering data, which may be performed by any device that performs an incremental recovery method of data, and the device may be implemented by software and/or hardware.
  • the device can be integrated in the terminal device.
  • the method in this embodiment may include:
  • Step 301 Create a current snapshot of the data.
  • the terminal device when the data is destroyed or the user wants to restore the data to the data at a certain moment before, the terminal device needs to create a current snapshot of the current data to determine the difference between the current snapshot and the mth backup.
  • the mth backup is the backup restore point where the user wants to restore data.
  • Step 302 Determine a data block whose current snapshot changes with respect to the mth backup, where m is a positive integer.
  • the data block in which the current snapshot changes with respect to the mth backup may be determined, where the mth backup is a backup restore point, which is a non-last backup. It is also a backup in the middle.
  • Step 303 Restore the data corresponding to the changed data block to the data corresponding to the corresponding data block in the mth backup.
  • the terminal device may restore the data corresponding to the changed data block in the current snapshot to the data corresponding to the corresponding data block in the mth backup.
  • FIG. 4 is a schematic diagram of incremental recovery. If the backup restore point is the last backup, the terminal device compares the snapshot of the current snapshot with the last backup t, and determines that only the data block 800 has changed, and then performs data. In the recovery, only the data corresponding to the data block 800 in the current snapshot needs to be restored to the data corresponding to the data block 800 of the incremental backup m, and the incremental recovery can be completed.
  • step 303 may specifically include:
  • Step 3021 Determine whether there is a changed data block between the current snapshot and the snapshot of the t-th backup.
  • the snapshot of the t-th backup is the snapshot of the last backup, and only the snapshot of the t-th backup exists, and the snapshot of the other t-1th backup does not exist. Since only the snapshots of the current snapshot and the t-th backup are stored in the system, and the snapshots of each backup are not stored, the storage space can be saved and the performance of the system can be improved.
  • step 3022 and step 3024 are performed after step 3022 is performed. Otherwise, step 3025 and step 3026 are performed.
  • Step 3022 The data corresponding to the data block whose current snapshot is changed with respect to the snapshot of the t-th backup is restored to the data corresponding to the corresponding data block in the t-th backup.
  • the data corresponding to the determined changed data block is restored to the corresponding data block in the t-th backup.
  • the data block 800 is changed according to the snapshot of the current snapshot relative to the t-th backup, and the data corresponding to the data block 800 in the current snapshot may be restored to the data block 800 corresponding to the t-th backup.
  • Step 3023 Determine a data block in which the tth backup changes with respect to the mth backup.
  • the terminal device restores the data corresponding to the data block that has changed in the current snapshot to the corresponding in the t-th backup. After the data corresponding to the data block, the data block in which the tth backup changes with respect to the mth backup is determined.
  • the terminal device may further create a backup mapping table, where the backup mapping table includes a storage location of the data block and a change of the data block.
  • the identifier is used to indicate whether the data block changes with respect to the previous backup, and the value of the change identifier corresponding to the data block is different after each change of the data block.
  • each backup data block needs to know the storage location of the specific data.
  • an array may be stored in the backup mapping table, and the sequence number of each array is a data block.
  • the block number, the array value is the change identifier, the change identifier and the block number can be used to obtain a unique file name, and store the specific data block.
  • FIG. 6a is a schematic diagram of a backup mapping table in full backup
  • FIG. 6b is a schematic diagram of a backup mapping table in the case of incremental backup 1.
  • the terminal device can create a backup when performing full backup.
  • mapping table in which the storage location of the data block and the change identifier corresponding to the data block are stored, such as the change identifier of the data block 0 is 0.
  • the change identifier of the data block 800 is 0... the change of the data block 10000 The ID is 0.
  • the terminal device will create a backup mapping table corresponding to the incremental backup 1, that is, the data block 800 and the data in the backup mapping table respectively.
  • the value of the change identifier corresponding to block 10000 is updated to 1. It should be noted that the value of the change identifier corresponding to each data block in the full backup will continue to be saved and will not be deleted for subsequent comparison.
  • the value of the changed data block corresponding to the change identifier may be changed, and it is worth noting that the value of the change identifier after each change It is different from the previous historical value. For example, in the case of full backup, the value of the change identifier corresponding to the data block 800 is 0. When the incremental backup 1 is changed, the data block 800 changes, and the value of the corresponding change identifier becomes 1. In the incremental backup 2, the data block 800 changes again, and the value of the corresponding change identifier becomes 2, that is, the value of the change identifier corresponding to the data block 800 cannot be 0 or 1.
  • the terminal device determines the data block whose t-th backup changes with respect to the m-th backup according to the change identifier in the backup mapping table. In the actual application, the terminal device compares the backup of the t-th backup.
  • the value of the change identifier corresponding to the data block in the mapping table is the same as the value of the change identifier corresponding to the data block at the same storage location in the backup mapping table of the m-th backup, and the data block whose value of the change identifier is not the same is determined as Tth backup phase The data block that changed for the mth backup.
  • the terminal device determines the t-th backup by comparing the value of the change identifier corresponding to each data block in the t-th backup and the m-th backup, because the change identifier corresponding to the data block is stored in the backup mapping table.
  • a block of data that changes relative to the mth backup For example, FIG. 7a is a schematic diagram of the backup mapping table in the mth backup, and FIG. 7b is a schematic diagram of the backup mapping table in the tth backup, as shown in FIG. 7a to FIG. 7b, the change of the data block 800 in the mth backup.
  • the value of the identifier is m-1
  • the value of the change identifier of the data block 5000 is m
  • the value of the change identifier of the data block 10000 is m
  • the value of the change identifier of the data block 800 at the t-th backup is m-1
  • the data is The block 800 does not change
  • the values of the change identifiers of the data block 5000 and the data block 10000 change during the mth backup and the tth backup. Therefore, the data block 5000 and the data block 10000 are the t-th backup relative to The mth backup of the changed data block.
  • step 3024 the data corresponding to the data block whose change is changed with respect to the mth backup is restored to the data corresponding to the corresponding data block in the mth backup.
  • the terminal device may restore the data corresponding to the changed data block to the corresponding data block in the m-th backup.
  • the data since the data block 5000 and the data block 10000 are changed, when the data is restored, the data corresponding to the data block 5000 and the data block 10000 is restored to the data block 5000 in the m-th backup. The data corresponding to the data block 10000.
  • Step 3025 Determine a data block in which the tth backup changes with respect to the mth backup.
  • the data block whose change is changed with respect to the mth backup may be directly determined.
  • the specific manner of determining the data block in which the t-th backup is changed with respect to the m-th backup is similar to the determination in step 3023, and details are not described herein again.
  • step 3026 the data corresponding to the data block whose change is changed with respect to the mth backup is restored to the data corresponding to the corresponding data block in the mth backup.
  • the data corresponding to the changed data block can be directly restored to the data corresponding to the corresponding data block in the mth backup.
  • the method for incrementally recovering data determines the data block in which the current snapshot changes with respect to the mth backup by creating a current snapshot of the data, and restores the data corresponding to the changed data block to the mth time.
  • the data corresponding to the corresponding data block in the backup because the mth backup is not the last backup, that is, when the mth backup does not have a snapshot, the data block that changes by the current snapshot relative to the mth backup will change.
  • the data corresponding to the data block is restored to the data corresponding to the corresponding data block in the mth backup, ensuring that the incremental recovery is always effective, thereby improving the reliability of the incremental recovery.
  • Step 303 can also include:
  • Step 801 Record a first storage location of the data block whose current snapshot changes with respect to the snapshot of the t-th backup.
  • the first storage location of the data block whose current snapshot is changed with respect to the snapshot of the t-th backup may be recorded first. For example, if the current snapshot is changed relative to the snapshot of the tth backup, the data block 800 is changed, and the storage location of the data block 800 can be recorded.
  • Step 802 Determine a data block in which the tth backup changes with respect to the mth backup, and record a second storage location of the data block in which the tth backup changes with respect to the mth backup.
  • the terminal device After recording, by the terminal device, the first storage location of the data block whose current snapshot is changed with respect to the snapshot of the tth backup, the terminal device determines the data block in which the tth backup changes with respect to the mth backup.
  • the specific determination manner is similar to that in step 3023, and details are not described herein again.
  • the second storage location of the changed data block is recorded. For example, if it is determined that the t-th backup is changed relative to the mth backup and the data block 1000 is changed, the storage location of the data block 1000 can be recorded.
  • Step 803 Restore the data in the data block corresponding to the recorded first storage location to the data corresponding to the corresponding data block in the t-th backup.
  • the terminal device after determining the changed data block, the terminal device does not perform recovery, but records the storage location of the changed data block, and then determines all the changed data blocks, and then determines Unified recovery. After the second storage location is recorded, the terminal device restores the data in the data block corresponding to the first storage location to the data corresponding to the corresponding data block in the t-th backup.
  • Step 804 Restore the data in the data block corresponding to the recorded second storage location to the data corresponding to the corresponding data block in the mth backup.
  • the terminal device restores the data in the data block corresponding to the second storage location to the corresponding data block in the mth backup. data.
  • the data of the snapshot of the current snapshot relative to the snapshot of the tth backup may be recorded.
  • the data in the data block corresponding to the first storage location of the record is restored to the data corresponding to the corresponding data block in the tth backup, and the data in the data block corresponding to the recorded second storage location is restored to the mth backup.
  • the data corresponding to the corresponding data block can improve the efficiency of data recovery because all the changed data blocks are determined and then restored.
  • the aforementioned program can be stored in a computer readable storage medium.
  • the program when executed, performs the steps including the foregoing method embodiments; and the foregoing storage medium includes various media that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
  • FIG. 9 is a schematic structural diagram of Embodiment 1 of an incremental device for recovering data according to an embodiment of the present invention.
  • the recovery device may be a stand-alone terminal device, or may be a device integrated in the terminal device, and the device may be implemented by software, hardware or a combination of software and hardware. As shown in FIG. 9, the recovery device includes:
  • a determining module 12 configured to determine a data block in which the current snapshot changes with respect to the mth backup, where m is a positive integer, and the mth backup is a non-last backup;
  • the recovery module 13 is configured to restore data corresponding to the changed data block to data corresponding to the corresponding data block in the mth backup.
  • the foregoing creating module 11, determining module 12, and recovering module 13 may be processors in the terminal device.
  • the incremental recovery device for data provided by the embodiment of the present invention may perform the foregoing method embodiment, and the implementation principle thereof Similar to the technical effect, it will not be described here.
  • the determining module 12 is specifically configured to:
  • the recovery module 13 is specifically configured to:
  • the data corresponding to the data block whose change is changed with respect to the mth backup is restored to the data corresponding to the corresponding data block in the mth backup.
  • the recovery module 13 is specifically configured to:
  • Recovering data corresponding to the data block whose current snapshot is changed with respect to the snapshot of the t-th backup is restored to data corresponding to the corresponding data block in the t-th backup;
  • the data corresponding to the data block whose change is changed with respect to the mth backup is restored to the data corresponding to the corresponding data block in the mth backup.
  • the recovery module 13 is specifically configured to:
  • the data in the data block corresponding to the recorded second storage location is restored to the data corresponding to the corresponding data block in the mth backup.
  • the creating module 11 is further configured to create a backup mapping table, where the backup mapping table includes a storage location of the data block and a change identifier of the data block, where the change identifier is used to indicate the Whether the data block changes with respect to the previous backup, and the value of the change identifier corresponding to the data block is different after each change of the data block.
  • the determining module 12 is specifically configured to:
  • the data block whose value of the change identifier is not the same is determined as the data block in which the t-th backup changes with respect to the m-th backup.
  • the incremental recovery device of the data provided by the embodiment of the present invention may perform the foregoing method embodiments, and the implementation principle and technical effects are similar, and details are not described herein again.
  • FIG. 10 is a schematic structural diagram of an embodiment of a terminal device according to an embodiment of the present invention.
  • the terminal device may include a transmitter 20, a processor 21, a memory 22, and at least one communication bus 23.
  • the communication bus 23 is used to implement a communication connection between components.
  • the memory 22 may include a high speed RAM memory, and may also include a non-volatile memory NVM, such as at least one disk memory, in which various programs may be stored for performing various processes. Function and method steps of implementing the embodiment.
  • the terminal device may further include a receiver 24.
  • the receiver 24 in this embodiment may be a corresponding input interface having a communication function and a function for receiving information.
  • the transmitter 20 in this embodiment may have a corresponding communication function. And the output interface for sending information functions.
  • the transmitter 20 and the receiver 24 may be integrated in one communication interface, or may be two independent communication interfaces.
  • the processor 21 is configured to create a current snapshot of the data.
  • the processor 21 is further configured to determine a data block in which the current snapshot changes with respect to the mth backup, where m is a positive integer, and the mth backup is a non-last backup;
  • the processor 21 is further configured to restore data corresponding to the changed data block to data corresponding to the corresponding data block in the mth backup.
  • the processor 21 is further configured to determine whether there is a data block that changes between the current snapshot and the snapshot of the tth backup, where t is a positive integer, and m is less than t;
  • the processor 21 is further configured to determine that the tth backup changes with respect to the mth backup if there is no changed data block between the current snapshot and the snapshot of the tth backup. Data block.
  • the processor 21 is further configured to restore the data corresponding to the data block in which the tth backup is changed with respect to the mth backup to the corresponding data block in the mth backup.
  • the data is further configured to restore the data corresponding to the data block in which the tth backup is changed with respect to the mth backup to the corresponding data block in the mth backup.
  • the processor 21 is further configured to compare the current snapshot with the tth backup.
  • the data corresponding to the changed data block is restored to the data corresponding to the corresponding data block in the t-th backup;
  • the processor 21 is further configured to determine a data block that changes in the tth backup relative to the mth backup;
  • the processor 21 is further configured to restore data corresponding to the data block in which the tth backup is changed with respect to the mth backup to data corresponding to the corresponding data block in the mth backup.
  • the processor 21 is further configured to record the current snapshot relative to the tth backup.
  • the processor 21 is further configured to determine a data block that changes in the tth backup relative to the mth backup, and record data that changes in the tth backup relative to the mth backup a second storage location of the block;
  • the processor 21 is further configured to restore the data in the data block corresponding to the recorded first storage location to the data corresponding to the corresponding data block in the t-th backup;
  • the processor 21 is further configured to restore the data in the data block corresponding to the recorded second storage location to the data corresponding to the corresponding data block in the mth backup.
  • the processor 21 is further configured to create a backup mapping table, where the backup mapping table includes a storage location of the data block and a change identifier of the data block, where the change identifier is used to indicate the Whether the data block changes with respect to the previous backup, and the value of the change identifier corresponding to the data block is different after each change of the data block.
  • the processor 21 is further configured to compare a value of the change identifier corresponding to the data block in the backup mapping table of the t-th backup, at the same storage location as in the backup mapping table of the m-th backup Whether the value of the change identifier corresponding to the data block is the same;
  • the processor 21 is further configured to determine, as the data block that the value of the change identifier is different, the data block that is changed by the t-th backup relative to the m-th backup.
  • the terminal device provided by the embodiment of the present invention may perform the foregoing method embodiment, and the implementation principle and technical effect thereof Similar, I will not repeat them here.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Retry When Errors Occur (AREA)

Abstract

一种数据的增量恢复方法和装置,该方法包括:创建数据的当前快照(301);确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数(302),所述第m次备份为非最后一次备份;将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据(303)。该方法和装置可以提高增量恢复的可靠性。

Description

数据的增量恢复方法和装置 技术领域
本申请实施例涉及数据存储技术,尤其涉及一种数据的增量恢复方法和装置。
背景技术
在这个信息化的时代,大量的数据需要保存在计算机中,为了确保数据不会因为灾难而丢失,经常需要对数据进行数据备份。当数据被破坏之后,可以根据备份的数据将数据进行恢复。
对数据进行恢复包括全量恢复和增量恢复,其中,全量恢复为对所有数据都进行恢复,增量恢复为在现有磁盘基础上,仅恢复当前与备份还原点之间的修改部分。由于增量恢复中仅恢复变化部分的数据,此部分数据往往远远小于全部数据,因此能大大减少数据的恢复量,从而加快恢复过程。现有技术中,采用增量恢复的方式恢复数据时,首先分析当前的快照和备份还原点的快照之间的差异,并将确定出的有修改的部分用还原点的数据进行恢复即可。
然而,在现有技术中,由于需要分析当前的快照和备份还原点的快照之间的差异才能进行数据的增量恢复,因此,在备份还原点无快照时,如何进行数据的增量恢复,成为目前亟待解决的技术问题。
发明内容
本申请实施例提供一种数据的增量恢复方法和装置,用以解决现有技术中在备份还原点无快照时,如何进行数据的增量恢复的技术问题。
第一方面,本申请实施例提供一种数据的增量恢复方法,包括:
创建数据的当前快照;
确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数,所述第m次备份为非最后一次备份;
将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
上述第一方面提供的数据的增量恢复方法,通过创建数据的当前快照,确定当前快照相对于第m次备份发生变化的数据块,将发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据,由于第m次备份为非最后一次备份,即第m次备份不存在快照时,通过确定当前快照相对于第m次备份发生变化的数据块,将发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据,确保了增量恢复总是有效,由此可以提高增量恢复的可靠性。
在一种可能的设计中,所述确定所述当前快照相对于第m次备份发生变化的数据块,包括:
判断所述当前快照与第t次备份的快照之间是否存在发生变化的数据块,其中,t为正整数,且m小于t;
若所述当前快照与所述第t次备份的快照之间不存在发生变化的数据块,则确定所述第t次备份相对于所述第m次备份发生变化的数据块。其中,第t次备份的快照为最后一次备份的快照,且只有第t次备份存在快照。
在一种可能的设计中,所述将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据,包括:
将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
在上述可能的设计中,第t次备份的快照为最后一次备份的快照,且只有第t次备份存在快照,而其它第t-1次备份均不存在快照。由于系统中只存储有当前快照和第t次备份的快照,而不需要将每一次备份的快照都进行存储,由此可以节省存储空间,提高系统的性能。
由于在当前快照与第t次备份的快照之间不存在发生变化的数据块时,可以直接将第t次备份相对于第m次备份发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据,由此可以提高数据恢复的效率。
在一种可能的设计中,所述方法还包括:
若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据,包括:
将所述当前快照相对于所述第t次备份的快照发生变化的数据块对应的数据,恢复为所述第t次备份中相应数据块对应的数据;
确定所述第t次备份相对于所述第m次备份发生变化的数据块;
将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
在上述可能的设计中,若当前快照与第t次备份的快照之间存在发生变化的数据块,则可以先将当前快照相对于第t次备份的快照发生变化的数据块对应的数据,恢复为第t次备份中相应数据块对应的数据,再将第t次备份相对于第m次备份发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据,由于第m次备份为非最后一次备份,即第m次备份不存在快照时,通过确定当前快照相对于第m次备份发生变化的数据块,将发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据,确保了增量恢复总是有效,由此可以提高增量恢复的可靠性。
在一种可能的设计中,所述方法还包括:
若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据,包括:
记录所述当前快照相对于所述第t次备份的快照发生变化的数据块的第一存储位置;
确定所述第t次备份相对于所述第m次备份发生变化的数据块,并记录所述第t次备份相对于所述第m次备份发生变化的数据块的第二存储位置;
将记录的第一存储位置对应的数据块中的数据,恢复为所述第t次备份中相应数据块对应的数据;
将记录的第二存储位置对应的数据块中的数据,恢复为所述第m次备份中相应数据块对应的数据。
在上述可能的设计中,若当前快照与第t次备份的快照之间存在发生变化的数据块时,可以将记录当前快照相对于第t次备份的快照发生变化的数据块的第一存储位置, 并确定第t次备份相对于第m次备份发生变化的数据块,并记录第t次备份相对于第m次备份发生变化的数据块的第二存储位置,再将记录的第一存储位置对应的数据块中的数据,恢复为第t次备份中相应数据块对应的数据,将记录的第二存储位置对应的数据块中的数据,恢复为第m次备份中相应数据块对应的数据,由于在将所有发生变化的数据块都确定出来后,再统一进行恢复,由此可以提高数据恢复的效率。
在一种可能的设计中,所述确定所述第t次备份相对于所述第m次备份发生变化的数据块之前,所述方法还包括:
创建备份映射表,所述备份映射表中包括所述数据块的存储位置和所述数据块的变化标识,所述变化标识用于表示所述数据块相对于前一次备份是否发生变化,且所述数据块在每次发生变化后,所述数据块对应的变化标识的值均不相同。
在一种可能的设计中,所述确定所述第t次备份相对于所述第m次备份发生变化的数据块,包括:
比较所述第t次备份的备份映射表中数据块对应的变化标识的值,与所述第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同;
将所述变化标识的值不相同的数据块确定为所述第t次备份相对于所述第m次备份发生变化的数据块。
在上述可能的设计中,通过比较第t次备份的备份映射表中数据块对应的变化标识的值,与第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同,以此确定第t次备份相对于第m次备份发生变化的数据块,由此可以提高确定发生变化的数据块的效率。
第二方面,本申请实施例提供一种数据的增量恢复装置,包括:
创建模块,用于创建数据的当前快照;
确定模块,用于确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数,所述第m次备份为非最后一次备份;
恢复模块,用于将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
在一种可能的设计中,所述确定模块,具体用于:
判断所述当前快照与第t次备份的快照之间是否存在发生变化的数据块,其中,t为正整数,且m小于t;
若所述当前快照与所述第t次备份的快照之间不存在发生变化的数据块,则确定所述第t次备份相对于所述第m次备份发生变化的数据块。
在一种可能的设计中,所述恢复模块,具体用于:
将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
在一种可能的设计中,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述恢复模块,具体用于:
将所述当前快照相对于所述第t次备份的快照发生变化的数据块对应的数据,恢复为所述第t次备份中相应数据块对应的数据;
确定所述第t次备份相对于所述第m次备份发生变化的数据块;
将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所 述第m次备份中相应数据块对应的数据。
在一种可能的设计中,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述恢复模块,具体用于:
记录所述当前快照相对于所述第t次备份的快照发生变化的数据块的第一存储位置;
确定所述第t次备份相对于所述第m次备份发生变化的数据块,并记录所述第t次备份相对于所述第m次备份发生变化的数据块的第二存储位置;
将记录的第一存储位置对应的数据块中的数据,恢复为所述第t次备份中相应数据块对应的数据;
将记录的第二存储位置对应的数据块中的数据,恢复为所述第m次备份中相应数据块对应的数据。
在一种可能的设计中,所述创建模块还用于,创建备份映射表,所述备份映射表中包括所述数据块的存储位置和所述数据块的变化标识,所述变化标识用于表示所述数据块相对于前一次备份是否发生变化,且所述数据块在每次发生变化后,所述数据块对应的变化标识的值均不相同。
在一种可能的设计中,所述确定模块,具体用于:
比较所述第t次备份的备份映射表中数据块对应的变化标识的值,与所述第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同;
将所述变化标识的值不相同的数据块确定为所述第t次备份相对于所述第m次备份发生变化的数据块。
上述第二方面以及第二方面的各可能的设计所提供的数据的增量恢复装置,其有益效果可以参照上述第一方面以及第一方面的各可能的设计所带来的有益效果,在此不再赘述。
第三方面,本申请实施例提供一种终端设备,包括:
处理器,用于创建数据的当前快照;
该处理器,还用于确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数,所述第m次备份为非最后一次备份;
该处理器,还用于将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
在一种可能的设计中,该处理器,还用于判断所述当前快照与第t次备份的快照之间是否存在发生变化的数据块,其中,t为正整数,且m小于t;
若所述当前快照与所述第t次备份的快照之间不存在发生变化的数据块,该处理器,还用于确定所述第t次备份相对于所述第m次备份发生变化的数据块。
在一种可能的设计中,该处理器,还用于将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
在一种可能的设计中,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则该处理器,还用于将所述当前快照相对于所述第t次备份的快照发生变化的数据块对应的数据,恢复为所述第t次备份中相应数据块对应的数据;
该处理器,还用于确定所述第t次备份相对于所述第m次备份发生变化的数据块;
该处理器,还用于将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
在一种可能的设计中,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则该处理器,还用于记录所述当前快照相对于所述第t次备份的快照发生变化的数据块的第一存储位置;
该处理器,还用于确定所述第t次备份相对于所述第m次备份发生变化的数据块,并记录所述第t次备份相对于所述第m次备份发生变化的数据块的第二存储位置;
该处理器,还用于将记录的第一存储位置对应的数据块中的数据,恢复为所述第t次备份中相应数据块对应的数据;
该处理器,还用于将记录的第二存储位置对应的数据块中的数据,恢复为所述第m次备份中相应数据块对应的数据。
在一种可能的设计中,该处理器,还用于创建备份映射表,所述备份映射表中包括所述数据块的存储位置和所述数据块的变化标识,所述变化标识用于表示所述数据块相对于前一次备份是否发生变化,且所述数据块在每次发生变化后,所述数据块对应的变化标识的值均不相同。
在一种可能的设计中,该处理器,还用于比较所述第t次备份的备份映射表中数据块对应的变化标识的值,与所述第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同;
该处理器,还用于将所述变化标识的值不相同的数据块确定为所述第t次备份相对于所述第m次备份发生变化的数据块。
上述第三方面以及第三方面的各可能的设计所提供的终端设备,其有益效果可以参照上述第一方面以及第一方面的各可能的设计所带来的有益效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1为数据备份的示意图;
图2为增量备份的示意图;
图3为本申请实施例提供的数据的增量恢复方法实施例一的流程示意图;
图4为增量恢复的示意图;
图5为确定发生变化的数据块的流程示意图;
图6a为全备份时备份映射表的示意图;
图6b为增量备份1时备份映射表的示意图;
图7a为第m次备份时备份映射表的示意图;
图7b为第t次备份时备份映射表的示意图。
图8所示的数据的增量恢复方法实施例二的流程示意图;
图9为本发明实施例提供的数据的增量恢复装置实施例一的结构示意图;
图10为本发明实施例提供的终端设备实施例的结构示意图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述。
本申请实施例涉及的数据的增量恢复方法,适用于数据增量备份的场景中,为了快速比对两次备份之间数据的差异,只需要比对两次备份对应的快照之间的差异即可。然而,过多的快照一方面会占用系统的存储空间,另一方面会影响系统的性能,因此,大 多数备份系统会保留最近一次备份的快照。但是,如果用户选择的备份还原点不是最后一次的备份,那么增量恢复的方式将会失效,只能使用全量恢复的方式。
因此,本申请实施例提供的数据的增量恢复方法和装置,旨在解决现有技术中当备份还原点不是最后一次的备份,即备份还原点无快照时,如何使用增量恢复的方式进行数据恢复的技术问题。
在对本申请的具体实施方式进行说明之前,先就增量备份进行详细介绍:
图1为数据备份的示意图,如图1所示,在进行数据备份时,通常有一次全备份,其他t次备份都是增量备份,并且只保留最后一次快照,也就是增量备份t所对应的快照。图2为增量备份的示意图,如图2所示,假定需要备份的数据一共有10000块,图2中有阴影的块表示与上次快照数据有差异,在进行增量备份时,只需要知道快照之间的差异,备份修改的部分,其它数据块引用之前的就可以了。例如增量备份1时的快照与全备份时的快照只修改了数据块800和数据块5000,因此只需要备份数据块800和数据块5000,其它部分都可以不备份,其它增量备份与增量备份1时的方式类似,此处不再赘述。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图3为本申请实施例提供的数据的增量恢复方法实施例一的流程示意图。本申请实施例提供了一种数据的增量恢复方法,该方法可以由任意执行数据的增量恢复方法的装置来执行,该装置可以通过软件和/或硬件实现。本实施例中,该装置可以集成在终端设备中。如图3所示,本实施例的方法可以包括:
步骤301、创建数据的当前快照。
在本实施例中,当数据被破坏或者用户想要将数据恢复到之前某个时刻的数据时,终端设备需要创建当前数据的当前快照,以确定出当前快照与第m次备份之间的差异。其中,第m次备份为用户想要还原数据的备份还原点。
步骤302、确定当前快照相对于第m次备份发生变化的数据块,其中,m为正整数。
在本实施例中,当终端设备创建了当前快照之后,将可以确定当前快照相对于第m次备份发生变化的数据块,其中,第m次备份为备份还原点,其为非最后一次备份,也即为中间某一次备份。
步骤303、将发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据。
在本实施例中,终端设备在确定出发生变化的数据块之后,可以将当前快照中发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据。
可选地,图4为增量恢复的示意图,若备份还原点为最后一次备份时,终端设备将会对比当前快照和最后一次备份t的快照,确定出只有数据块800有变化,则进行数据恢复时,只需要把当前快照中数据块800对应的数据恢复为增量备份m的数据块800对应的数据,即可完成增量恢复。
可选地,若备份还原点不是最后一次备份时,参见图5所示的确定发生变化的数据块的流程示意图,则上述步骤303具体可以包括:
步骤3021、判断当前快照与第t次备份的快照之间是否存在发生变化的数据块。
其中,t为正整数,且m小于t,在本实施例中,继续参照图4所示,由于第t次备份存在快照,通过比对当前快照与第t次备份的快照,即可获知哪些数据块发生了变化,如图 4中当前快照相对于第t次备份,数据块800发生了变化。
需要说明的是,第t次备份的快照为最后一次备份的快照,且只有第t次备份存在快照,而其它第t-1次备份均不存在快照。由于系统中只存储有当前快照和第t次备份的快照,而不需要将每一次备份的快照都进行存储,由此可以节省存储空间,提高系统的性能。
若当前快照与第t次备份的快照之间存在发生变化的数据块,则执行步骤3022后执行步骤3023和步骤3024,否则,执行步骤3025和步骤3026。
步骤3022、将当前快照相对于第t次备份的快照发生变化的数据块对应的数据,恢复为第t次备份中相应数据块对应的数据。
在本实施例中,若当前快照与第t次备份的快照之间存在发生变化的数据块,则将确定出的发生变化的数据块对应的数据恢复为第t次备份中相应数据块对应的数据。继续参照图4所示,由于当前快照相对于第t次备份的快照,数据块800发生了变化,则可以将当前快照中数据块800对应的数据恢复为第t次备份中数据块800对应的数据。
步骤3023、确定第t次备份相对于第m次备份发生变化的数据块。
在本实施例中,若当前快照与第t次备份的快照之间存在发生变化的数据块,则终端设备在将当前快照中发生变化的数据块对应的数据,恢复为第t次备份中相应数据块对应的数据之后,将确定第t次备份相对于第m次备份发生变化的数据块。
可选地,在确定第t次备份相对于第m次备份发生变化的数据块之前,终端设备还可以创建备份映射表,其中,该备份映射表中包括数据块的存储位置和数据块的变化标识,该变化标识用于表示数据块相对于前一次备份是否发生变化,且数据块在每次发生变化后,数据块对应的变化标识的值均不相同。
具体地,无论增量备份还是全量备份,每个备份数据块都需要知道具体数据的存储位置,在具体的实现过程中,可以在备份映射表中存储一个数组,每个数组的序号为数据块的块号,数组值即为变化标识,变化标识和块号就能得出唯一的文件名,存储具体的数据块。举例来说,图6a为全备份时备份映射表的示意图,图6b为增量备份1时备份映射表的示意图,如图6a-图6b所示,终端设备在进行全备份时,可以创建备份映射表,该备份映射表中存储有数据块的存储位置和该数据块对应的变化标识,如数据块0的变化标识为0……数据块800的变化标识为0……数据块10000的变化标识为0。在进行增量备份1时,数据块800和数据块10000对应的数据发生了变化,则终端设备将会创建增量备份1对应的备份映射表,即分别将备份映射表中数据块800和数据块10000对应的变化标识的值更新为1。需要进行说明的是,全备份时各数据块对应的变化标识的值也会继续保存,并不会删除,以便后续进行比较。类似地,在进行增量备份2时,若确定出数据块发生了变化,则可以将发生变化的数据块对应变化标识的值进行改变,值得注意的是,每次变化后的变化标识的值与之前的历史值均不相同,例如:在全备份时,数据块800对应的变化标识的值为0,在增量备份1时数据块800发生了变化,其对应的变化标识的值变为1,在增量备份2时数据块800又发生了变化,其对应的变化标识的值则变为2等,也就是说,数据块800对应的变化标识的值不能再为0或1。
在创建备份映射表之后,终端设备将根据备份映射表中的变化标识确定第t次备份相对于第m次备份发生变化的数据块,在实际应用中,终端设备将比较第t次备份的备份映射表中数据块对应的变化标识的值,与第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同,将变化标识的值不相同的数据块确定为第t次备份相 对于第m次备份发生变化的数据块。
具体地,由于备份映射表中存储有数据块对应的变化标识,终端设备将通过比较第t次备份和第m次备份中各数据块对应的变化标识的值,即可确定出第t次备份相对于第m次备份发生变化的数据块。例如:图7a为第m次备份时备份映射表的示意图,图7b为第t次备份时备份映射表的示意图,如图7a-图7b所示,在第m次备份时数据块800的变化标识的值为m-1,数据块5000的变化标识的值为m,数据块10000的变化标识的值为m,在第t次备份时数据块800的变化标识的值为m-1,数据块5000的变化标识的值为t,数据块10000的变化标识的值为p,由于在第m次备份和第t次备份时数据块800的变化标识的值都为m-1,因此,数据块800未发生变化,而在第m次备份和第t次备份时数据块5000和数据块10000的变化标识的值发生了变化,因此,数据块5000和数据块10000为第t次备份相对于第m次备份发生变化的数据块。
步骤3024、将第t次备份相对于第m次备份发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据。
在本实施例中,终端设备在确定出第t次备份相对于第m次备份发生变化的数据块之后,可以将发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据。继续参照图7a-图7b所示,由于数据块5000和数据块10000发生了变化,在进行数据恢复时,将数据块5000和数据块10000对应的数据恢复为第m次备份中数据块5000和数据块10000对应的数据。
步骤3025、确定第t次备份相对于第m次备份发生变化的数据块。
在本实施例中,若当前快照与第t次备份的快照之间不存在发生变化的数据块,则可以直接确定第t次备份相对于第m次备份发生变化的数据块。其中,确定第t次备份相对于第m次备份发生变化的数据块的具体方式,与步骤3023中的确定方式类似,此处不再赘述。
步骤3026、将第t次备份相对于第m次备份发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据。
在本实施例中,在确定出第t次备份相对于第m次备份发生变化的数据块之后,可以直接将发生变化的数据块对应的数据恢复为第m次备份中相应数据块对应的数据。
本申请实施例提供的数据的增量恢复方法,通过创建数据的当前快照,确定当前快照相对于第m次备份发生变化的数据块,将发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据,由于第m次备份为非最后一次备份,即第m次备份不存在快照时,通过确定当前快照相对于第m次备份发生变化的数据块,将发生变化的数据块对应的数据,恢复为第m次备份中相应数据块对应的数据,确保了增量恢复总是有效,由此可以提高增量恢复的可靠性。
可选地,参见图8所示的数据的增量恢复方法实施例二的流程示意图,如图8所示,若当前快照与第t次备份的快照之间存在发生变化的数据块,则上述步骤303还可以包括:
步骤801、记录当前快照相对于第t次备份的快照发生变化的数据块的第一存储位置。
在本实施例中,若当前快照与第t次备份的快照之间存在发生变化的数据块,则可以先记录当前快照相对于第t次备份的快照发生变化的数据块的第一存储位置。例如:若当前快照相对于第t次备份的快照,数据块800发生了变化,则可以将数据块800的存储位置进行记录。
步骤802、确定第t次备份相对于第m次备份发生变化的数据块,并记录第t次备份相对于第m次备份发生变化的数据块的第二存储位置。
在本实施例中,终端设备在记录当前快照相对于第t次备份的快照发生变化的数据块的第一存储位置之后,将确定第t次备份相对于第m次备份发生变化的数据块,具体的确定方式与步骤3023中类似,此处不再赘述。确定出第t次备份相对于第m次备份发生变化的数据块之后,将发生变化的数据块的第二存储位置进行记录。例如:若确定出第t次备份相对于第m次备份,数据块1000发生了变化,则可以将数据块1000的存储位置进行记录。
步骤803、将记录的第一存储位置对应的数据块中的数据,恢复为第t次备份中相应数据块对应的数据。
在本实施例中,终端设备在确定出发生变化的数据块之后,先不进行恢复,而是将发生变化的数据块的存储位置进行记录,再将所有发生变化的数据块都确定后,再统一进行恢复。在将第二存储位置进行记录之后,终端设备将第一存储位置对应的数据块中的数据,恢复为第t次备份中相应数据块对应的数据。
步骤804、将记录的第二存储位置对应的数据块中的数据,恢复为第m次备份中相应数据块对应的数据。
在本实施例中,终端设备在将第一存储位置对应的数据块中的数据恢复完成之后,将第二存储位置对应的数据块中的数据,恢复为第m次备份中相应数据块对应的数据。
本申请实施例提供的数据的增量恢复方法,若当前快照与第t次备份的快照之间存在发生变化的数据块时,可以将记录当前快照相对于第t次备份的快照发生变化的数据块的第一存储位置,并确定第t次备份相对于第m次备份发生变化的数据块,并记录第t次备份相对于第m次备份发生变化的数据块的第二存储位置,再将记录的第一存储位置对应的数据块中的数据,恢复为第t次备份中相应数据块对应的数据,将记录的第二存储位置对应的数据块中的数据,恢复为第m次备份中相应数据块对应的数据,由于在将所有发生变化的数据块都确定出来后,再统一进行恢复,由此可以提高数据恢复的效率。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图9为本发明实施例提供的数据的增量恢复装置实施例一的结构示意图。该恢复装置可以为独立的终端设备,还可以为集成在终端设备中的装置,该装置可以通过软件、硬件或者软硬件结合的方式实现。如图9所示,该恢复装置包括:
创建模块11,用于创建数据的当前快照;
确定模块12,用于确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数,所述第m次备份为非最后一次备份;
恢复模块13,用于将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选的,上述创建模块11、确定模块12和恢复模块13对应可以为终端设备中的处理器。
本发明实施例提供的数据的增量恢复装置,可以执行上述方法实施例,其实现原理 和技术效果类似,在此不再赘述。
可选地,所述确定模块12,具体用于:
判断所述当前快照与第t次备份的快照之间是否存在发生变化的数据块,其中,t为正整数,且m小于t;
若所述当前快照与所述第t次备份的快照之间不存在发生变化的数据块,则确定所述第t次备份相对于所述第m次备份发生变化的数据块。
可选地,所述恢复模块13,具体用于:
将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选地,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述恢复模块13,具体用于:
将所述当前快照相对于所述第t次备份的快照发生变化的数据块对应的数据,恢复为所述第t次备份中相应数据块对应的数据;
确定所述第t次备份相对于所述第m次备份发生变化的数据块;
将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选地,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述恢复模块13,具体用于:
记录所述当前快照相对于所述第t次备份的快照发生变化的数据块的第一存储位置;
确定所述第t次备份相对于所述第m次备份发生变化的数据块,并记录所述第t次备份相对于所述第m次备份发生变化的数据块的第二存储位置;
将记录的第一存储位置对应的数据块中的数据,恢复为所述第t次备份中相应数据块对应的数据;
将记录的第二存储位置对应的数据块中的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选地,所述创建模块11,还用于创建备份映射表,所述备份映射表中包括所述数据块的存储位置和所述数据块的变化标识,所述变化标识用于表示所述数据块相对于前一次备份是否发生变化,且所述数据块在每次发生变化后,所述数据块对应的变化标识的值均不相同。
可选地,所述确定模块12,具体用于:
比较所述第t次备份的备份映射表中数据块对应的变化标识的值,与所述第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同;
将所述变化标识的值不相同的数据块确定为所述第t次备份相对于所述第m次备份发生变化的数据块。
本发明实施例提供的数据的增量恢复装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
图10为本发明实施例提供的终端设备实施例的结构示意图。如图10所示,该终端设备可以包括发送器20、处理器21、存储器22和至少一个通信总线23。通信总线23用于实现元件之间的通信连接。存储器22可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,存储器22中可以存储各种程序,用于完成各种处理 功能以及实现本实施例的方法步骤。另外,该终端设备还可以包括接收器24,本实施例中的接收器24可以为相应的具有通信功能和接收信息功能的输入接口,本实施例中的发送器20可以为相应的具有通信功能和发送信息功能的输出接口。可选的,该发送器20和接收器24可以集成在一个通信接口中,也可以分别为独立的两个通信接口。
本实施例中,处理器21,用于创建数据的当前快照;
所述处理器21,还用于确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数,所述第m次备份为非最后一次备份;
所述处理器21,还用于将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选地,所述处理器21,还用于判断所述当前快照与第t次备份的快照之间是否存在发生变化的数据块,其中,t为正整数,且m小于t;
若所述当前快照与所述第t次备份的快照之间不存在发生变化的数据块,所述处理器21,还用于确定所述第t次备份相对于所述第m次备份发生变化的数据块。
可选地,所述处理器21,还用于将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选地,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述处理器21,还用于将所述当前快照相对于所述第t次备份的快照发生变化的数据块对应的数据,恢复为所述第t次备份中相应数据块对应的数据;
所述处理器21,还用于确定所述第t次备份相对于所述第m次备份发生变化的数据块;
所述处理器21,还用于将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选地,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述处理器21,还用于记录所述当前快照相对于所述第t次备份的快照发生变化的数据块的第一存储位置;
所述处理器21,还用于确定所述第t次备份相对于所述第m次备份发生变化的数据块,并记录所述第t次备份相对于所述第m次备份发生变化的数据块的第二存储位置;
所述处理器21,还用于将记录的第一存储位置对应的数据块中的数据,恢复为所述第t次备份中相应数据块对应的数据;
所述处理器21,还用于将记录的第二存储位置对应的数据块中的数据,恢复为所述第m次备份中相应数据块对应的数据。
可选地,所述处理器21,还用于创建备份映射表,所述备份映射表中包括所述数据块的存储位置和所述数据块的变化标识,所述变化标识用于表示所述数据块相对于前一次备份是否发生变化,且所述数据块在每次发生变化后,所述数据块对应的变化标识的值均不相同。
可选地,所述处理器21,还用于比较所述第t次备份的备份映射表中数据块对应的变化标识的值,与所述第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同;
所述处理器21,还用于将所述变化标识的值不相同的数据块确定为所述第t次备份相对于所述第m次备份发生变化的数据块。
本发明实施例提供的终端设备,可以执行上述方法实施例,其实现原理和技术效果 类似,在此不再赘述。
最后应说明的是:在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (14)

  1. 一种数据的增量恢复方法,其特征在于,包括:
    创建数据的当前快照;
    确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数,所述第m次备份为非最后一次备份;
    将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
  2. 根据权利要求1所述的方法,其特征在于,所述确定所述当前快照相对于第m次备份发生变化的数据块,包括:
    判断所述当前快照与第t次备份的快照之间是否存在发生变化的数据块,其中,t为正整数,且m小于t;
    若所述当前快照与所述第t次备份的快照之间不存在发生变化的数据块,则确定所述第t次备份相对于所述第m次备份发生变化的数据块。
  3. 根据权利要求2所述的方法,其特征在于,所述将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据,包括:
    将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
  4. 根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
    若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据,包括:
    将所述当前快照相对于所述第t次备份的快照发生变化的数据块对应的数据,恢复为所述第t次备份中相应数据块对应的数据;
    确定所述第t次备份相对于所述第m次备份发生变化的数据块;
    将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
  5. 根据权利要求2或3所述的方法,其特征在于,所述方法还包括:
    若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据,包括:
    记录所述当前快照相对于所述第t次备份的快照发生变化的数据块的第一存储位置;
    确定所述第t次备份相对于所述第m次备份发生变化的数据块,并记录所述第t次备份相对于所述第m次备份发生变化的数据块的第二存储位置;
    将记录的第一存储位置对应的数据块中的数据,恢复为所述第t次备份中相应数据块对应的数据;
    将记录的第二存储位置对应的数据块中的数据,恢复为所述第m次备份中相应数据块对应的数据。
  6. 根据权利要求2-5任一项所述的方法,其特征在于,所述确定所述第t次备份相对于所述第m次备份发生变化的数据块之前,所述方法还包括:
    创建备份映射表,所述备份映射表中包括所述数据块的存储位置和所述数据块的变化标识,所述变化标识用于表示所述数据块相对于前一次备份是否发生变化,且所述数据块在每次发生变化后,所述数据块对应的变化标识的值均不相同。
  7. 根据权利要求6所述的方法,其特征在于,所述确定所述第t次备份相对于所述第m次备份发生变化的数据块,包括:
    比较所述第t次备份的备份映射表中数据块对应的变化标识的值,与所述第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同;
    将所述变化标识的值不相同的数据块确定为所述第t次备份相对于所述第m次备份发生变化的数据块。
  8. 一种数据的增量恢复装置,其特征在于,包括:
    创建模块,用于创建数据的当前快照;
    确定模块,用于确定所述当前快照相对于第m次备份发生变化的数据块,其中,m为正整数,所述第m次备份为非最后一次备份;
    恢复模块,用于将所述发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
  9. 根据权利要求8所述的装置,其特征在于,所述确定模块,具体用于:
    判断所述当前快照与第t次备份的快照之间是否存在发生变化的数据块,其中,t为正整数,且m小于t;
    若所述当前快照与所述第t次备份的快照之间不存在发生变化的数据块,则确定所述第t次备份相对于所述第m次备份发生变化的数据块。
  10. 根据权利要求9所述的装置,其特征在于,所述恢复模块,具体用于:
    将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
  11. 根据权利要求9或10所述的装置,其特征在于,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述恢复模块,具体用于:
    将所述当前快照相对于所述第t次备份的快照发生变化的数据块对应的数据,恢复为所述第t次备份中相应数据块对应的数据;
    确定所述第t次备份相对于所述第m次备份发生变化的数据块;
    将所述第t次备份相对于所述第m次备份发生变化的数据块对应的数据,恢复为所述第m次备份中相应数据块对应的数据。
  12. 根据权利要求9或10所述的装置,其特征在于,若所述当前快照与所述第t次备份的快照之间存在发生变化的数据块,则所述恢复模块,具体用于:
    记录所述当前快照相对于所述第t次备份的快照发生变化的数据块的第一存储位置;
    确定所述第t次备份相对于所述第m次备份发生变化的数据块,并记录所述第t次备份相对于所述第m次备份发生变化的数据块的第二存储位置;
    将记录的第一存储位置对应的数据块中的数据,恢复为所述第t次备份中相应数据块对应的数据;
    将记录的第二存储位置对应的数据块中的数据,恢复为所述第m次备份中相应数据块对应的数据。
  13. 根据权利要求9-12任一项所述的装置,其特征在于,所述创建模块还用于,创建备份映射表,所述备份映射表中包括所述数据块的存储位置和所述数据块的变化标识,所述变化标识用于表示所述数据块相对于前一次备份是否发生变化,且所述数据块在每次发生变化后,所述数据块对应的变化标识的值均不相同。
  14. 根据权利要求13所述的装置,其特征在于,所述确定模块,具体用于:
    比较所述第t次备份的备份映射表中数据块对应的变化标识的值,与所述第m次备份的备份映射表中相同存储位置处的数据块对应的变化标识的值是否相同;
    将所述变化标识的值不相同的数据块确定为所述第t次备份相对于所述第m次备份发生变化的数据块。
PCT/CN2017/097678 2016-12-15 2017-08-16 数据的增量恢复方法和装置 WO2018107792A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP17880722.8A EP3474143B1 (en) 2016-12-15 2017-08-16 Method and apparatus for incremental recovery of data
US16/371,526 US20190227710A1 (en) 2016-12-15 2019-04-01 Incremental data restoration method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201611161748.5 2016-12-15
CN201611161748.5A CN106681862B (zh) 2016-12-15 2016-12-15 数据的增量恢复方法和装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/371,526 Continuation US20190227710A1 (en) 2016-12-15 2019-04-01 Incremental data restoration method and apparatus

Publications (1)

Publication Number Publication Date
WO2018107792A1 true WO2018107792A1 (zh) 2018-06-21

Family

ID=58869011

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/097678 WO2018107792A1 (zh) 2016-12-15 2017-08-16 数据的增量恢复方法和装置

Country Status (4)

Country Link
US (1) US20190227710A1 (zh)
EP (1) EP3474143B1 (zh)
CN (1) CN106681862B (zh)
WO (1) WO2018107792A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106681862B (zh) * 2016-12-15 2020-12-04 华为技术有限公司 数据的增量恢复方法和装置
CN110018987B (zh) * 2017-11-08 2023-03-21 阿里巴巴集团控股有限公司 快照创建方法、装置及系统
CN108920308A (zh) * 2018-07-16 2018-11-30 郑州云海信息技术有限公司 一种数据恢复处理的方法、装置及计算机存储介质
CN110825559A (zh) * 2018-08-10 2020-02-21 华为技术有限公司 一种数据处理方法及设备
CN112988473B (zh) * 2021-05-10 2021-11-23 南京云信达科技有限公司 一种备份数据实时恢复方法及系统
US11544156B1 (en) * 2021-06-28 2023-01-03 Amazon Technologies, Inc. Incremental restore for volumes using object-based snapshots

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050010592A1 (en) * 2003-07-08 2005-01-13 John Guthrie Method and system for taking a data snapshot
CN101770410A (zh) * 2009-01-07 2010-07-07 联想(北京)有限公司 基于客户操作系统的系统还原方法、虚拟机管理器及系统
CN103034566A (zh) * 2012-12-06 2013-04-10 华为技术有限公司 虚拟机还原的方法和装置
CN103645968A (zh) * 2013-12-02 2014-03-19 北京奇虎科技有限公司 一种浏览器状态复原方法和装置
CN104166606A (zh) * 2014-08-29 2014-11-26 华为技术有限公司 文件备份方法和主存储设备
CN106681862A (zh) * 2016-12-15 2017-05-17 华为技术有限公司 数据的增量恢复方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665815B1 (en) * 2000-06-22 2003-12-16 Hewlett-Packard Development Company, L.P. Physical incremental backup using snapshots
US7844577B2 (en) * 2002-07-15 2010-11-30 Symantec Corporation System and method for maintaining a backup storage system for a computer system
US7802134B1 (en) * 2005-08-18 2010-09-21 Symantec Corporation Restoration of backed up data by restoring incremental backup(s) in reverse chronological order
US8918606B1 (en) * 2009-05-01 2014-12-23 Symantec Corporation Techniques for providing incremental backups
US9904598B2 (en) * 2015-04-21 2018-02-27 Commvault Systems, Inc. Content-independent and database management system-independent synthetic full backup of a database based on snapshot technology

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050010592A1 (en) * 2003-07-08 2005-01-13 John Guthrie Method and system for taking a data snapshot
CN101770410A (zh) * 2009-01-07 2010-07-07 联想(北京)有限公司 基于客户操作系统的系统还原方法、虚拟机管理器及系统
CN103034566A (zh) * 2012-12-06 2013-04-10 华为技术有限公司 虚拟机还原的方法和装置
CN103645968A (zh) * 2013-12-02 2014-03-19 北京奇虎科技有限公司 一种浏览器状态复原方法和装置
CN104166606A (zh) * 2014-08-29 2014-11-26 华为技术有限公司 文件备份方法和主存储设备
CN106681862A (zh) * 2016-12-15 2017-05-17 华为技术有限公司 数据的增量恢复方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3474143A4 *

Also Published As

Publication number Publication date
EP3474143A1 (en) 2019-04-24
US20190227710A1 (en) 2019-07-25
CN106681862A (zh) 2017-05-17
CN106681862B (zh) 2020-12-04
EP3474143B1 (en) 2020-07-29
EP3474143A4 (en) 2019-07-10

Similar Documents

Publication Publication Date Title
WO2018107792A1 (zh) 数据的增量恢复方法和装置
US8229896B1 (en) Method and apparatus for identifying data blocks required for restoration
US9152500B1 (en) Hash collision recovery in a deduplication vault
US8281093B1 (en) Systems and methods for creating consolidated backups of snapshot hierarchies
US9348827B1 (en) File-based snapshots for block-based backups
CN106776130B (zh) 一种日志恢复方法、存储装置和存储节点
US9367598B2 (en) Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation
US7685189B2 (en) Optimizing backup and recovery utilizing change tracking
US20170344433A1 (en) Apparatus and method for data migration
US7801867B2 (en) Optimizing backup and recovery utilizing change tracking
US10860447B2 (en) Database cluster architecture based on dual port solid state disk
CN110543386B (zh) 一种数据存储方法、装置、设备和存储介质
US10049012B1 (en) Time based checkpoint restart
US11550595B2 (en) Adaptive system for smart boot sequence formation of VMs for disaster recovery
CN113360322A (zh) 一种基于备份系统恢复数据的方法及设备
US8914325B2 (en) Change tracking for multiphase deduplication
CN115562905A (zh) 一种备份方法、系统、装置及计算机可读存储介质
CN107329699B (zh) 一种纠删重写方法及系统
WO2017067397A1 (zh) 一种数据恢复方法和装置
CN108089942B (zh) 一种数据备份、恢复方法及装置
US11435933B2 (en) Using any-pit backups for retroactive backup compliance and hardening
US9588716B1 (en) Method and system for backup operations for shared volumes
KR101996895B1 (ko) 데이터베이스 복구 방법 및 장치
CN117785546A (zh) 数据库备份的方法、系统和计算设备集群
CN112269691A (zh) 一种设备配置恢复的方法、装置、设备及介质

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: 17880722

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017880722

Country of ref document: EP

Effective date: 20190115

NENP Non-entry into the national phase

Ref country code: DE