Snapshot information creating method and device for system backup and computer equipment
By utilizing the change log and storing snapshot information, only processing data increments and creating target snapshot trees, the problem of inefficiency in traditional backup methods is solved, and efficient and resource-optimized backup snapshot generation is achieved.
Patent Information
- Application Number
- CN202411740009.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-03-28
AI Technical Summary
When traditional snapshot creation methods face the needs of large-scale data or high-frequency backups, they consume a lot of storage resources, resulting in too long backup process, significantly reducing the efficiency of backup snapshot generation of the system.
By obtaining the change log of the target system and the stored snapshot information of the last backup instruction, traversing the differences to determine the snapshot incremental data, and creating a target snapshot tree based on the node relationship that stores the snapshot information to avoid copying the full data.
It significantly improves the efficiency of backup operations, reduces storage resource consumption, optimizes the management and access of backup data, speeds up backup and recovery, and enhances data reliability and consistency.
Smart Images

Figure CN119718777A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of backup snapshots, and in particular to a method, apparatus, computer equipment, computer-readable storage medium, and computer program product for creating snapshot information of a system backup. Background Art
[0002] With the rapid development of information technology, the amount of data is growing exponentially, and system backup has become a key technical means to ensure data security and availability. As the core method of system backup, snapshot technology can capture a static copy of data at a specific point in time so that it can be quickly restored in the event of data loss or system failure.
[0003] However, traditional snapshot creation methods usually require full data replication or rely on multi-level snapshot chain rollback to restore the target state. When faced with large-scale data or high-frequency backup needs, this method not only consumes a lot of storage resources, but also causes the backup process to take too long, significantly reducing the efficiency of the system's backup snapshot generation. Summary of the invention
[0004] Based on this, it is necessary to provide a method, apparatus, computer device, computer-readable storage medium and computer program product for creating snapshot information of a system backup, which can improve the efficiency of generating backup snapshots, in order to solve the above technical problems.
[0005] In a first aspect, the present application provides a method for creating snapshot information of a system backup, comprising:
[0006] In response to a current backup instruction for a target system, acquiring a change log of the target system and storage snapshot information of a last backup instruction; the storage snapshot information is a snapshot tree;
[0007] Traversing the differences between the change log and the storage snapshot information to determine the snapshot incremental data corresponding to the current backup instruction;
[0008] According to the snapshot incremental data, on the basis of the node relationship of the storage snapshot information, a target snapshot tree corresponding to the current backup instruction is created as the snapshot information of the current backup instruction.
[0009] In one embodiment, creating a target snapshot tree corresponding to the current backup instruction based on the snapshot incremental data and on the basis of the node relationship storing the snapshot information includes:
[0010] Determining, according to the snapshot incremental data, node adjustment information relative to the storage snapshot information;
[0011] A target snapshot tree corresponding to the current backup instruction is created according to the node adjustment information.
[0012] In one embodiment, determining, according to the snapshot incremental data, the node adjustment information relative to the storage snapshot information includes:
[0013] Determine the node information of the target root node corresponding to the current backup instruction, and determine the node information of the target incremental node corresponding to the snapshot incremental data;
[0014] Determine, based on the node information of the target incremental node and the node information of the target root node, the node information of the target associated node corresponding to the target root node that the target incremental node is connected to;
[0015] Determine the target pointer information corresponding to the target incremental node, the target root node and the target associated node respectively;
[0016] The node information of the target incremental node, the node information of the target root node, the node information of the target associated node and the target pointer information are used as the node adjustment information.
[0017] In one embodiment, creating a target snapshot tree corresponding to the current backup instruction according to the node adjustment information includes:
[0018] Generate an incremental part corresponding to the target snapshot tree according to the node adjustment information;
[0019] Reusing the non-incremental nodes and corresponding pointer information in the storage snapshot information as the non-incremental part corresponding to the target snapshot tree; the non-incremental nodes are other nodes in the storage snapshot information except the nodes corresponding to the node adjustment information;
[0020] The incremental part and the non-incremental part are concatenated to obtain the target snapshot tree.
[0021] In one embodiment, after obtaining the target snapshot tree, the method further includes:
[0022] In response to a backup comparison instruction for backup A and backup B of the target system, determining other backups between backup A and backup B; backup A is earlier than backup B;
[0023] The backup comparison information of the A backup and the B backup is determined according to the incremental parts of the target snapshot trees of the other backup and the B backup.
[0024] In one embodiment, after obtaining the storage snapshot information of the change log and the last backup instruction of the target system, the method further includes:
[0025] When the difference between the change log and the storage snapshot information is traversed and it is determined that the snapshot incremental data corresponding to the current backup instruction is empty, the storage snapshot information is associated with the snapshot information of the current backup instruction.
[0026] In a second aspect, the present application also provides a system backup snapshot information creation device, including:
[0027] An information acquisition module, configured to acquire, in response to a current backup instruction for a target system, a change log of the target system and storage snapshot information of a last backup instruction; the storage snapshot information is a snapshot tree;
[0028] An incremental determination module, configured to traverse the difference between the change log and the stored snapshot information to determine the snapshot incremental data corresponding to the current backup instruction;
[0029] The snapshot creation module is used to create a target snapshot tree corresponding to the current backup instruction based on the snapshot incremental data and the node relationship of the storage snapshot information as the snapshot information of the current backup instruction.
[0030] In a third aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:
[0031] In response to a current backup instruction for a target system, acquiring a change log of the target system and storage snapshot information of a last backup instruction; the storage snapshot information is a snapshot tree;
[0032] Traversing the differences between the change log and the storage snapshot information to determine the snapshot incremental data corresponding to the current backup instruction;
[0033] According to the snapshot incremental data, on the basis of the node relationship of the storage snapshot information, a target snapshot tree corresponding to the current backup instruction is created as the snapshot information of the current backup instruction.
[0034] In a fourth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the following steps are implemented:
[0035] In response to a current backup instruction for a target system, acquiring a change log of the target system and storage snapshot information of a last backup instruction; the storage snapshot information is a snapshot tree;
[0036] Traversing the differences between the change log and the storage snapshot information to determine the snapshot incremental data corresponding to the current backup instruction;
[0037] According to the snapshot incremental data, on the basis of the node relationship of the storage snapshot information, a target snapshot tree corresponding to the current backup instruction is created as the snapshot information of the current backup instruction.
[0038] In a fifth aspect, the present application further provides a computer program product, including a computer program, which implements the following steps when executed by a processor:
[0039] In response to a current backup instruction for a target system, acquiring a change log of the target system and storage snapshot information of a last backup instruction; the storage snapshot information is a snapshot tree;
[0040] Traversing the differences between the change log and the storage snapshot information to determine the snapshot incremental data corresponding to the current backup instruction;
[0041] According to the snapshot incremental data, on the basis of the node relationship of the storage snapshot information, a target snapshot tree corresponding to the current backup instruction is created as the snapshot information of the current backup instruction.
[0042] The above-mentioned system backup snapshot information creation method, device, computer equipment, computer-readable storage medium and computer program product, first, in response to the current backup instruction for the target system, obtain the change log of the target system and the storage snapshot information of the last backup instruction, wherein the storage snapshot information is a snapshot tree, and by using the change log and the stored snapshot tree information, it is possible to avoid repeated scanning and comparison of the full amount of data, reduce unnecessary data operations, and significantly improve the response speed of the backup operation; then, traverse the difference between the change log and the storage snapshot information to determine the snapshot incremental data corresponding to the current backup instruction, and by accurately identifying the data change range, only process the part of the data that has changed, reduce the data redundant storage and processing requirements, thereby reducing storage resource consumption and improving backup efficiency; finally, according to the snapshot incremental data, on the basis of the node relationship of the storage snapshot information, create a target snapshot tree corresponding to the current backup instruction as the snapshot information of the current backup instruction, and by generating the target snapshot tree based on the existing snapshot tree, fully reuse the unchanged node data, further optimize the storage resource utilization, and ensure that the organizational structure of the snapshot incremental data is clear and easy to quickly index. In the above method, by utilizing the change log and existing snapshot tree information, only the changed data is processed, which significantly improves the efficiency of the backup operation and reduces the storage resource usage. The hierarchical design and pointer reuse mechanism of the snapshot tree effectively avoid redundant data storage and optimize the management and access of backup data. In addition, by quickly locating changed data in the snapshot forest, this solution not only speeds up the backup and recovery process, but also enhances the reliability and consistency of the backup data. BRIEF DESCRIPTION OF THE DRAWINGS
[0043] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0044] Figure 1 A schematic diagram of a process of creating snapshot information of a system backup in one embodiment;
[0045] Figure 2 is a schematic diagram of an example of a snapshot tree in one embodiment;
[0046] Figure 3 A schematic diagram of a process of creating a target snapshot tree in one embodiment;
[0047] Figure 4 A schematic diagram of an example of creating a target snapshot tree in one embodiment;
[0048] Figure 5 A schematic diagram of an example of creating a target snapshot tree in one embodiment;
[0049] Figure 6 A schematic diagram of a snapshot forest example in one embodiment;
[0050] Figure 7 A schematic diagram of an example of cloning a target snapshot tree in one embodiment;
[0051] Figure 8 A schematic diagram of a system for creating snapshot information of a system backup in one embodiment;
[0052] Fig. 9 A schematic diagram of an execution flow of a system for creating snapshot information of a system backup in one embodiment;
[0053] Fig.10 A structural block diagram of a device for creating snapshot information of a system backup in one embodiment;
[0054] Fig.11 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0055] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0056] In one embodiment, Figure 1 As shown, a method for creating snapshot information of system backup is provided. This embodiment uses the method applied to a terminal as an example for explanation. It is understandable that the method can also be applied to a server, and can also be applied to a system including a terminal and a server, and is implemented through the interaction between the terminal and the server. Among them, the terminal can be, but is not limited to, various personal computers, laptops, smart phones, and tablet computers. The server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services. In this embodiment, the method includes the following steps:
[0057] Step S101 , in response to a current backup instruction for a target system, obtaining a change log of the target system and storage snapshot information of a previous backup instruction.
[0058] The snapshot information is stored as a snapshot tree.
[0059] Among them, the change log is a log file that records the change information of data blocks or files in the target system file system, including the addition, modification or deletion operations and their corresponding data block identifiers, file paths and timestamps, etc., which is used to track all data changes in the target system since the last backup.
[0060] Among them, the storage snapshot information is a snapshot data structure that describes the static data state of the target system at a specific point in time. The data is organized in the form of a snapshot tree. The snapshot tree contains a root node, intermediate nodes, and leaf nodes. The nodes store corresponding data block information and their relationships.
[0061] Exemplarily, after receiving a backup instruction triggered by a user or system, the terminal first calls the backup management module to parse the instruction content and determine the backup scope and backup type of the target system. The terminal extracts the change log from the change tracking module in the target system to record the data blocks and related operation information that have changed since the last backup. Then, the terminal accesses the snapshot storage module and reads the last backup snapshot tree associated with the target system as the basic snapshot information for the current backup. The node relationship in the snapshot tree represents the organizational structure and storage location of the data blocks in the last backup. The terminal loads the change log and snapshot tree information into the memory context of the backup task to ensure that subsequent steps can quickly compare data changes and generate a new snapshot tree.
[0062] In a specific example, if Figure 2 As shown in FIG. 1 , an example of a snapshot tree includes a root node, an intermediate node, and a leaf node. Although the depth of the tree data structure in the schematic diagram is 3 and only includes one intermediate level, which is composed of I1 and I2, the depth of the snapshot tree actually constructed can be adjusted according to actual needs.
[0063] Each root node and intermediate node includes one or more pointers to one or more other nodes, indicating the degree of the node. The leaf node is the node at the bottom of the snapshot tree, and its degree is 0. The snapshot tree metadata format stored in the root node and the intermediate node is,<NodeID,Snap Tree ID,TimeStamp,HashKey Values> Respectively represent: node ID, tree ID, timestamp and one or more HashKey values. This HashKey can generally be calculated based on a certain feature of the storage object / file, such as the file name, the complete file path or the file change time. In different implementations, it can be selected as needed. The HashKey determines the characteristics of the snapshot tree node classification. This HashKey indicates the division between node branches and indicates how to traverse the tree data structure to find the leaf node, that is, which pointer to follow. For example, "100" is a HashKey, and the corresponding leaf node can be quickly found based on the size of this value.
[0064] The leaf node stores the snapshot tree metadata and file metadata information. The metadata information format of the snapshot tree is<NodeID,Snap Tree ID,TimeStamp,HashKey Value> They represent: node ID, tree ID, timestamp and a HashKey value. On the other hand, the metadata information of a file usually includes: file size, directory structure, file permissions, the physical sector of the file on the source host, the storage location, size, offset in the backup storage device, etc.
[0065] A file can be composed of one or more data blocks. A continuous data block is described by a data brick. Therefore, a file can also be composed of one or more data bricks. Each leaf node corresponds to a data block / rotation, which is mapped and recorded in the file metadata of the leaf node.
[0066] In the design of the tree, leaf nodes whose keyhash is less than or equal to the node key are associated with the first (leftmost) branch, and leaf nodes whose keyhash is greater than the node key are associated with the second branch. For example, if the keyhash of the root node is "56756", then keyhash less than "56756" is associated with the first branch of the root node, and keyhash greater than "56756" is associated with the second branch of the root node. For another example, to find relevant information about keyhash = "100", because it is less than or equal to the node key "56756", traverse from the root node to the first intermediate node L1, then track the two keyhashes "10000" and "45697" of L1, traverse to the leaf node L1, and obtain relevant file metadata information from the leaf node.
[0067] Information associated with a file's bricks may be stored in a tree data structure. For example, a leaf node may correspond to a brick and include a pointer to the location of one or more data blocks stored in the brick. Given an offset in a file, the brick number may be determined by dividing the file offset by the brick size. The brick number may correspond to the data key k of the leaf node.
[0068] Step S102, traversing the difference between the change log and the stored snapshot information to determine the snapshot incremental data corresponding to the current backup instruction.
[0069] The snapshot incremental data is a set of newly added or changed data blocks corresponding to the current backup instruction. It is generated by comparing the change log and snapshot tree node information and is used to describe the specific data changes since the last backup.
[0070] Exemplarily, the terminal loads the stored snapshot tree node information, traverses the snapshot tree structure one by one, accesses the intermediate node and the leaf node in sequence from the root node, and extracts the data block identifier and metadata information stored in each node. The terminal compares this information with the data block records in the change log one by one. If the data block recorded in the change log does not exist in the snapshot tree, or its timestamp is later than the corresponding node information in the snapshot tree, the terminal determines that the data block is incremental data and adds it to the incremental data list. For each data block marked as incremental data, the terminal further records its identifier, the storage location, size and associated operation type of the data block. Subsequently, the terminal integrates the incremental data marking result into the context of the current backup task to ensure that the incremental data list can be directly referenced in the subsequent snapshot tree update process. In this way, the terminal efficiently completes the traversal and analysis of the difference between the change log and the snapshot tree, accurately determines the incremental data that needs to be processed in the current backup task, avoids repeated processing of unchanged data, significantly improves the efficiency of the backup operation, and optimizes the utilization of storage resources.
[0071] Step S103: creating a target snapshot tree corresponding to the current backup instruction based on the snapshot incremental data and the node relationship storing the snapshot information as the snapshot information of the current backup instruction.
[0072] The node relationship is the hierarchical structure and pointer connection of each node in the snapshot tree, which consists of a root node, an intermediate node, and a leaf node, and is used to represent the organization of data blocks in the snapshot tree and their storage location.
[0073] Exemplarily, the terminal first builds a target snapshot tree for the current backup instruction by reading the marked snapshot incremental data list and combining the node relationship in the stored snapshot information. The terminal takes the root node of the snapshot tree as the starting point, reuses the unchanged node relationship on the basis of the existing snapshot tree, and creates a new leaf node or updates the child node relationship of the existing node for the incremental data block. The new leaf node generated by the terminal stores the identifier, storage location and other metadata of the incremental data, and is associated with its corresponding intermediate node through a pointer. For the unchanged leaf node or intermediate node, the terminal directly references the existing node information by pointer reuse, avoiding the repeated storage of data. During the construction of the target snapshot tree, the terminal simultaneously updates the metadata of each new node, including the tree ID, timestamp and hash key, so as to mark the node as belonging to the current backup instruction. After completing the creation of the target snapshot tree, the terminal stores it as the snapshot information of the current backup task in the system to support subsequent incremental backup or recovery tasks. In this way, the terminal can reuse the existing data structure to the maximum extent while accurately recording the status of the incremental data, realizing efficient management and fast access to the backup data. The generation of the target snapshot tree not only optimizes the utilization of storage resources, but also improves the overall efficiency of backup operations, especially when dealing with large-scale data and high-frequency backup tasks.
[0074] In the above-mentioned method for creating snapshot information of system backup, first, in response to the current backup instruction for the target system, the change log of the target system and the storage snapshot information of the last backup instruction are obtained, wherein the storage snapshot information is a snapshot tree, and by using the change log and the stored snapshot tree information, repeated scanning and comparison of the full amount of data can be avoided, unnecessary data operations can be reduced, and the response speed of the backup operation can be significantly improved; then, the difference between the change log and the storage snapshot information is traversed to determine the snapshot incremental data corresponding to the current backup instruction, and by accurately identifying the data change range, only the part of the data that has changed is processed, and the data redundant storage and processing requirements are reduced, thereby reducing storage resource consumption and improving backup efficiency; finally, according to the snapshot incremental data, on the basis of the node relationship of the storage snapshot information, a target snapshot tree corresponding to the current backup instruction is created as the snapshot information of the current backup instruction, and by generating the target snapshot tree based on the existing snapshot tree, the unchanged node data is fully reused, the storage resource utilization is further optimized, and the organizational structure of the snapshot incremental data is ensured to be clear and easy to quickly index. In the above-mentioned method, by using the change log and the existing snapshot tree information, only the changed data is processed, which significantly improves the efficiency of the backup operation and reduces the occupation of storage resources. The hierarchical design and pointer reuse mechanism of the snapshot tree effectively avoid redundant data storage and optimize the management and access of backup data. In addition, by quickly locating changed data in the snapshot forest, this solution not only speeds up backup and recovery, but also enhances the reliability and consistency of backup data.
[0075] In an exemplary embodiment, Figure 3 As shown, the above step S103 creates a target snapshot tree corresponding to the current backup instruction based on the snapshot incremental data and the node relationship of the stored snapshot information, which can also be implemented by the following steps:
[0076] Step S301, determining, according to snapshot incremental data, node adjustment information relative to the storage snapshot information;
[0077] Step S302: Create a target snapshot tree corresponding to the current backup instruction according to the node adjustment information.
[0078] The node adjustment information is structured information that describes the nodes in the snapshot tree that need to be updated or added, including the hierarchical relationship of the newly added nodes, the change range of the node content, and the reference path of the unchanged nodes, which is used to guide the construction process of the target snapshot tree.
[0079] Exemplarily, the terminal first parses the node content that needs to be added or modified from the snapshot incremental data, and generates node adjustment information in combination with the node relationship in the stored snapshot information. During the analysis process, for each incremental data block, the terminal determines its corresponding position in the snapshot tree, marks the node type that needs to be adjusted (such as adding a leaf node, updating an intermediate node, or creating a new root node), and records the node pointer connection relationship and related metadata. For unchanged data blocks or nodes, the terminal marks them as reused nodes and does not need to be adjusted. After the node adjustment information is generated, the terminal gradually builds the target snapshot tree based on the information.
[0080] During the creation of the target snapshot tree, the terminal gradually adds, updates or deletes the corresponding nodes according to the node adjustment information. For example, for the newly added data block, the terminal creates a new leaf node and associates it with the existing intermediate node through a pointer; for the modified intermediate node or root node, the terminal generates a new node version based on the metadata of the original node and updates its connection relationship with the next-level node; for the node marked as deleted, the terminal removes its pointer association with the parent node and marks the node as invalid, but does not physically delete it immediately, so as to support rollback operations in specific scenarios; for the unadjusted nodes, the terminal directly reuses its original storage information and pointer path to ensure data consistency and storage efficiency. During each node operation, the terminal updates the metadata of the target snapshot tree, such as the tree ID, timestamp and hash key, in real time to reflect the specific data status of the current backup instruction.
[0081] In this embodiment, the newly added and modified nodes are accurately marked by node adjustment information, which effectively avoids the repeated storage of unchanged data and significantly reduces the consumption of storage resources. At the same time, the pointer reuse mechanism is used to speed up the construction process of the target snapshot tree and improve the overall efficiency of the backup operation. In addition, by updating the metadata and node relationships of the target snapshot tree in real time, the integrity and consistency of the data are ensured, providing reliable support for subsequent backup operations and data recovery. This embodiment is particularly suitable for large-scale data backup scenarios and has significant advantages in optimizing storage resource utilization and improving backup performance.
[0082] In an exemplary embodiment, the above-mentioned step S301 determines the node adjustment information relative to the stored snapshot information based on the snapshot incremental data, and also includes: determining the node information of the target root node corresponding to the current backup instruction, and determining the node information of the target incremental node corresponding to the snapshot incremental data; determining the node information of the target associated node corresponding to the target root node connected to the target incremental node based on the node information of the target incremental node and the node information of the target root node; determining the target pointer information corresponding to the target incremental node, the target root node and the target associated node respectively; and using the node information of the target incremental node, the node information of the target root node, the node information of the target associated node and the target pointer information as the node adjustment information.
[0083] The target root node is the root node of the target snapshot tree, indicating the entry node of the snapshot generated by the current backup instruction, and contains metadata information of the entire snapshot tree, such as the tree ID and timestamp.
[0084] The target incremental node is a node that is newly added or updated for the snapshot incremental data, and represents the structural information of the data blocks or files that have changed in the current backup.
[0085] The target association node is an intermediate node connecting the target incremental node and the target root node, and is used to maintain the integrity of the target snapshot tree.
[0086] The target pointer information is pointer metadata that describes the connection relationship between nodes in the snapshot tree, including the connection path and pointer status between the parent node and the child node.
[0087] Exemplarily, the terminal first parses the snapshot incremental data to determine the target incremental node information that needs to be added or updated, including the node identifier, the storage location of the associated data block, and the change timestamp. Subsequently, the terminal obtains the node information of the target root node in the storage snapshot information to ensure that the root node metadata of the target snapshot tree matches the current backup task. Next, the terminal analyzes the hierarchical relationship between the target incremental node and the target root node through the hierarchical structure of the snapshot tree, and determines the target associated node information that needs to be adjusted, such as the identifier of the intermediate node, the pointer connection relationship and its metadata. During the analysis process, the terminal further calculates the target pointer information of the target incremental node, the target root node and the target associated node, and clarifies the pointer path and connection relationship between each node. For example, for the newly added target incremental node, the terminal records its parent-child relationship pointer with the target associated node; for the update of the target associated node and the target root node, the adjusted pointer state and its connection path are recorded. Finally, the terminal integrates the node information of the target incremental node, the node information of the target root node, the node information of the target associated node and the target pointer information into node adjustment information, and stores it in the context of the backup task to provide a reference for subsequent steps.
[0088] In this embodiment, by accurately determining the information of the target root node, target incremental node, and target associated node, and generating detailed target pointer information, the snapshot tree is efficiently constructed and updated. This ensures that the hierarchical relationship of the target snapshot tree is clear and the data organization is reasonable, while significantly reducing redundant operations, optimizing backup efficiency and storage resource utilization, and providing strong support for rapid recovery.
[0089] In an exemplary embodiment, the above step S302 creates a target snapshot tree corresponding to the current backup instruction based on the node adjustment information, and also includes: generating an incremental part corresponding to the target snapshot tree based on the node adjustment information; reusing non-incremental nodes and corresponding pointer information in the storage snapshot information as the non-incremental part corresponding to the target snapshot tree; the non-incremental nodes are other nodes in the storage snapshot information except the nodes corresponding to the node adjustment information; the incremental part and the non-incremental part are spliced to obtain the target snapshot tree.
[0090] The incremental part is a newly generated or updated node in the target snapshot tree, including the snapshot incremental data corresponding to the current backup instruction and its associated node relationship.
[0091] The non-incremental part is the set of nodes that have not changed in the storage snapshot information, including node metadata and its pointer relationship with other nodes.
[0092] Splicing is an operation of combining the incremental part and the non-incremental part according to the hierarchical structure and pointer relationship of the snapshot tree to form a complete target snapshot tree.
[0093] Exemplarily, the terminal extracts the incremental nodes and their pointer relationships from the node adjustment information, creates the corresponding new nodes, and assigns a unique identifier and the latest metadata information (such as timestamp, data block location, etc.) to each node. For nodes that need to be updated, the terminal generates a new version and updates its pointer connection relationship. Subsequently, the terminal extracts the non-incremental nodes and corresponding pointer information from the storage snapshot information as the non-incremental part of the target snapshot tree. The non-incremental nodes include a set of nodes that are not marked as newly added or modified by the node adjustment information. The terminal directly reuses these nodes and their pointer paths without performing any data operations, thereby reducing resource consumption and operation time. Next, the terminal splices the generated incremental part with the reused non-incremental part according to the hierarchical structure of the snapshot tree. For example, for the root node of the target snapshot tree, the terminal points the new root node of the incremental part to the intermediate node or leaf node of the non-incremental part; for the new leaf node of the incremental part, the terminal associates it with the intermediate node of the non-incremental part through a pointer. During the splicing process, the terminal dynamically updates the pointer information and hierarchical relationship of the target snapshot tree to ensure the integrity and consistency of the entire snapshot tree structure. Finally, the terminal stores the spliced target snapshot tree as the snapshot information of the current backup instruction in the system, providing basic support for subsequent recovery operations or incremental backups.
[0094] In a specific example, if Figure 4 , Figure 5 As shown, a schematic diagram for creating a target snapshot tree is shown. For example, at time T0~T1, one or more files on the source host may have been added, modified and / or deleted since the last backup snapshot. At this time, it is necessary to mark the modified data blocks / bricks in the snapshot tree and record the location where the modified data blocks / bricks are stored. The latest backup snapshot corresponding to one or more changes to one or more files can be made based on the last cloned snapshot tree. When a data change occurs, a new root node R2 is created in the snapshot tree at time T1. The new root node R2 initially includes a set of pointers contained in the root node associated with the last backup snapshot, that is, the new root node R2 includes one or more pointers to intermediate nodes or leaf nodes associated with the previous snapshot tree R1. However, the snapshot tree metadata of the new root node R2 updates the TreeID and timestamp. For example, the T1 snapshot tree creates the root node R2 and includes pointers to the intermediate nodes I1 and I2. The data brick with L4Hash Key 4000 has been modified and recorded in the storage data file, and the corresponding new data brick is "new". Then, then in Figure 4As described in , based on the snapshot tree at time T0 of the last backup, a snapshot tree at time T1 is obtained by fast cloning. At this time, the snapshot tree at time T1 needs to be modified to reflect this change. For data blocks / bricks whose data remain unchanged, pointer cloning can be used to implement data replication of the T1 snapshot tree. When a block / brick with changed data is found during traversal, a new node needs to be generated for the corresponding upper-level intermediate node, for example, a new node I3 is generated. The snapshot metadata of node I3 is similar to that of node I1, and can be regarded as the next version of node I1, but the TreeID and timestamp parameters in the metadata need to be updated, indicating the snapshot tree associated with the node and the data change time, respectively. In the newly created I3, the TreeID and timestamp parameters in the metadata of leaf node L9 are consistent with those of root node R2 at time T1, but the data information stored in the file metadata of L9 already points to the new data block / brick "new". The leaf nodes associated with L9 will be copied to I3 at this time, for example, L5 generates a "shadow leaf node" L10, whose TreeID and timestamp are consistent with those of root node R2 at time T1, but the file metadata remains unchanged. This is because according to the data classification characteristics of the tree, the data correlation of consecutive leaf nodes under the same node is relatively large. For example, L9 and L10 both represent data blocks / bricks in the same file, so shadow leaf nodes can speed up retrieval.
[0095] In addition, in another specific example, nodes with L2 hash keys less than "1000" are not replicated. This is because replicating leaf nodes can speed up indexing but will take up more storage space. Therefore, in the specific implementation, relevant strategies can be generated based on the sensitivity of the scenario to speed and space.
[0096] Through the "snapshot tree T2", the data that has changed between T0 and T1, the leaf nodes L9 and L10, can be quickly traversed.
[0097] In some exemplary embodiments, for smaller granularity management, a new field may be added to the tree node metadata to indicate that the L10 node is a shadow node. In this case, when traversing the changed data, it is only necessary to return to L9.
[0098] like Figure 6 As shown, in the final snapshot forest, some data blocks / bricks may be referenced by multiple leaf nodes. In some implementations, in order to optimize the management of stored data, synchronized Ref counters can be added in L5 and L10, so that when a block of the stored data file has no leaf node pointing to it, it can be reused or deleted.
[0099] The backup snapshot associated with the root node is determined by comparing it with the TreeID in the root node. This also shows that each backup data corresponds to a snapshot tree. The incremental backup snapshot tree corresponding to time Tn is associated with the incremental backup snapshot. Traversing the snapshot tree from the root node will reach one or more snapshot trees, and obtain the complete source host data at time Tn from the leaf nodes in different snapshot trees. The change time of each data block / brick can be determined by comparing the TreeID and timestamp value of the complete snapshot tree node at time Tn, and the correlation with Tn can be determined.
[0100] The differences between backup snapshots can be identified by traversing the corresponding snapshot trees and determining the unshared nodes. When only looking for data blocks / bricks that have changed since time Tn, filtering can be performed by the TreeID or timestamp of the intermediate nodes to speed up the indexing process, that is, this is a two-dimensional search process. For example, the snapshot trees associated with the root node of "Snapshot Tree 2" and the root node of "Snapshot Tree 7" are traversed to determine the differences between the backup data.
[0101] In this embodiment, by generating incremental parts according to node adjustment information and reusing non-incremental nodes, repeated storage and operation of unchanged data is effectively avoided, significantly improving the efficiency of snapshot tree creation and storage resource utilization. The dynamic splicing of incremental and non-incremental parts ensures the structural rationality and operational efficiency of the target snapshot tree, while providing flexible support for rapid data recovery, which is particularly suitable for frequent backup and large-scale data management scenarios.
[0102] In an exemplary embodiment, after obtaining the target snapshot tree as described above, it also includes: in response to a backup comparison instruction for backup A and backup B of the target system, determining other backups between backup A and backup B; backup A is earlier than backup B; and determining backup comparison information of backup A and backup B based on the incremental parts of the target snapshot trees of the other backups and backup B.
[0103] Among them, backup A and backup B are snapshot versions of the snapshot tree generated by the target system at different time points, respectively indicating the backup status at an earlier time point and a later time point.
[0104] Other backups are snapshot versions between backup A and backup B, used to supplement and connect the change information of the two backups.
[0105] The backup comparison information is the data comparison result obtained by analyzing the incremental data differences between backup A and backup B, including the information of newly added, modified, or deleted data blocks.
[0106] Exemplarily, after receiving the backup comparison instruction, the terminal retrieves all other backups from the backup of A to the backup of B according to the time points of the backup of A and the backup of B. The terminal extracts the incremental parts of the snapshot trees of these backups one by one, including the incremental parts of the backup of B, and accumulates and analyzes them in chronological order to directly obtain the data difference between A and B. In the incremental accumulation analysis process, the terminal marks and classifies according to the node type in each incremental part. If a data block only appears in the incremental part of the backup of B, it is marked as newly added; if a data block is modified in the middle incremental part, the terminal records its specific change information (such as modification time, data block size and new position, etc.); if a data block exists in the accumulated incremental part but does not appear in the incremental part of the backup of B, it is marked as deleted. The terminal organizes these change results into backup comparison information. Finally, the terminal returns the backup comparison information to the user or stores it. The backup comparison information records in detail the number and location of the newly added data blocks, the modified data blocks and their changes, and the original storage information of the deleted data blocks, which provides support for further analysis of the historical data changes of the target system or optimization of the backup strategy.
[0107] In this embodiment, by combining the incremental parts of backup A, backup B, and other backups in between, the difference comparison information between the backups can be efficiently constructed, avoiding the high computing cost caused by full data comparison. At the same time, the reuse of incremental data ensures the accuracy of backup comparison and the saving of storage resources, providing efficient and reliable support for data change analysis, backup optimization, and version management.
[0108] In an exemplary embodiment, after obtaining the change log of the target system and the storage snapshot information of the last backup instruction in the above step S101, it also includes: when traversing the differences between the change log and the storage snapshot information and determining that the snapshot incremental data corresponding to the current backup instruction is empty, associating the storage snapshot information as the snapshot information of the current backup instruction.
[0109] Exemplarily, after completing the traversal of the difference between the change log and the storage snapshot information, the terminal first determines whether the snapshot incremental data is empty. If the snapshot incremental data is empty, the terminal believes that the target system has not changed since the last backup. In this case, the terminal does not need to create a new target snapshot tree, nor does it need to add or modify snapshot nodes. Instead, it directly associates the storage snapshot information of the last backup with the current backup instruction. In implementation, the terminal updates the context of the current backup task, marks the snapshot tree of the storage snapshot information as the snapshot tree of the current backup, and synchronously updates its timestamp or backup identifier to be consistent with the current backup instruction. Through this direct association method, the terminal effectively avoids unnecessary computing and data storage operations and saves system resources.
[0110] In a specific example, if Figure 7 As shown, if the copy method is used to create a new snapshot tree, it is obviously a method that consumes a lot of space and time resources. The pointer fast cloning method can be used to make the snapshot tree at time T1 and the snapshot tree associated with the last backup to create a tree data structure corresponding to the latest backup snapshot. The last snapshot tree here can be a full snapshot tree or an incremental snapshot tree. For example, the "snapshot tree 1" corresponding to the last full backup will generate a clone of the last snapshot tree when a new backup snapshot is executed, such as the "snapshot tree 2" corresponding to "backup S2". A clone of the last snapshot tree is generated by making the new backup snapshot point to the root node associated with the last backup snapshot.
[0111] In this embodiment, when the target system has not changed, the backup process is simplified by directly associating the storage snapshot information of the last backup, which significantly reduces the waste of storage resources and processing capabilities. This ensures the efficient operation of the backup system, which is particularly suitable for scenarios where backups are frequent but data changes are rare. It also maintains the consistency of the backup information, providing accurate and reliable support for subsequent data recovery and version management.
[0112] In an exemplary embodiment, Figure 8 As shown, the present application provides a system for creating snapshot information of system backup that executes the above-mentioned system backup snapshot information creation method. The user interacts with the backup server through the Web interface (backup time point list, online time point preview, snapshot data recovery, backup time point deletion), and uses the CDP AgentConsole module (continuous data protection agent console) to configure the software, view snapshots and other functions. The core module of the system, the CDP disk filter module, works on the kernel layer network priority sending interface of the client side, and is responsible for intercepting operations on the disk volume manager of the target system. For operations in the storage system (such as reading, writing, deleting, creating files, etc.), the disk filter module can capture all operations, but only records operations that cause changes to the data status, such as writing, deleting or creating files. For data access operations that are not modified (such as read operations), the filter driver will not record them because they do not affect the data status.
[0113] When a data modification operation is detected, the disk filtering module sends information such as the operation type, disk location, offset, and modified data to the log management module and network communication framework of the backup server. In the log management module, this information is stored as a log with reverse operation records and sent to the remote data center at a fixed time. At the same time, through the network communication framework and the kernel layer network priority sending interface, the operation record will be transmitted to the backup system of the remote data center through the TCP / IP module.
[0114] On the remote side, the meta-snapshot management module and the multi-snapshot management module will periodically generate snapshots based on the transmitted change records and user commands to save the various historical states of the target system data. Users can view or manage these snapshot histories in the Web module (such as the backup time point list or snapshot data recovery) through the backup server interface. In the event of an error or disaster, the system supports users to restore the data state at any point in time based on these snapshots to ensure data consistency.
[0115] Furthermore, in an exemplary embodiment, Fig. 9 As shown in the figure, the execution process of creating a system for the snapshot information of the above system backup is as follows:
[0116] In step S901, an IO filter (IOFilter) detects a change in one or more data blocks of file system data of a source host. A changed block tracker may receive one or more data blocks associated with one or more files of the source host, and the IO filter may identify one or more data blocks that have been modified, added, and / or deleted.
[0117] Step S902, determining whether the source host has enabled the continuous data protection (CDP) function, if so, executing step S903, otherwise, executing step S904.
[0118] Step S903, judging whether the cache space in the kernel area is sufficient to accommodate the current change data according to the read-write pointer state of the cache area, if it is sufficient to cache, then executing step S905, otherwise executing step S904.
[0119] Step S904, the system stops monitoring the data block changes; or, when a buffer overflow (insufficient buffer space) or kernel resource allocation failure is detected, the system stops monitoring the data block changes and sends a notification to the application layer to prompt the buffer overflow.
[0120] Step S905, store one or more change logs. The change block tracker (CBT) records all records of data modification on the source host, and each record corresponds to one or more data blocks. The log includes one or more changed data blocks, values associated with the one or more changed data blocks, and related timestamps. The log is recorded in the order in which the changes occurred.
[0121] Step S906, perform a backup snapshot of the source host. The backup snapshot may be a full backup snapshot or an incremental backup snapshot. When the task is first started, the full backup snapshot may include all data blocks in the main system file system. The incremental backup may include one or more changed data blocks of the source host data since the last backup snapshot.
[0122] Step S907: Clear one or more changes stored in the changed block tracker. Each time a backup is performed, the changes in the changed block tracker will be cleared to reduce the occupation of resources of the source host.
[0123] Step S908: Send the IO packet to the lower layer driver for processing.
[0124] In this embodiment, the leaf nodes of multiple snapshot trees reuse the same data block / brick through fast cloning and shadow node technology, avoiding redundant waste of storage resources. The differences between backup snapshots are identified by traversing the snapshot tree to determine the unshared nodes, and filtering is performed with the help of the TreeID or timestamp of the intermediate node, which speeds up the indexing process. Different configurations are performed on the shadow nodes according to the sensitivity of the scene to speed and space, and adaptive management of snapshot metadata of different orders of magnitude is achieved.
[0125] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0126] Based on the same inventive concept, the embodiment of the present application also provides a system backup snapshot information creation device for implementing the system backup snapshot information creation method involved above. The implementation solution provided by the device to solve the problem is similar to the implementation solution recorded in the above method, so the specific limitations in the embodiments of one or more system backup snapshot information creation devices provided below can refer to the limitations of the system backup snapshot information creation method above, and will not be repeated here.
[0127] In an exemplary embodiment, Fig.10 As shown, a snapshot information creation device for system backup is provided, comprising: an information acquisition module 1001, an increment determination module 1002 and a snapshot creation module 1003, wherein:
[0128] The information acquisition module 1001 is used to obtain the storage snapshot information of the change log and the last backup instruction of the target system in response to the current backup instruction for the target system; the storage snapshot information is a snapshot tree;
[0129] An incremental determination module 1002 is used to traverse the difference between the change log and the stored snapshot information to determine the snapshot incremental data corresponding to the current backup instruction;
[0130] The snapshot creation module 1003 is used to create a target snapshot tree corresponding to the current backup instruction according to the snapshot incremental data and on the basis of the node relationship storing the snapshot information, as the snapshot information of the current backup instruction.
[0131] In one embodiment, the snapshot creation module 1003 is further used to determine node adjustment information relative to the storage snapshot information according to the snapshot incremental data; and to create a target snapshot tree corresponding to the current backup instruction according to the node adjustment information.
[0132] In one of the embodiments, the snapshot creation module 1003 is also used to determine the node information of the target root node corresponding to the current backup instruction, and to determine the node information of the target incremental node corresponding to the snapshot incremental data; determine the node information of the target associated node corresponding to the target root node connected to the target incremental node based on the node information of the target incremental node and the node information of the target root node; determine the target pointer information corresponding to the target incremental node, the target root node and the target associated node respectively; and use the node information of the target incremental node, the node information of the target root node, the node information of the target associated node and the target pointer information as node adjustment information.
[0133] In one of the embodiments, the snapshot creation module 1003 is also used to generate an incremental part corresponding to the target snapshot tree according to the node adjustment information; reuse the non-incremental nodes and corresponding pointer information in the storage snapshot information as the non-incremental part corresponding to the target snapshot tree; the non-incremental nodes are other nodes in the storage snapshot information except the nodes corresponding to the node adjustment information; the incremental part and the non-incremental part are spliced to obtain the target snapshot tree.
[0134] In one of the embodiments, the snapshot information creation device for the above-mentioned system backup also includes a backup comparison module, which is used to respond to the backup comparison instructions for the A backup and the B backup of the target system, determine other backups between the A backup and the B backup; the A backup is earlier than the B backup; and determine the backup comparison information of the A backup and the B backup based on the incremental parts of the target snapshot trees of the other backups and the B backup.
[0135] In one of the embodiments, the snapshot information creation device for the system backup is also used to associate the stored snapshot information with the snapshot information of the current backup instruction when traversing the difference between the change log and the stored snapshot information and determining that the snapshot incremental data corresponding to the current backup instruction is empty.
[0136] Each module in the snapshot information creation device for system backup can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module.
[0137] In an exemplary embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as shown in FIG. Fig.11 As shown. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface, the display unit and the input device are connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a mobile cellular network, near field communication (NFC) or other technologies. When the computer program is executed by the processor, a snapshot information creation method for system backup is implemented. The display unit of the computer device is used to form a visually visible picture, which can be a display screen, a projection device or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device shell, or an external keyboard, touchpad or mouse.
[0138] Those skilled in the art will understand that Fig.11 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0139] In one embodiment, a computer device is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps in the above method embodiments when executing the computer program.
[0140] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0141] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.
[0142] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0143] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.
[0144] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0145] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be construed as limiting the scope of the present application. It should be noted that, for a person of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A method for creating snapshot information of a system backup, characterized in that: The method comprises: In response to a current backup instruction for a target system, acquiring a change log of the target system and storage snapshot information of a last backup instruction; the storage snapshot information is a snapshot tree; Traversing the differences between the change log and the storage snapshot information to determine the snapshot incremental data corresponding to the current backup instruction; According to the snapshot incremental data, on the basis of the node relationship of the storage snapshot information, a target snapshot tree corresponding to the current backup instruction is created as the snapshot information of the current backup instruction.
2. The method according to claim 1, characterized in that: The step of creating a target snapshot tree corresponding to the current backup instruction based on the snapshot incremental data and on the basis of the node relationship of the storage snapshot information includes: Determining, according to the snapshot incremental data, node adjustment information relative to the storage snapshot information; A target snapshot tree corresponding to the current backup instruction is created according to the node adjustment information.
3. The method according to claim 2, characterized in that The step of determining, according to the snapshot incremental data, node adjustment information relative to the storage snapshot information comprises: Determine the node information of the target root node corresponding to the current backup instruction, and determine the node information of the target incremental node corresponding to the snapshot incremental data; Determine, based on the node information of the target incremental node and the node information of the target root node, the node information of the target associated node corresponding to the target root node connected to the target incremental node; Determine the target pointer information corresponding to the target incremental node, the target root node and the target associated node respectively; The node information of the target incremental node, the node information of the target root node, the node information of the target associated node and the target pointer information are used as the node adjustment information.
4. The method according to claim 2, characterized in that: The step of creating a target snapshot tree corresponding to the current backup instruction according to the node adjustment information includes: Generate an incremental part corresponding to the target snapshot tree according to the node adjustment information; Reusing the non-incremental nodes and corresponding pointer information in the storage snapshot information as the non-incremental part corresponding to the target snapshot tree; the non-incremental nodes are other nodes in the storage snapshot information except the nodes corresponding to the node adjustment information; The incremental part and the non-incremental part are concatenated to obtain the target snapshot tree.
5. The method according to claim 4, characterized in that After obtaining the target snapshot tree, the method further includes: In response to a backup comparison instruction for backup A and backup B of the target system, determining other backups between backup A and backup B; backup A is earlier than backup B; The backup comparison information of the A backup and the B backup is determined according to the incremental parts of the target snapshot trees of the other backup and the B backup.
6. The method according to claim 1, characterized in that After obtaining the change log of the target system and the storage snapshot information of the last backup instruction, the method further includes: When the difference between the change log and the storage snapshot information is traversed and it is determined that the snapshot incremental data corresponding to the current backup instruction is empty, the storage snapshot information is associated with the snapshot information of the current backup instruction.
7. A system backup snapshot information creation device, characterized in that: The device comprises: An information acquisition module, configured to acquire, in response to a current backup instruction for a target system, a change log of the target system and storage snapshot information of a last backup instruction; the storage snapshot information is a snapshot tree; An incremental determination module, configured to traverse the difference between the change log and the storage snapshot information to determine the snapshot incremental data corresponding to the current backup instruction; The snapshot creation module is used to create a target snapshot tree corresponding to the current backup instruction based on the snapshot incremental data and the node relationship of the storage snapshot information as the snapshot information of the current backup instruction.
8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.
10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
Method and device for managing snapshot
CN103268270A
Restoring databases using fully hydrated backups
CN117130827A
Data backup method and device, computer equipment and storage medium
CN117421160A
Incremental backup operations in storage networks
CN1770088A
Cited By
Snapshot information processing method, distributed storage system, device, medium and product
CN120353409A
Dealer level customer satisfaction drilling analysis and report generation system
CN121638191A
A distributor level customer satisfaction drill-down analysis and report generation system
CN121638191B
Software maintenance method and device
CN121680927A