A data backup and recovery system and method based on deduplication
By introducing local fingerprint database and object fingerprint library into the data backup system, combined with cloud storage, the reliability of efficient duplicate data removal and data recovery during data backup is achieved, and the data recovery problem caused by relying on local fingerprint library in traditional technology is solved. .
Patent Information
- Application Number
- CN202111646391.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-30
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2041-12-30
AI Technical Summary
Traditional data deduplication technology relies on local fingerprint libraries when data recovery. If the fingerprint library is damaged, data cannot be recovered, and uploading and updating fingerprint libraries will affect the performance and cost of the cloud.
Design a data backup and cloud recovery system based on deduplication. By setting up a backup proxy module and backup service module locally, use the local fingerprint database, object fingerprint library and index database to perform data sharding and fingerprint calculation, judge and remove Re-data, upload to the cloud, and do not rely on the local fingerprint library when data recovery is performed in the cloud.
It realizes efficient duplicate data removal during data backup, reduces the use of cloud storage space and bandwidth, ensures the reliability and efficiency of data recovery, and avoids data recovery failure caused by local fingerprint library corruption.
Smart Images

Figure CN114371959B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data backup and recovery, and in particular to a data backup and recovery system and method based on deduplication. Background Art
[0002] In the traditional data backup and recovery field, application-side data such as files, directories, and databases are backed up to disks, tapes, CDs, and other media. When application-side data is damaged, data can be restored through the backup copy. There are usually three types of data backup: full backup, incremental backup, and differential backup. Full backup is to back up all selected data content, incremental backup is to back up all added or changed content after the last backup, and differential backup is to back up all content that has changed since the last full backup.
[0003] Regardless of the backup type, there is always a lot of redundant data in the backup media. In order to save more space and bandwidth, deduplication technology has become the focus of attention. Deduplication technology reduces the storage space required for backup, enables faster and more frequent backups, and is conducive to data protection and faster recovery.
[0004] Deduplication technology can be divided into file-level and block-level deduplication. File-level deduplication ensures that files are not duplicated. This technology generates a hash value for each file and determines whether the contents of the files are the same by comparing the hash values of different files. Files with the same contents are no longer stored repeatedly, but pointers are used to point to duplicate files, thus achieving the basic purpose of deduplication. However, this deduplication based on file hash values is only useful for files with exactly the same contents. If there are only a few differences in the contents of the files, there is no way to deduplicate a large amount of duplicate content in the files. Block-level deduplication compares data in blocks, and calculates hash values for different blocks to compare and determine which blocks have the same contents. Blocks with the same hash values are no longer stored repeatedly. Block-level deduplication can be divided into fixed-length block and variable-length block deduplication technologies according to different methods of segmenting data blocks. In variable-length block deduplication, the length of the data block is variable. In fixed-length block deduplication, the length of the data block is fixed. In actual backup systems, since there are many types of backup objects such as databases, pictures, videos, documents, etc., variable-length block-level deduplication has a higher deduplication rate than file-level deduplication, and can more effectively remove redundant data.
[0005] With the rapid development of the Internet and the implementation of cloud technology, more and more applications are choosing to back up data to the cloud. Backing up data to the cloud has the advantages of no maintenance, easy expansion, high efficiency and reliability. However, cloud backup is also limited by bandwidth and capacity. Most cloud storage charges are based on actual capacity used. The larger the amount of data backed up to the cloud, the higher the fee. Combining deduplication technology can undoubtedly reduce the occupancy of cloud storage space and traffic costs, saving data protection costs.
[0006] However, traditional deduplication technology requires a fingerprint library to record the data's fingerprint and storage location information. When recovering data, it will rely on the information in the fingerprint library. If the local fingerprint library is damaged, the data cannot be recovered. This requires uploading the fingerprint library information to the cloud, but the size of the fingerprint library will increase as the amount of backup data increases, and when the data expires and is cleaned up, the content will also be deleted and updated, resulting in a large amount of data and frequency of fingerprint library upload to the cloud, which in turn affects the performance of the cloud. These are the current problems faced by data backup on the cloud combined with deduplication technology. Summary of the invention
[0007] The purpose of the present invention is to overcome the defects of the above-mentioned prior art and provide a data backup and recovery system and method based on deduplication technology to ensure data reliability and reduce the occupation of network bandwidth and cloud storage space.
[0008] The purpose of the present invention can be achieved by the following technical solutions:
[0009] A data backup and recovery system based on deduplication is used for data interaction with the cloud, including a backup proxy module and a backup service module arranged locally, wherein the backup service module is connected to the cloud for communication,
[0010] The backup proxy module is configured to: read the business application data that needs to be backed up, perform sharding and fingerprint calculation on the business application data, and obtain data sharding and fingerprint information thereof; obtain data object information that needs to be restored;
[0011] The backup service module maintains a local fingerprint database, a local object fingerprint database and a local index database, wherein the local fingerprint database stores the fingerprint information of the data shards that have been backed up to the cloud, the cloud data object names corresponding to the data shards and their offset information on the data objects, the local object fingerprint database corresponds one-to-one to the data objects stored in the cloud, and is used to store the data shard information of the data objects, and the local index database stores the metadata information of the data objects;
[0012] The backup service module is configured to: determine whether it is duplicate data based on the received fingerprint information and the local fingerprint database; if so, update the backup status of the duplicate data in the cloud; if not, merge the corresponding data fragments and upload them to the cloud, and synchronously update the local object fingerprint library and the local index database; query the local index database and the local object fingerprint library based on the data object information that needs to be restored, download the specified data fragments from the cloud and merge them.
[0013] Further, the backup proxy module includes an application unit, a deduplication client unit and a proxy transmission unit, wherein the application unit is used to read the business application data to be backed up or the data object information to be restored;
[0014] The deduplication client unit is used to perform sharding and fingerprint calculation on the business application data to obtain data sharding and fingerprint information thereof;
[0015] The proxy transmission unit is used to realize the transmission of data fragmentation and fingerprint information or data object information that needs to be restored.
[0016] Furthermore, the backup service module includes a service transmission unit, a deduplication service unit, a metadata management unit, a data management unit and a cloud gateway unit, wherein:
[0017] The service transmission unit is used to receive data fragmentation and fingerprint information or data object information that needs to be restored;
[0018] The deduplication service unit is used to query the local fingerprint database based on the received fingerprint information. If found, the data object name and offset information of the data segment corresponding to the fingerprint information stored in the cloud are called and sent to the metadata management unit. Otherwise, the data segment is sent to the data management unit.
[0019] The metadata management unit is used to query and maintain the local object fingerprint library and the local index database, and find the data object name, offset and length of the data segment to be restored in the cloud based on the data object information to be restored;
[0020] The data management unit is used to merge the received data fragments into data objects;
[0021] The cloud gateway unit is used to implement data interaction with the cloud, including uploading data objects to the cloud or downloading data segments from the cloud.
[0022] Furthermore, the backup proxy module and the backup service module communicate via socket.
[0023] Furthermore, the backup service module communicates with the cloud via an S3 interface.
[0024] Furthermore, the data shard information includes an offset, a length, and a reference count of the data shard stored in the cloud data object.
[0025] Furthermore, the metadata information includes fingerprint information of all data slices corresponding to the data object, the offset of the data slice in the original data object, the length of the data slice, and the data object name of the data slice uploaded to the cloud storage.
[0026] The present invention also provides a method for backing up data to the cloud using the data backup and recovery system based on deduplication, comprising the following steps:
[0027] A1. Read the business application data, slice the business application data and calculate its fingerprint, and obtain the data slice and its fingerprint information;
[0028] A2. Search the local fingerprint database for the fingerprint information. If found, call the data object name and offset information of the data shard corresponding to the fingerprint information stored in the cloud and execute step A4. Otherwise, execute step A3.
[0029] A3. Merge the received data shards into a data object. When the merged data object reaches a set size, upload the merged data object to a data bucket in the cloud, record the data object name and the offset corresponding to each data shard, and update the local fingerprint database.
[0030] A4. Create a local object fingerprint library with the same name as the cloud data object name, and update its version number incrementally;
[0031] A5. Store metadata information of the data object in a local index database and increment its version number;
[0032] A6. Upload the local object fingerprint library and its version information and the local index database and its version information to the metadata bucket in the cloud.
[0033] The present invention also provides a data recovery method using the above-mentioned data backup and recovery system based on deduplication, comprising the following steps:
[0034] B1. Obtain the data object information that needs to be restored;
[0035] B2. Compare the local index database and the index database in the cloud metadata bucket to see if the versions are consistent. If they are inconsistent, download the index database from the cloud to overwrite the information of the local index database.
[0036] B3. Query the local index database to obtain metadata information of the data object to be restored;
[0037] B4. Obtain the data object name stored in the cloud by the data shard through the metadata information of the data object, search the local object fingerprint library through the data object name, and compare whether the local object fingerprint library and the object fingerprint library in the cloud metadata bucket are consistent. If they are inconsistent, download the object fingerprint library from the cloud to overwrite the information of the local object fingerprint library;
[0038] B5. Obtain the fingerprint information of the data shard through the metadata information of the data object, query the local object fingerprint library through the fingerprint information, and obtain the offset and length of the data shard in the cloud data object;
[0039] B6. Download the specified data slice from the corresponding data object in the cloud data bucket according to the data object name, the offset and length information of the data slice in the cloud data object;
[0040] B7. Merge the data pieces into the original object data to achieve recovery.
[0041] Furthermore, the step B7 specifically includes:
[0042] B71, store the downloaded data in pieces into the cache area;
[0043] B72. Query the offset and length of the data fragment in the original data object according to the metadata information of the acquired data object;
[0044] B73. Combine the data slices in the cache area into the original object data through the offset and length of each data slice in the original data object.
[0045] Compared with the prior art, the present invention has the following beneficial effects:
[0046] 1. The present invention divides data into blocks and adopts a variable-length block deduplication technology, which has a higher deduplication rate than the file-level deduplication technology and can effectively remove duplicate data.
[0047] 2. The present invention manages the deleted local fingerprint library information, local metadata and object fingerprint library, and data separately by setting up a deduplication service unit, a metadata management unit, and a data management unit. The deleted local fingerprint library information ensures efficient duplication detection during backup. This local fingerprint library does not need to be uploaded to the cloud, and will not affect the bandwidth and capacity of the cloud. The local object fingerprint library will be uploaded to the metadata bucket of the cloud, corresponding to the data object in the cloud. One cloud data object corresponds to an object fingerprint library with the same name. This object fingerprint library only records the data segmentation information in the corresponding cloud data object, so it takes up very little space, and the upload and query speeds are very fast, reducing the occupation of network bandwidth and cloud storage space.
[0048] 3. The present invention does not rely on the local deduplication fingerprint library information during data recovery, so when the local deduplication fingerprint library is damaged or deleted, it will not affect the recovery of data on the cloud.
[0049] 4. The present invention combines the local deduplication fingerprint library and the cloud object fingerprint library, which ensures the effective deduplication of redundant data, improves the performance of backup on the cloud, and ensures the reliability and efficiency of recovery. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Figure 1 A schematic diagram of the structure of a data backup and recovery system based on deduplication in the cloud according to the present invention;
[0051] Figure 2 It is a structural schematic diagram of the data object fingerprint library of the present invention;
[0052] Figure 3 The present invention is a flowchart of a method for restoring data backup on the cloud based on deduplication. DETAILED DESCRIPTION
[0053] The present invention is described in detail below in conjunction with the accompanying drawings and specific embodiments. This embodiment is implemented based on the technical solution of the present invention, and provides a detailed implementation method and specific operation process, but the protection scope of the present invention is not limited to the following embodiments.
[0054] like Figure 1As shown, the present embodiment provides a data backup and recovery system based on deduplication, which is used for data interaction with the cloud, including a backup proxy module 100 and a backup service module 200 arranged locally, the backup service module 100 is connected to the cloud for communication, wherein the backup proxy module 100 is configured to: read the business application data to be backed up, perform sharding and fingerprint calculation on the business application data, obtain data shards and their fingerprint information; obtain data object information to be restored; the backup service module 200 maintains a local fingerprint database, a local object fingerprint library and a local index database, wherein the local fingerprint database stores the fingerprint information of the data shards that have been backed up to the cloud, the cloud corresponding to the data shards The local object fingerprint library corresponds to the data object stored in the cloud one by one, and is used to store the data shard information of the data object. The local index database stores the metadata information of the data object. The backup service module 200 is configured to: determine whether it is duplicate data based on the received fingerprint information and the local fingerprint database, and if so, update the backup status of the duplicate data in the cloud; if not, merge the corresponding data shards and upload them to the cloud, and synchronously update the local object fingerprint library and the local index database; query the local index database and the local object fingerprint library based on the data object information that needs to be restored, download the specified data shards from the cloud and merge them.
[0055] In a specific implementation, the backup proxy module 100 includes an application unit 101, a deduplication client unit 102 and a proxy transmission unit 103. The application unit 101 is used to read the business application data that needs to be backed up or the data object information that needs to be restored; the deduplication client unit 102 is used to perform variable-length segmentation and fingerprint calculation on the business application data to obtain data segmentations and their fingerprint information; the proxy transmission unit 103 is used to realize the transmission of data segmentations and fingerprint information or data object information that needs to be restored.
[0056] In a specific implementation, the backup service module 200 includes a service transmission unit 201, a deduplication service unit 202, a metadata management unit 203, a data management unit 204, and a cloud gateway unit 205, wherein the service transmission unit 201 is used to receive data shards and fingerprint information or data object information that needs to be restored, and communicate with the proxy transmission unit 103 of the communication backup proxy module 100 through a socket; the deduplication service unit 202 is used to query the local fingerprint database based on the received fingerprint information, and if the query is found, the data object name and offset information of the data shard corresponding to the fingerprint information stored in the cloud are called, and the data object name and offset information of the data shard corresponding to the fingerprint information are sent. to the metadata management unit, otherwise the data slice is sent to the data management unit; the metadata management unit 203 is used to query and maintain the local object fingerprint library and the local index database, and find the data object name, offset and length of the data slice to be restored in the cloud based on the data object information to be restored; the data management unit 204 is used to merge the received data slices into data objects, and the name of the merged large data object can be composed of the data bucket number plus an underscore and an object number increasing from 0; the cloud gateway unit 205 realizes data interaction with the cloud through the S3 interface, including uploading data objects to the cloud or downloading data slices from the cloud.
[0057] The local fingerprint database processed by the deduplication service unit 202 does not need to be uploaded to the cloud, which will not affect the bandwidth and capacity of the cloud, while ensuring efficient duplication detection during backup.
[0058] The metadata management unit 203 manages the local object fingerprint library and the local index database, wherein the data shard information stored in the local object fingerprint library includes the offset, length and reference count of the data shard stored in the cloud data object. The reference count is used to record the number of references to the data shard. During data cleaning, if the reference count is greater than 0, the cloud data shard corresponding to the fingerprint cannot be deleted. When the reference count is 0, it means that the data object corresponding to the fingerprint has been deleted, and the cloud data shard will also be deleted accordingly. The metadata information stored in the local index database includes the fingerprint information of all data shards corresponding to the data object, the offset of the data shard in the original data object, the length of the data shard and the data object name of the data shard uploaded to the cloud for storage.
[0059] The use of the above-mentioned data backup and recovery system in the cloud can effectively improve the performance of backup in the cloud, reduce the occupancy of network bandwidth and cloud storage space, and at the same time ensure that data can still be restored normally after the local fingerprint library and metadata are damaged, providing effective data protection for various application systems.
[0060] Take the example of backing up a 100G file test, refer to Figure 1As shown, the method for backing up data to the cloud using the above-mentioned data backup and recovery system based on deduplication includes the following steps:
[0061] S1. The application unit reads the content of the file to be backed up and transmits the data to the deduplication client unit. The deduplication client unit performs variable-length fragmentation on the data block (the fragment size varies from 128KB to 256KB) and calculates its fingerprint;
[0062] S2, the deduplication client unit transmits the data fragmentation and fingerprint information to the proxy transmission unit, which then sends it to the backup service transmission unit through the socket;
[0063] S3, the backup service transmission unit receives the data shard and fingerprint information, and transmits the data shard and fingerprint information to the deduplication service unit. The deduplication service unit searches for the input data shard fingerprint information in the local database. If the fingerprint information is found, the object name and offset information of the shard corresponding to the fingerprint recorded in the database stored in the cloud are transmitted to the metadata management unit for processing, and step S6 is executed. Otherwise, step S4 is executed.
[0064] S4. If the deduplication service unit does not find the data slice fingerprint information in the local fingerprint database, it will pass the data slice to the data management unit for processing. The data management unit will merge the data slices into a large data object (for example, the object name is 0_1, 0 is the number of the data bucket, and 1 is the incremental number of the data object). When the merged data object reaches the set size (for example, 16M), it will be passed to the cloud gateway unit. The cloud gateway unit uploads the merged data object (for example, the object name is 0_1) to the cloud data bucket through the S3 interface, and executes step S5;
[0065] S5. The data management unit returns the merged data object name (e.g., the object name is 0_1) and the offset (e.g., 128K) corresponding to the data slice to the deduplication service unit. The deduplication service unit stores the deduplication fingerprint library information in the local database and transmits the object name (e.g., the object name is 0_1) and the offset information (e.g., 128K) corresponding to the fingerprint to the metadata management unit for processing.
[0066] S6. The metadata management unit receives the deduplication fingerprint library information corresponding to the data slice from the deduplication service unit, creates an object fingerprint library with the same name as the cloud data object (for example, the object fingerprint library is named 0_1), and increments and updates the version number of the object fingerprint library;
[0067] S7. The metadata management unit stores the metadata information of the data object in the local index database and increments the version number of the database. The metadata information of the data object (e.g., the 100G file test to be backed up) includes: the fingerprint of all data fragments corresponding to the data object (e.g., the offset of the fragment in the original data object, the length of the fragment, and the name of the data fragment uploaded to the cloud storage object (e.g., 0_1, 0_2, ..., 0_N);
[0068] S8. The metadata management unit will send a message to notify the cloud gateway unit, so that the cloud gateway unit uploads the local object fingerprint library (for example, the object fingerprint library is named 0_1) and its version information and the local index database and its version information to the cloud metadata bucket through the S3 interface.
[0069] The information stored in the local and cloud object fingerprint libraries is as follows: Figure 2 As shown in the figure, the fingerprint information of each data shard stored in the object fingerprint library corresponds to the data shard in the cloud data object. Among them, num is the number of fingerprints stored in the current fingerprint library file, finger_print is the fingerprint of the data shard, offset is the offset of the data shard in the cloud data object, length is the length of the data shard, and ref is the reference count of the data shard.
[0070] Take the example of restoring a 100G file test, refer to Figure 3 As shown, the method for recovering data by using the above-mentioned data backup and recovery system based on deduplication includes the following steps:
[0071] R1. The application unit transmits the data object information to be restored (e.g., the 100G file test) to the proxy transmission unit, and the proxy transmission unit sends the data object information to the backup service transmission unit through the socket;
[0072] R2. The backup service transmission unit receives the data object information to be restored and transmits it to the metadata management unit. The metadata management unit compares the local index database and the index database version in the cloud metadata bucket to see if they are consistent. If they are inconsistent, the index database is downloaded from the cloud to overwrite the information of the local index database;
[0073] R3. The metadata management unit queries the local index database to obtain the data shard information of the data object to be restored, as well as the storage object names of these shards in the cloud (e.g., 0_1, 0_2, ..., 0_N), finds the locally stored object fingerprint library (e.g., 0_1, 0_2, ..., 0_N) through the object name, and compares whether the local object fingerprint library and the object fingerprint library in the cloud metadata bucket are consistent. If they are inconsistent, the object fingerprint library is downloaded from the cloud to overwrite the information of the local object fingerprint library;
[0074] R4. The metadata management unit uses the fingerprint (e.g., finger_print1, finger_print2, ..., finger_printN) in the data shard information to query the local object fingerprint library (e.g., 0_1) and obtain the offset (e.g., offet1: 128K) and length (e.g., length1: 136K) of the data shard in the cloud data object, and sends the cloud data object name, offset, and length information to the data management unit for processing;
[0075] R5. The data management unit notifies the cloud gateway unit to download the specified data slice content from the corresponding data object (e.g., 0_1) in the cloud data bucket according to the received data object name (e.g., 0_1), offset (e.g., offset1:128K), and length information (e.g., length1:136K);
[0076] R6. The data management unit stores the downloaded data slice content in the cache area, and according to the offset (e.g., 1024K) and length information (e.g., length1: 136K) of the data slice in the original data object recorded in the metadata information of the metadata management unit, merges the data slice content in the cache area into the data of the original object, and returns it to the application unit;
[0077] R7. The application unit uses the returned data to restore the corresponding data object (eg, the 100G file test).
[0078] The preferred specific embodiments of the present invention are described in detail above. It should be understood that a person skilled in the art can make many modifications and changes based on the concept of the present invention without creative work. Therefore, any technical solution that can be obtained by a person skilled in the art through logical analysis, reasoning or limited experiments based on the concept of the present invention on the basis of the prior art should be within the scope of protection determined by the claims.
Claims
1. A data backup and recovery system based on deduplication, characterized in that: It is used to interact with the cloud for data, including a backup proxy module and a backup service module set locally, and the backup service module is connected to the cloud for communication, wherein: The backup proxy module is configured to: read the business application data that needs to be backed up, perform sharding and fingerprint calculation on the business application data, and obtain data sharding and fingerprint information thereof; obtain data object information that needs to be restored; The backup service module maintains a local fingerprint database, a local object fingerprint database and a local index database, wherein the local fingerprint database stores the fingerprint information of the data shards that have been backed up to the cloud, the cloud data object names corresponding to the data shards and their offset information on the data objects, the local object fingerprint database corresponds one-to-one to the data objects stored in the cloud, and is used to store the data shard information of the data objects, and the local index database stores the metadata information of the data objects; The backup service module is configured to: determine whether it is duplicate data based on the received fingerprint information and the local fingerprint database; if so, update the backup status of the duplicate data in the cloud; if not, merge the corresponding data fragments and upload them to the cloud, and synchronously update the local object fingerprint library and the local index database; query the local index database and the local object fingerprint library based on the data object information that needs to be restored, download the specified data fragments from the cloud and merge them.
2. The data backup and recovery system based on deduplication according to claim 1, characterized in that: The backup proxy module includes an application unit, a deduplication client unit and a proxy transmission unit. The application unit is used to read the business application data that needs to be backed up or the data object information that needs to be restored; The deduplication client unit is used to perform sharding and fingerprint calculation on the business application data to obtain data sharding and fingerprint information thereof; The proxy transmission unit is used to realize the transmission of data fragmentation and fingerprint information or data object information that needs to be restored.
3. The data backup and recovery system based on deduplication according to claim 1, characterized in that: The backup service module includes a service transmission unit, a deduplication service unit, a metadata management unit, a data management unit and a cloud gateway unit, wherein: The service transmission unit is used to receive data fragmentation and fingerprint information or data object information that needs to be restored; The deduplication service unit is used to query the local fingerprint database based on the received fingerprint information. If found, the data object name and offset information of the data segment corresponding to the fingerprint information stored in the cloud are called and sent to the metadata management unit. Otherwise, the data segment is sent to the data management unit. The metadata management unit is used to query and maintain the local object fingerprint library and the local index database, and find the data object name, offset and length of the data segment to be restored in the cloud based on the data object information to be restored; The data management unit is used to merge the received data fragments into data objects; The cloud gateway unit is used to implement data interaction with the cloud, including uploading data objects to the cloud or downloading data segments from the cloud.
4. The data backup and recovery system based on deduplication according to claim 1, characterized in that: The backup proxy module and the backup service module communicate via socket.
5. The data backup and recovery system based on deduplication according to claim 1, characterized in that: The backup service module communicates with the cloud via the S3 interface.
6. The data backup and recovery system based on deduplication according to claim 1, characterized in that: The data shard information includes the offset, length, and reference count of the data shard stored in the cloud data object.
7. The data backup and recovery system based on deduplication according to claim 1, characterized in that: The metadata information includes fingerprint information of all data slices corresponding to the data object, the offset of the data slice in the original data object, the length of the data slice, and the data object name of the data slice uploaded to the cloud storage.
8. A method for backing up data to the cloud using the data backup and recovery system based on deduplication as claimed in claim 1, characterized in that: The following steps are involved: A1. Read business application data, slice the business application data and calculate its fingerprint, and obtain data slices and fingerprint information thereof; A2. Search the local fingerprint database for the fingerprint information. If found, call the data object name and offset information of the data shard corresponding to the fingerprint information stored in the cloud and execute step A4. Otherwise, execute step A3. A3. Merge the received data shards into a data object. When the merged data object reaches a set size, upload the merged data object to a data bucket in the cloud, record the data object name and the offset corresponding to each data shard, and update the local fingerprint database. A4. Create a local object fingerprint library with the same name as the cloud data object name, and update its version number incrementally; A5. Store metadata information of the data object in a local index database and increment its version number; A6. Upload the local object fingerprint library and its version information and the local index database and its version information to the metadata bucket in the cloud.
9. A data recovery method using the data backup and recovery system based on deduplication as claimed in claim 1, characterized in that: The following steps are involved: B1. Obtain the data object information that needs to be restored; B2. Compare the local index database and the index database in the cloud metadata bucket to see if the versions are consistent. If they are inconsistent, download the index database from the cloud to overwrite the information of the local index database. B3. Query the local index database to obtain metadata information of the data object to be restored; B4. Obtain the data object name stored in the cloud by the data shard through the metadata information of the data object, search the local object fingerprint library through the data object name, and compare whether the local object fingerprint library and the object fingerprint library in the cloud metadata bucket are consistent. If they are inconsistent, download the object fingerprint library from the cloud to overwrite the information of the local object fingerprint library; B5. Obtain the fingerprint information of the data shard through the metadata information of the data object, query the local object fingerprint library through the fingerprint information, and obtain the offset and length of the data shard in the cloud data object; B6. Download the specified data slice from the corresponding data object in the cloud data bucket according to the data object name, the offset and length information of the data slice in the cloud data object; B7. Merge the data pieces into the original object data to achieve recovery.
10. The data recovery method according to claim 9, characterized in that: The step B7 specifically includes: B71, store the downloaded data in pieces into the cache area; B72. Query the offset and length of the data fragment in the original data object according to the metadata information of the acquired data object; B73. Combine the data slices in the cache area into the original object data through the offset and length of each data slice in the original data object.
Citation Information
Patent Citations
Repeating data deleting system and method applicable to cloud storage
CN103944988A
Big-data-oriented cloud disaster tolerant backup method
CN104932956A