CN108681494B - Backup data restoration method and device, user equipment and storage medium - Google Patents

Backup data restoration method and device, user equipment and storage medium Download PDF

Info

Publication number
CN108681494B
CN108681494B CN201810493240.8A CN201810493240A CN108681494B CN 108681494 B CN108681494 B CN 108681494B CN 201810493240 A CN201810493240 A CN 201810493240A CN 108681494 B CN108681494 B CN 108681494B
Authority
CN
China
Prior art keywords
data
restored
backup data
backup
selection instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810493240.8A
Other languages
Chinese (zh)
Other versions
CN108681494A (en
Inventor
刘梦阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Clerware Technology Co ltd
Original Assignee
Shenzhen Clerware Technology Co ltd
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 Shenzhen Clerware Technology Co ltd filed Critical Shenzhen Clerware Technology Co ltd
Priority to CN201810493240.8A priority Critical patent/CN108681494B/en
Publication of CN108681494A publication Critical patent/CN108681494A/en
Application granted granted Critical
Publication of CN108681494B publication Critical patent/CN108681494B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The invention discloses a backup data restoration method, a backup data restoration device, user equipment and a storage medium. The method compares the current data in the storage object to be restored with the backup data to be restored to determine the effective data difference area and the ineffective data difference area in the storage object to be restored, performs data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored, and performs data resetting on the ineffective data difference area in the storage object to be restored to realize data restoration on the storage object to be restored, so that the data capacity required to be replicated for restoration is obviously smaller than the data capacity in the final restoration target storage object, thereby reducing the software and hardware resources required to be occupied during restoration, and improving the efficiency of data restoration.

Description

Backup data restoration method and device, user equipment and storage medium
Technical Field
The present invention relates to the field of data security technologies, and in particular, to a backup data restoring method and apparatus, a user device, and a storage medium.
Background
In the field of data security, in order to ensure that a computer information system continuously and normally works, the situation that the computer information system cannot normally work due to security events such as computer faults or data loss and tampering is solved. Backup and restore techniques are often used to replicate data in a computer and restore data in a computer's information system to a state at the time of backup when needed.
The backup restoration in the prior art generally adopts the following three schemes:
the first scheme is as follows: performing data coverage for multiple times in the reduction target storage object; that is, the backups restore the data in each backup to the target storage object in the order from earliest to latest and overwrite the already existing data.
However, the data capacity that needs to be copied in the restoration is the sum of the data capacities in all the backups, so that the restoration efficiency is too low.
The second scheme is as follows: copying data to a restoration target storage object in the order from the latest to the earliest; that is, the backups restore the data in each backup to the target storage object in the order from the latest to the earliest, and do not cover the area where the data has been copied in the current restoration.
Although this scheme greatly reduces the data capacity to be copied for restoration compared to the first scheme, the data capacity to be copied for restoration is not less than the data capacity in the final restoration target storage object, and the restoration efficiency is low.
In the third scheme: establishing a mapping relation from each area in the reduction target storage object to the data in the backup, and copying the data to the reduction target storage object based on the mapping relation; before actually copying the data, generating the mapping relation between each area in the target storage object and the data in each backup by using a mode similar to the second scheme, and copying the data from the backup to the target storage object based on the mapping relation.
Compared with the second scheme, although the scheme supports data replication according to the optimal performance of the target storage object, the data capacity required to be replicated for restoration is not less than the data capacity in the final restoration target storage object, and the restoration efficiency is still low.
The above is only for the purpose of assisting understanding of the technical aspects of the present invention, and does not represent an admission that the above is prior art.
Disclosure of Invention
The invention mainly aims to provide a backup data restoring method, a backup data restoring device, user equipment and a storage medium, and aims to solve the technical problem that the backup data restoring efficiency is low in the prior art.
In order to achieve the above object, the present invention provides a backup data restoring method, including the following steps:
responding to an object selection instruction input by a user, and determining a storage object to be restored according to the object selection instruction;
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and determining backup data to be restored according to the target time;
comparing the current data in the storage object to be restored with the backup data to be restored to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, wherein the effective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored has the data to be restored, and the ineffective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored does not have the data to be restored;
and performing data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored, and performing data resetting on the ineffective data difference area in the storage object to be restored so as to realize data restoration on the storage object to be restored.
Preferably, before the responding to an object selection instruction input by a user and determining a storage object to be restored according to the object selection instruction, the method further includes:
continuously recording backup data of a storage object to be restored to establish a first mapping relation table, wherein the first mapping relation table comprises a corresponding relation between continuous time and the backup data;
correspondingly, the responding to the time selection instruction input by the user, determining the corresponding target time according to the time selection instruction, and determining the backup data to be restored according to the target time specifically include:
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
Preferably, before the responding to the time selection instruction input by the user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored, the method further includes:
displaying the continuous time in the first mapping relation table;
correspondingly, the responding to the time selection instruction input by the user, determining the corresponding target time according to the time selection instruction, searching the backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as the backup data to be restored specifically includes:
responding to a time selection instruction input by a user based on the displayed continuous time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
Preferably, before the responding to an object selection instruction input by a user and determining a storage object to be restored according to the object selection instruction, the method further includes:
acquiring backup data and corresponding backup time when the data backup is carried out on the storage object to be restored, and adding the acquired backup data and the corresponding backup time into a second mapping relation table;
correspondingly, the method further includes, in response to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and before determining backup data to be restored according to the target time, the method further includes:
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
Preferably, before responding to a time selection instruction input by a user based on a displayed backup time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored, the method further includes:
displaying the backup time in the second mapping relation table;
correspondingly, the responding to the time selection instruction input by the user, determining the corresponding target time according to the time selection instruction, searching the backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as the backup data to be restored specifically includes:
and responding to a time selection instruction input by a user based on the displayed backup time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
Preferably, the comparing the current data in the storage object to be restored with the backup data to be restored to determine an effective data difference area and an invalid data difference area in the storage object to be restored specifically includes:
acquiring each first storage area where the current data in the storage object to be restored is located, and acquiring each second storage area where the backup data to be restored is located;
and comparing the data of the first storage area and the second storage area to determine an effective data difference area and an ineffective data difference area in the storage object to be restored.
Preferably, the data comparison between the first storage area and the second storage area is performed to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, and specifically includes:
searching the same storage area in the first storage area and the second storage area, and comparing the data of the searched same storage area;
taking the searched storage areas with different data in the same storage area as the effective data difference area;
and taking the other storage areas except the searched same storage area in the first storage area as the invalid data difference area.
In addition, to achieve the above object, the present invention further provides a user equipment, including: the backup data recovery system comprises a memory, a processor and a backup data recovery program stored on the memory and capable of running on the processor, wherein the backup data recovery program is configured to realize the steps of the backup data recovery method.
In addition, to achieve the above object, the present invention also provides a computer readable storage medium having stored thereon a backup data restoring program, which when executed by a processor, implements the steps of the backup data restoring method as described above.
In addition, to achieve the above object, the present invention further provides a backup data restoring apparatus, including:
the object selection module is used for responding to an object selection instruction input by a user and determining a storage object to be restored according to the object selection instruction;
the time selection module is used for responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and determining backup data to be restored according to the target time;
the data comparison module is used for comparing the current data in the storage object to be restored with the backup data to be restored so as to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, wherein the effective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored has the data to be restored in the area, and the ineffective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored does not have the data to be restored in the area;
and the data replication module is used for performing data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored and performing data resetting on the ineffective data difference area in the storage object to be restored so as to realize data restoration on the storage object to be restored.
The method compares the current data in the storage object to be restored with the backup data to be restored to determine the effective data difference area and the ineffective data difference area in the storage object to be restored, performs data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored, and performs data resetting on the ineffective data difference area in the storage object to be restored to realize data restoration on the storage object to be restored, so that the data capacity required to be replicated for restoration is obviously smaller than the data capacity in the final restoration target storage object, thereby reducing the software and hardware resources required to be occupied during restoration, and improving the efficiency of data restoration.
Drawings
FIG. 1 is a schematic diagram of a user equipment architecture of a hardware operating environment according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating a backup data restoring method according to a first embodiment of the present invention;
FIG. 3 is a diagram illustrating region numbering of storage objects in an example;
FIG. 4 is a diagram of a region pair with no valid data and valid data, according to an example;
FIG. 5 is a schematic diagram of an area where a full backup at time A corresponds to a source storage object having valid data in an example;
FIG. 6 is a schematic diagram of an area where a source storage object has valid data corresponding to the incremental backup at time B in an example;
FIG. 7 is a schematic diagram of an area where the incremental backup at time C corresponds to the source storage object having valid data in an example;
FIG. 8 is a schematic diagram of an area where the incremental backup at time D corresponds to the source storage object having valid data in an example;
FIG. 9 is a diagram illustrating an example of an area where data change occurs at time D relative to time A;
FIG. 10 is a diagram illustrating an example of valid data differential area and invalid data differential area;
FIG. 11 is a region partition diagram of a storage object in one example;
FIG. 12 is a region division diagram of a storage object shown in FIG. 11 when backup data is restored to the storage object according to the method shown in FIG. 2;
FIG. 13 is a region division diagram of a storage object when backup data is restored to the storage object shown in FIG. 11 according to the prior art;
FIG. 14 is a region division diagram of a storage object in another example;
FIG. 15 is a region division diagram of a storage object shown in FIG. 14 when backup data is restored to the storage object according to the method shown in FIG. 2;
FIG. 16 is a region division diagram of a storage object when backup data is restored to the storage object shown in FIG. 14 according to the prior art;
fig. 17 is a block diagram of a backup data restoring apparatus according to a first embodiment of the present invention.
The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Referring to fig. 1, fig. 1 is a schematic structural diagram of a user equipment in a hardware operating environment according to an embodiment of the present invention.
As shown in fig. 1, the user equipment may include: a processor 1001, such as a CPU, a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. Wherein a communication bus 1002 is used to enable connective communication between these components. The user interface 1003 may include a Display screen (Display), an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a wireless interface (e.g., WI-FI interface). The memory 1005 may be a high-speed RAM memory or a non-volatile memory (e.g., a magnetic disk memory). The memory 1005 may alternatively be a storage device separate from the processor 1001.
Those skilled in the art will appreciate that the architecture shown in fig. 1 does not constitute a limitation of the user equipment and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components.
As shown in fig. 1, a memory 1005, which is a kind of computer storage medium, may include therein an operating system, a network communication module, a user interface module, and a backup data restoring program.
In the user equipment shown in fig. 1, the network interface 1004 is mainly used for data communication with an external network; the user interface 1003 is mainly used for receiving input instructions of a user; the user equipment calls the backup data restoring program stored in the memory 1005 through the processor 1001, and performs the following operations:
responding to an object selection instruction input by a user, and determining a storage object to be restored according to the object selection instruction;
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and determining backup data to be restored according to the target time;
comparing the current data in the storage object to be restored with the backup data to be restored to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, wherein the effective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored has the data to be restored, and the ineffective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored does not have the data to be restored;
and performing data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored, and performing data resetting on the ineffective data difference area in the storage object to be restored so as to realize data restoration on the storage object to be restored.
Further, the processor 1001 may call the backup data restoring program stored in the memory 1005, and further perform the following operations:
continuously recording backup data of a storage object to be restored to establish a first mapping relation table, wherein the first mapping relation table comprises a corresponding relation between continuous time and the backup data;
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
Further, the processor 1001 may call the backup data restoring program stored in the memory 1005, and further perform the following operations:
displaying the continuous time in the first mapping relation table;
responding to a time selection instruction input by a user based on the displayed continuous time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
Further, the processor 1001 may call the backup data restoring program stored in the memory 1005, and further perform the following operations:
acquiring backup data and corresponding backup time when the data backup is carried out on the storage object to be restored, and adding the acquired backup data and the corresponding backup time into a second mapping relation table;
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
Further, the processor 1001 may call the backup data restoring program stored in the memory 1005, and further perform the following operations:
displaying the backup time in the second mapping relation table;
and responding to a time selection instruction input by a user based on the displayed backup time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
Further, the processor 1001 may call the backup data restoring program stored in the memory 1005, and further perform the following operations:
acquiring each first storage area where the current data in the storage object to be restored is located, and acquiring each second storage area where the backup data to be restored is located;
and comparing the data of the first storage area and the second storage area to determine an effective data difference area and an ineffective data difference area in the storage object to be restored.
Further, the processor 1001 may call the backup data restoring program stored in the memory 1005, and further perform the following operations:
searching the same storage area in the first storage area and the second storage area, and comparing the data of the searched same storage area;
taking the searched storage areas with different data in the same storage area as the effective data difference area;
and taking the other storage areas except the searched same storage area in the first storage area as the invalid data difference area.
According to the scheme, the current data in the storage object to be restored is compared with the backup data to be restored to determine the effective data difference area and the ineffective data difference area in the storage object to be restored, data replication is performed on the effective data difference area in the storage object to be restored according to the backup data to be restored, and data resetting is performed on the ineffective data difference area in the storage object to be restored, so that data restoration is performed on the storage object to be restored, the data capacity required to be replicated for restoration is obviously smaller than the data capacity in the target storage object to be restored, software and hardware resources required to be occupied during restoration are reduced, and the efficiency of data restoration is improved.
Based on the hardware structure, the embodiment of the backup data restoration method is provided.
Referring to fig. 2, fig. 2 is a flowchart illustrating a backup data restoring method according to a first embodiment of the present invention.
S10: and responding to an object selection instruction input by a user, and determining a storage object to be restored according to the object selection instruction.
It should be noted that the storage object to be restored is a storage object that a user needs to restore, and generally, the storage object refers to a computer software object or a hardware object that can store data. Common hardware memory objects are: memory, flash memory, hard disk, and the like; common software storage objects are: virtual memory linear access space, files, file system volumes, hard disk partitions, logical storage units (LUNs), and the like.
S20: responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and determining backup data to be restored according to the target time.
It can be understood that the backup data to be restored is the backup data to be restored that the user needs to restore, generally, the backup is a process for generating a data copy for restoring the source storage object, or a data copy (also referred to as a mirror image) generated by this process, and the data copy is the backup data.
In a specific implementation, because the corresponding backup data at different times are usually different, the data backup may be a continuous backup, that is, the data is continuously saved; the data backup can also be performed by the user according to the needs, that is, the backup time corresponding to the backup data is discrete.
When the data backup is a persistent backup, before step S10, the method further includes: and continuously recording the backup data of the storage object to be restored to establish a first mapping relation table, wherein the first mapping relation table comprises the corresponding relation between the continuous time and the backup data.
Accordingly, step S20 may specifically include: responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
Of course, in order to facilitate the user to select the backup data that needs to be restored, in this embodiment, before step S20, the method further includes: displaying the continuous time in the first mapping relation table;
accordingly, step S20 may specifically include: responding to a time selection instruction input by a user based on the displayed continuous time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
It should be understood that, when displaying the continuous time in the first mapping relation table, a time axis manner may be adopted, and of course, other manners may also be adopted, which is not limited in this embodiment.
It should be noted that, the data backup may also be performed by the user as needed, that is, the backup time corresponding to the backup data is discrete, that is, before step S10, the method further includes: acquiring backup data and corresponding backup time when the data backup is carried out on the storage object to be restored, and adding the acquired backup data and the corresponding backup time into a second mapping relation table;
correspondingly, step S20 specifically includes: responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
Of course, in order to facilitate the user to select the backup data that needs to be restored, in this embodiment, before step S20, the method further includes: displaying the backup time in the second mapping relation table;
correspondingly, step S20 specifically includes: and responding to a time selection instruction input by a user based on the displayed backup time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
S30: comparing the current data in the storage object to be restored with the backup data to be restored to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, wherein the effective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored has the data to be restored, and the ineffective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored does not have the data to be restored.
In order to facilitate determining an effective data difference area and an ineffective data difference area in the storage object to be restored, in this embodiment, each first storage area where current data in the storage object to be restored is located may be obtained first, and each second storage area where the backup data to be restored is located may be obtained; and comparing the data of the first storage area and the second storage area to determine an effective data difference area and an ineffective data difference area in the storage object to be restored.
The present invention is illustrated below by way of a specific example, without limiting the scope of the invention.
It is assumed that the storage object to be restored is divided into 20 storage areas, and of course, the storage object may also be divided into other storage areas according to needs, and referring to fig. 3, each storage area may be numbered separately.
These regions have valid data in part and no valid data in part, and therefore, can be represented in the manner described with reference to fig. 4.
In the following, the time a, the time B, the time C, and the time D are monotonically increased as an example, and of course, the user performs backup as needed in this example.
The full backup is performed at time a, at which point backup snapshot a is obtained, see fig. 5.
An incremental backup is performed at time B, and referring to fig. 6, backup snapshot B is obtained at this time.
At time C, an incremental backup is performed, and referring to fig. 7, backup snapshot C is obtained at this time.
The state of the memory object at time D can be referred to in fig. 8.
If the storage object is restored at the time D, the storage object is restored to the time A, at this time, the association relation of each backup point can be analyzed, and 3 data change area records are totally recorded from the time A to the time D. Respectively as follows:
a) "area in backup snapshot B that has valid data for the source storage object".
b) "area in backup snapshot C corresponding to source storage object with valid data".
c) "D time is relative to" backup snapshot C "the area in which the data change occurred".
The set operation of these regions shows that: reference is made to fig. 9 for an area where data change has occurred in "backup snapshot a" at time D.
An area corresponding to the source storage object with valid data is obtained from the backup snapshot a, as can be seen in fig. 5.
By performing a set operation on the two data areas shown in fig. 5 and 9, an effective data difference area and an ineffective data difference area can be determined, as shown in fig. 10.
S40: and performing data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored, and performing data resetting on the ineffective data difference area in the storage object to be restored so as to realize data restoration on the storage object to be restored.
The present invention is described below with reference to a specific example, but the scope of the present invention is not limited thereto.
Suppose that a logical storage object generates the following backup data in chronological order: 1. full backup A; 2. and the incremental backup B needs to restore the data in the storage object to the data state of the full backup A.
In this case, it is assumed that the relationship between the regions is as shown in fig. 11, and when the method of the present embodiment is adopted, it can be found from the ensemble theory that the diagonally filled region in fig. 12 is the "effective data difference region" and the horizontally filled region is the "ineffective data difference region".
However, assuming that data is restored by the conventional technique, referring to fig. 13, the diagonally filled area is an area where data copying is required, and the horizontally filled area is an area where data resetting is required.
As can be seen from a comparison between fig. 12 and fig. 13, the method of the present embodiment does not need to restore data in the white area in the "area of full backup a", thereby greatly reducing the restored data capacity, and does not need to reset data in other areas than the three areas in the above figure, thereby greatly reducing the data reset data capacity.
The present invention is described below with reference to another specific example, but the scope of the present invention is not limited thereto.
Suppose that a logical storage object generates the following backup data in chronological order: 1. full backup; 2. and 2, after the full backup, all changed data are under the continuous backup protection.
Assume that the current time is time y (including time y) and still under persistent backup protection.
At this time, the data in the storage object needs to be restored to a data state corresponding to time x (including time x).
In this case, it is assumed that the relationship between the regions is as shown in fig. 14, and when the method of the present embodiment is adopted, it can be found from the ensemble theory that the diagonally filled region in fig. 15 is the "effective data difference region" and the horizontally filled region is the "ineffective data difference region".
However, assuming that data is restored by the conventional technique, referring to fig. 16, the diagonally filled area is an area where data copying is required, and the horizontally filled area is an area where data resetting is required. .
As is clear from a comparison between fig. 15 and fig. 16, the method of the present embodiment does not require data restoration of the white area in the "full backup area" and the area in which data change has occurred from the full backup to time x (including time x) for continuous data protection, and thus greatly reduces the restored data capacity, and does not require data resetting of the other areas than the three areas in the above figure, and thus greatly reduces the data reset data capacity.
In this embodiment, the current data in the storage object to be restored is compared with the backup data to be restored to determine an effective data difference region and an ineffective data difference region in the storage object to be restored, data replication is performed on the effective data difference region in the storage object to be restored according to the backup data to be restored, and data resetting is performed on the ineffective data difference region in the storage object to be restored, so that data restoration is performed on the storage object to be restored, and the data capacity required to be replicated for restoration is obviously smaller than the data capacity in the target storage object to be restored, thereby reducing software and hardware resources (such as network traffic, system bus bandwidth, storage throughput and the like) required to be occupied during restoration, and improving the efficiency of data restoration.
Furthermore, an embodiment of the present invention further provides a computer-readable storage medium, where a backup data restoring program is stored on the computer-readable storage medium, and when executed by a processor, the backup data restoring program implements the following operations:
responding to an object selection instruction input by a user, and determining a storage object to be restored according to the object selection instruction;
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and determining backup data to be restored according to the target time;
comparing the current data in the storage object to be restored with the backup data to be restored to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, wherein the effective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored has the data to be restored, and the ineffective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored does not have the data to be restored;
and performing data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored, and performing data resetting on the ineffective data difference area in the storage object to be restored so as to realize data restoration on the storage object to be restored.
In addition, an embodiment of the present invention further provides a backup data restoring apparatus, and referring to fig. 17, the apparatus includes:
an object selection module 901, configured to respond to an object selection instruction input by a user, and determine a storage object to be restored according to the object selection instruction;
a time selection module 902, configured to respond to a time selection instruction input by a user, determine a corresponding target time according to the time selection instruction, and determine backup data to be restored according to the target time;
a data comparison module 903, configured to compare current data in the to-be-restored storage object with the to-be-restored backup data to determine an effective data difference area and an invalid data difference area in the to-be-restored storage object, where the effective data difference area is an area where the current data is different from the to-be-restored backup data and where the to-be-restored backup data has the to-be-restored data, and the invalid data difference area is an area where the current data is different from the to-be-restored backup data and where the to-be-restored backup data does not have the to-be-restored data;
the data copying module 904 is configured to copy data of the valid data difference region in the storage object to be restored according to the backup data to be restored, and reset data of the invalid data difference region in the storage object to be restored, so as to restore data of the storage object to be restored.
According to the scheme, the current data in the storage object to be restored is compared with the backup data to be restored to determine the effective data difference area and the ineffective data difference area in the storage object to be restored, data replication is performed on the effective data difference area in the storage object to be restored according to the backup data to be restored, and data resetting is performed on the ineffective data difference area in the storage object to be restored, so that data restoration is performed on the storage object to be restored, the data capacity required to be replicated for restoration is obviously smaller than the data capacity in the target storage object to be restored, software and hardware resources required to be occupied during restoration are reduced, and the efficiency of data restoration is improved.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) as described above and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.

Claims (10)

1. A backup data restoring method, comprising the steps of:
responding to an object selection instruction input by a user, and determining a storage object to be restored according to the object selection instruction;
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and determining backup data to be restored according to the target time;
comparing the current data in the storage object to be restored with the backup data to be restored to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, wherein the effective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored has the data to be restored, and the ineffective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored does not have the data to be restored;
and performing data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored, and performing data resetting on the ineffective data difference area in the storage object to be restored so as to realize data restoration on the storage object to be restored.
2. The method of claim 1, wherein in response to a user-entered object selection instruction, prior to determining a storage object to restore from the object selection instruction, the method further comprises:
continuously recording backup data of a storage object to be restored to establish a first mapping relation table, wherein the first mapping relation table comprises a corresponding relation between continuous time and the backup data;
correspondingly, the responding to the time selection instruction input by the user, determining the corresponding target time according to the time selection instruction, and determining the backup data to be restored according to the target time specifically include:
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
3. The method according to claim 2, wherein before the responding to the time selection instruction input by the user, determining a corresponding target time according to the time selection instruction, searching the backup data corresponding to the target time in the first mapping relationship table, and taking the searched backup data as the backup data to be restored, the method further comprises:
displaying the continuous time in the first mapping relation table;
correspondingly, the responding to the time selection instruction input by the user, determining the corresponding target time according to the time selection instruction, searching the backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as the backup data to be restored specifically includes:
responding to a time selection instruction input by a user based on the displayed continuous time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the first mapping relation table, and taking the searched backup data as backup data to be restored.
4. The method of claim 1, wherein in response to a user-entered object selection instruction, prior to determining a storage object to restore from the object selection instruction, the method further comprises:
acquiring backup data and corresponding backup time when the data backup is carried out on the storage object to be restored, and adding the acquired backup data and the corresponding backup time into a second mapping relation table;
correspondingly, the method further includes, in response to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and before determining backup data to be restored according to the target time, the method further includes:
responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
5. The method as claimed in claim 4, wherein, in response to a time selection instruction input by the user based on the displayed backup time, determining a corresponding target time according to the time selection instruction, searching the backup data corresponding to the target time in the second mapping relationship table, and before taking the searched backup data as the backup data to be restored, the method further comprises:
displaying the backup time in the second mapping relation table;
correspondingly, the responding to the time selection instruction input by the user, determining the corresponding target time according to the time selection instruction, searching the backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as the backup data to be restored specifically includes:
and responding to a time selection instruction input by a user based on the displayed backup time, determining a corresponding target time according to the time selection instruction, searching backup data corresponding to the target time in the second mapping relation table, and taking the searched backup data as backup data to be restored.
6. The method according to any one of claims 1 to 5, wherein the comparing the current data in the storage object to be restored with the backup data to be restored to determine a valid data difference area and an invalid data difference area in the storage object to be restored specifically includes:
acquiring each first storage area where the current data in the storage object to be restored is located, and acquiring each second storage area where the backup data to be restored is located;
and comparing the data of the first storage area and the second storage area to determine an effective data difference area and an ineffective data difference area in the storage object to be restored.
7. The method according to claim 6, wherein the comparing the data of the first storage area and the second storage area to determine the valid data difference area and the invalid data difference area in the storage object to be restored specifically includes:
searching the same storage area in the first storage area and the second storage area, and comparing the data of the searched same storage area;
taking the searched storage areas with different data in the same storage area as the effective data difference area;
and taking the other storage areas except the searched same storage area in the first storage area as the invalid data difference area.
8. A user equipment, the user equipment comprising: a memory, a processor, and a backup data restore program stored on the memory and executable on the processor, the backup data restore program configured to implement the steps of the backup data restore method of any of claims 1 to 7.
9. A computer-readable storage medium, having stored thereon a backup data restoring program which, when executed by a processor, implements the steps of the backup data restoring method according to any one of claims 1 to 7.
10. An apparatus for backup data restoration, the apparatus comprising:
the object selection module is used for responding to an object selection instruction input by a user and determining a storage object to be restored according to the object selection instruction;
the time selection module is used for responding to a time selection instruction input by a user, determining a corresponding target time according to the time selection instruction, and determining backup data to be restored according to the target time;
the data comparison module is used for comparing the current data in the storage object to be restored with the backup data to be restored so as to determine an effective data difference area and an ineffective data difference area in the storage object to be restored, wherein the effective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored has the data to be restored in the area, and the ineffective data difference area is an area where the current data is different from the backup data to be restored and the backup data to be restored does not have the data to be restored in the area;
and the data replication module is used for performing data replication on the effective data difference area in the storage object to be restored according to the backup data to be restored and performing data resetting on the ineffective data difference area in the storage object to be restored so as to realize data restoration on the storage object to be restored.
CN201810493240.8A 2018-05-21 2018-05-21 Backup data restoration method and device, user equipment and storage medium Active CN108681494B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810493240.8A CN108681494B (en) 2018-05-21 2018-05-21 Backup data restoration method and device, user equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810493240.8A CN108681494B (en) 2018-05-21 2018-05-21 Backup data restoration method and device, user equipment and storage medium

Publications (2)

Publication Number Publication Date
CN108681494A CN108681494A (en) 2018-10-19
CN108681494B true CN108681494B (en) 2021-03-26

Family

ID=63807645

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810493240.8A Active CN108681494B (en) 2018-05-21 2018-05-21 Backup data restoration method and device, user equipment and storage medium

Country Status (1)

Country Link
CN (1) CN108681494B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113835925B (en) * 2021-09-09 2023-10-31 北京星辰天合科技股份有限公司 Storage object backup method and device
CN114327292B (en) * 2021-12-31 2024-02-02 上海移为通信技术股份有限公司 File management method, system, electronic device and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101174231A (en) * 2006-11-03 2008-05-07 英业达股份有限公司 Snap backup method
CN101286127A (en) * 2008-05-08 2008-10-15 华中科技大学 Multi-fork diary memory continuous data protecting and restoration method
CN107544865A (en) * 2016-06-24 2018-01-05 中兴通讯股份有限公司 A kind of quick available method and apparatus of Backup Data

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4267420B2 (en) * 2003-10-20 2009-05-27 株式会社日立製作所 Storage apparatus and backup acquisition method
US8381062B1 (en) * 2007-05-03 2013-02-19 Emc Corporation Proof of retrievability for archived files
CN103034566B (en) * 2012-12-06 2015-07-22 华为技术有限公司 Method and device for restoring virtual machine
CN104102556B (en) * 2014-06-13 2017-03-01 上海爱数信息技术股份有限公司 A kind of magnetic disk of virtual machine data backup and restoration methods
CN104506619B (en) * 2014-12-22 2018-06-05 华为技术有限公司 A kind of data backup, restoration methods and its device, server
CN106598774A (en) * 2016-10-13 2017-04-26 深信服网络科技(深圳)有限公司 Virtual machine backup restoring method and apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101174231A (en) * 2006-11-03 2008-05-07 英业达股份有限公司 Snap backup method
CN101286127A (en) * 2008-05-08 2008-10-15 华中科技大学 Multi-fork diary memory continuous data protecting and restoration method
CN107544865A (en) * 2016-06-24 2018-01-05 中兴通讯股份有限公司 A kind of quick available method and apparatus of Backup Data

Also Published As

Publication number Publication date
CN108681494A (en) 2018-10-19

Similar Documents

Publication Publication Date Title
EP3188020B1 (en) Data backup and recovery method, device and server thereof
US9250824B2 (en) Backing up method, device, and system for virtual machine
US20120290802A1 (en) Snapshot creation from block lists
EP3474143B1 (en) Method and apparatus for incremental recovery of data
US8893272B2 (en) Method and device for recombining runtime instruction
CN105320578A (en) Method and apparatus for backing up and recovering APP
CN112596951A (en) NAS data disaster tolerance method, device, equipment and storage medium
CN107273146B (en) Virtual machine upgrading method and device
CN108681494B (en) Backup data restoration method and device, user equipment and storage medium
CN112181720A (en) Virtual data center backup method and device based on cloud management platform
CN103838589A (en) Plug-in unit deleting and recovering method and client side
CN111158957B (en) Virtual machine file recovery method, system, device and storage medium
CN109753381B (en) Continuous data protection method based on object storage
EP4080827A1 (en) Cloud system migration method and device, and hybrid cloud system
CN116737466B (en) Backup processing method, device, system, electronic equipment and readable storage medium
CN113641446A (en) Memory snapshot creating method, device and equipment and readable storage medium
CN113296891A (en) Multi-scene knowledge graph processing method and device based on platform
CN105430314A (en) Video data storage and access control method and device
CN115221156A (en) Database cluster capacity expansion method and device, computer equipment and storage medium
CN110336883B (en) Mirror image data transmission method, device, equipment and computer readable storage medium
KR101552580B1 (en) Method for system recovery including mobile device and backup supporting multi operation system
CN114443216A (en) Cloud platform mirror image management method and management system
CN108984343B (en) Virtual machine backup and storage management method based on content analysis
CN111399975A (en) Virtual machine snapshot management method, device and system based on cloud computing management platform
CN109960682B (en) Snapshot point data access method, device, server and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant