CN111158593B - Multi-snapshot dependency relationship processing method and device and related components - Google Patents

Multi-snapshot dependency relationship processing method and device and related components Download PDF

Info

Publication number
CN111158593B
CN111158593B CN201911370289.5A CN201911370289A CN111158593B CN 111158593 B CN111158593 B CN 111158593B CN 201911370289 A CN201911370289 A CN 201911370289A CN 111158593 B CN111158593 B CN 111158593B
Authority
CN
China
Prior art keywords
snapshot
dependency
stopped
target
chain table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911370289.5A
Other languages
Chinese (zh)
Other versions
CN111158593A (en
Inventor
邢云阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201911370289.5A priority Critical patent/CN111158593B/en
Publication of CN111158593A publication Critical patent/CN111158593A/en
Application granted granted Critical
Publication of CN111158593B publication Critical patent/CN111158593B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes

Abstract

The application discloses a method for processing a multi-snapshot dependency relationship, which comprises the following steps: acquiring an initial dependency chain table; judging whether a snapshot to be stopped exists or not, wherein a target volume corresponding to the snapshot to be stopped comprises all data of a source volume; if yes, cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables; in the dependency chain table containing the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not containing the source volume, a target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table. According to the method and the device, the dependence complexity between the snapshots can be reduced, the complexity of processing IO (input/output) of the snapshot service is reduced, when a certain snapshot breaks down, the number of other affected snapshots can be reduced, and the stability of the storage system is greatly improved. The application also discloses a multi-snapshot dependency relationship processing device, electronic equipment and a computer readable storage medium, which have the beneficial effects.

Description

Multi-snapshot dependency relationship processing method and device and related components
Technical Field
The present application relates to the field of storage systems, and in particular, to a method and an apparatus for processing a multi-snapshot dependency relationship, and a related component.
Background
Because the prior art uses a COW (Copy On Write) technology, in order to reduce IO pressure of a system when operating a source volume, a mode of taking the target volume of one snapshot as the source volume to continuously create snapshots to form cascaded snapshots can be adopted. Referring to fig. 1, fig. 1 is a schematic diagram of a multi-snapshot dependency topology, where map1 is map2 dependent, map2 is map3 dependent, and map3 is map4 dependent. When a modification is made to a block of data of source volume a, the corresponding old data will only COW onto the volume that depends directly on it (i.e., target volume a 4), greatly reducing the IO pressure of the system.
For a snapshot with dependency relationship, the volumes (source volume and target volume) in the snapshot maintain a dependency chain table, and the table records the position information of the dependency chain where the volume is located. In the existing logic, when the progress of a snapshot reaches 100%, the snapshot is manually stopped, and at this time, the snapshot and the corresponding target volume thereof are removed from the dependency chain table, which may cause a complication of the dependency relationship of the downstream snapshot from which the snapshot is removed, and also cause a complication of the snapshot service.
Therefore, how to provide a solution to the above technical problem is a problem that needs to be solved by those skilled in the art.
Disclosure of Invention
The application aims to provide a method and a device for processing a multi-snapshot dependency relationship, electronic equipment and a computer-readable storage medium, which can reduce the dependency complexity between snapshots, reduce the complexity of snapshot service processing IO (input/output), and reduce the number of other affected snapshots when a snapshot fails, thereby greatly improving the stability of a storage system.
In order to solve the above technical problem, the present application provides a method for processing a multiple-snapshot dependency relationship, including:
acquiring an initial dependency chain table;
judging whether a snapshot to be stopped exists or not, wherein a target volume corresponding to the snapshot to be stopped comprises all data of a source volume;
if so, cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables;
and in the dependency chain table containing the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not containing the source volume, the target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table.
Preferably, before the determining whether there is a snapshot to be stopped, the method for processing a multi-snapshot dependency relationship further includes:
receiving a stopping instruction, wherein the stopping instruction comprises information of a target snapshot;
correspondingly, the step of judging whether the snapshot to be stopped exists specifically includes:
judging whether the snapshot progress of the target snapshot reaches a preset value;
and if so, taking the target snapshot as a snapshot to be stopped.
Preferably, the process of determining whether the snapshot progress of the target snapshot reaches a preset value specifically includes:
and judging whether the snapshot progress of the target snapshot reaches a preset value according to a preset period.
Preferably, after the step of judging whether the snapshot progress of the target snapshot reaches the preset value according to the preset period, the method for processing the multi-snapshot dependency relationship further includes:
and when the number of times of judging whether the snapshot progress of the target snapshot reaches the preset value reaches the preset number, stopping the operation of judging whether the snapshot progress of the target snapshot reaches the preset value according to the preset period.
Preferably, after determining whether there is a snapshot to be stopped, the method for processing a multi-snapshot dependency relationship further includes:
and if so, responding to the stopping instruction, and controlling the snapshot to be stopped to stop.
In order to solve the above technical problem, the present application further provides a multi-snapshot dependency relationship processing apparatus, including:
the acquisition module is used for acquiring an initial dependency chain table;
the judging module is used for judging whether the snapshot to be stopped exists or not, if so, the cutting module is triggered, and the target volume corresponding to the snapshot to be stopped comprises all data of the source volume;
the cutting module is used for cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables;
and in the dependency chain table containing the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not containing the source volume, the target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table.
Preferably, the multi-snapshot dependency processing apparatus further includes:
the receiving module is used for receiving a stopping instruction, wherein the stopping instruction comprises information of the target snapshot;
correspondingly, the judging module is specifically configured to:
and judging whether the snapshot progress of the target snapshot reaches a preset value, if so, taking the target snapshot as the snapshot to be stopped.
Preferably, the process of determining whether the snapshot progress of the target snapshot reaches a preset value specifically includes:
and judging whether the snapshot progress of the target snapshot reaches a preset value according to a preset period.
In order to solve the above technical problem, the present application further provides an electronic device, including:
a memory for storing a computer program;
a processor for implementing the steps of the multi-snapshot dependency processing method as described in any one of the above when executing the computer program.
To solve the above technical problem, the present application further provides a computer-readable storage medium, having a computer program stored thereon, where the computer program, when executed by a processor, implements the steps of the multi-snapshot dependency processing method according to any one of the above.
The application provides a method for processing multi-snapshot dependency relationship, when detecting a snapshot to be stopped, changing the dependency relationship of a downstream snapshot of the snapshot to be stopped in an initial dependency chain table, separating the initial dependency chain table into two independent dependency chain tables containing a source volume as a dependency starting point of the dependency chain table, considering that all data of the source volume are already stored in a target volume corresponding to the snapshot to be stopped, and deleting the snapshot to be stopped, wherein the data in the corresponding target volume is not affected, so that in the dependency chain table not containing the source volume, the target volume corresponding to the snapshot to be stopped can be used as the dependency starting point of the dependency chain table, reducing the dependency complexity between the snapshots and the complexity of processing IO of snapshot services, and when a snapshot fails, reducing the number of other affected snapshots, the stability of the storage system is greatly improved. The application also provides a multi-snapshot dependency processing device, electronic equipment and a computer readable storage medium, and the multi-snapshot dependency processing device, the electronic equipment and the computer readable storage medium have the same beneficial effects as the multi-snapshot dependency processing method.
Drawings
In order to more clearly illustrate the embodiments of the present application, the drawings needed for the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings can be obtained by those skilled in the art without inventive effort.
FIG. 1 is a schematic diagram of a multi-snapshot dependency topology provided by the present application;
FIG. 2 is a flowchart illustrating steps of a method for processing a multi-snapshot dependency provided herein;
FIG. 3 is a schematic structural diagram of a multi-snapshot dependency processing apparatus according to the present application;
fig. 4 is a schematic structural diagram of an electronic device provided in the present application.
Detailed Description
The core of the application is to provide a method and a device for processing a multi-snapshot dependency relationship, an electronic device and a computer-readable storage medium, which can reduce the dependency complexity between snapshots, reduce the complexity of processing IO (input/output) of snapshot services, and reduce the number of other affected snapshots when a snapshot fails, thereby greatly improving the stability of a storage system.
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
To facilitate understanding of the method for processing multiple snapshot dependencies of the present application, first, a description is made on a multiple snapshot dependency, and referring to fig. 1, a schematic diagram of a multiple snapshot dependency topology of an embodiment of the present application is shown, where a is a source volume, a4 is a target volume of a snapshot map4 created and started for a, A3 is a target volume of a snapshot map3 created and started for a4, a2 is a target volume of a snapshot map2 created and started for A3, a1 is a target volume of a snapshot map1 created and started for a2, a map1 is dependent on a map2, a map2 is dependent on a map3, a map3 is dependent on a map4, and when a block data of the source volume a is modified, corresponding old data is only COW to a volume directly dependent on the block data (i.e., on the target volume a 4).
Referring to fig. 2, fig. 2 is a flowchart illustrating steps of a multi-snapshot dependency processing method according to the present application, where the multi-snapshot dependency processing method includes:
s101: acquiring an initial dependency chain table;
specifically, for a snapshot with a dependency relationship, the volumes (the source volume and the target volume) in the snapshot maintain an information table, that is, an initial dependency chain table, where the initial dependency chain table records the location information of the volume in the dependency chain. Assume that there are five fields in the initial dependency chain table, id, up _ map, up _ disk, dn _ map, and dn _ disk. Wherein id represents a unique identifier of the volume in the initial dependency chain table, up _ map and up _ disk sequentially represent an upstream map and an upstream volume of the volume in the initial dependency chain table, dn _ map and dn _ disk respectively represent a downstream map and a downstream volume of the volume in the initial dependency chain table, and taking fig. 1 as an example, id of volume A3 is 3, up _ map = map3, up _ disk = a4, dn _ map = map2, and dn _ disk = a 2. The corresponding information for each volume in the initial dependency list is updated each time a change in the dependency relationship occurs.
In the existing logic, when the progress of map2 reaches 100%, map2 is manually stopped, at this time, map2 and volume a2 are removed from the initial dependency list, and the initial dependency list is changed to a new dependency list, as shown in table 1, it can be seen that, after stopping map2, the system performs an operation of removing map2 and volume a2 from the initial dependency list, and simultaneously splicing the front and back lists of volume a2, at this time, the previous volume dependent on volume a2 is changed to the volume dependent on a 2.
TABLE 1 Prior Art map2 dependency relationship before/after stop Table
Figure 484112DEST_PATH_IMAGE001
S102: judging whether the snapshot to be stopped exists or not, wherein the target volume corresponding to the snapshot to be stopped contains all data of the source volume, and if yes, executing S103;
specifically, before executing this step, an operation of receiving a stop instruction sent by a user may be included, where the stop instruction may include information corresponding to a target snapshot, and considering that there is a dependency relationship between snapshots in this embodiment, after stopping a certain snapshot, other snapshots may be affected, and in order to avoid a user misoperation, this embodiment, after receiving the stop instruction, first determines whether the progress of the target snapshot included in the stop instruction is 100%, that is, the corresponding target volume includes all data of the source volume, if so, takes the target snapshot as a snapshot to be stopped, and responds to the stop instruction, and stops the snapshot, and if not, follows the original flow.
As a preferred embodiment, whether the snapshot progress of the target snapshot reaches a preset value may be determined according to a preset period. Further, the step may further include stopping the operation of determining whether the snapshot progress of the target snapshot reaches the preset value according to the preset period when the number of times that whether the snapshot progress of the target snapshot reaches the preset value reaches the preset number of times.
S103: cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables;
in the dependency chain table containing the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not containing the source volume, a target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table.
Specifically, in this embodiment, after the target snapshot is detected to be 100%, the target snapshot is not removed from the dependency chain table, but the initial dependency chain table is cut at this point, the snapshot is taken as a cut point, the initial dependency chain table is divided into two parts, taking the multi-snapshot dependency topological relation of fig. 1 as an example, assuming that the snapshot to be stopped is map2, taking into account that all data of the downstream volume is already stored in the volume a2, and after the snapshot relation map2 is deleted, the data in the volume a2 is not affected, so that the initial dependency chain table can be divided into two parts, the dependency relation of the former segment of the chain table is unchanged, the snapshot in the latter segment of the dependency chain table is no longer associated with the former segment of the dependency chain table, but is independent into a new dependency chain table, and the dependency starting point of the snapshot is the target volume to be stopped (i.e., the volume a 2), and the cut dependency chain table 2 shows the dependency chain table.
TABLE 2 dependency relationship lookup table before/after stop of map2 in this embodiment
Figure 932411DEST_PATH_IMAGE002
It can be understood that, considering that when a snapshot relation in the dependency chain is stopped unexpectedly, and at this time, the target volume in the snapshot does not store all data in the source volume, which results in that all volumes downstream of the volume cannot acquire data that is needed by the volumes but not present in the target volume, when they want to continue searching data upstream along the dependency chain, it is found that the upstream map cannot be connected because of the stoppage of the failure, so that data errors of all volumes downstream are caused, that is, data inconsistency occurs, at this time, the snapshots all become a stopped state, and the target volume goes offline. By adopting the scheme of the application, the dependency relationship before and after the snapshot is to be stopped is processed, the dependency relationship linked list is divided into a plurality of independent dependency relationship chains after the snapshot is to be stopped, and if a certain snapshot relationship in the dependency chains is stopped due to an accident, the original initial dependency linked list is cut, so that the dependency complexity between the snapshots is reduced, the number of affected maps can be reduced to a certain extent, and the system stability is improved.
In summary, in this embodiment, a new dependency relationship is constructed by using a volume that has been separated from a dependency chain, so that an original dependency chain can be split into two new dependency chains when a map is deleted, thereby reducing the dependency complexity of a downstream snapshot from which a snapshot is deleted, and reducing the complexity of a snapshot service.
It can be seen that, in this embodiment, when a snapshot to be stopped is detected, the dependency relationship of the downstream snapshot of the snapshot to be stopped in the initial dependency chain table is changed, the initial dependency chain table is separated into two independent dependency chain tables including the dependency chain table of the source volume, the source volume is used as the dependent starting point of the dependent linked list, and after the snapshot to be stopped is deleted, considering that all data of the source volume is stored in the target volume corresponding to the snapshot to be stopped, the data in its corresponding target volume is not affected, and therefore in a dependency list that does not contain a source volume, the target volume corresponding to the snapshot to be stopped can be used as the dependent starting point of the dependent linked list, so that the dependent complexity between the snapshots is reduced, meanwhile, the complexity of the snapshot service processing IO is reduced, when a certain snapshot breaks down, the number of other affected snapshots can be reduced, and the stability of the storage system is greatly improved.
Referring to fig. 3, fig. 3 is a schematic structural diagram of a multi-snapshot dependency processing apparatus provided in the present application, including:
an obtaining module 1, configured to obtain an initial dependency chain table;
the judging module 2 is used for judging whether the snapshot to be stopped exists or not, if so, the cutting module 3 is triggered, and the target volume corresponding to the snapshot to be stopped contains all data of the source volume;
the cutting module 3 is used for cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables;
in the dependency chain table including the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not including the source volume, the target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table.
It can be seen that, in this embodiment, when a snapshot to be stopped is detected, the dependency relationship of the downstream snapshot of the snapshot to be stopped in the initial dependency chain table is changed, the initial dependency chain table is separated into two independent dependency chain tables including the dependency chain table of the source volume, the source volume is used as the dependent starting point of the dependent linked list, and after the snapshot to be stopped is deleted, considering that all data of the source volume is stored in the target volume corresponding to the snapshot to be stopped, the data in its corresponding target volume is not affected, and therefore in a dependency list that does not contain a source volume, the target volume corresponding to the snapshot to be stopped can be used as the dependent starting point of the dependent linked list, so that the dependent complexity between the snapshots is reduced, meanwhile, the complexity of the snapshot service processing IO is reduced, when a certain snapshot breaks down, the number of other affected snapshots can be reduced, and the stability of the storage system is greatly improved.
As a preferred embodiment, the multi-snapshot dependency processing apparatus further includes:
the receiving module is used for receiving a stopping instruction, and the stopping instruction comprises information of the target snapshot;
correspondingly, the judging module 2 is specifically configured to:
and judging whether the snapshot progress of the target snapshot reaches a preset value, if so, taking the target snapshot as the snapshot to be stopped.
As a preferred embodiment, the process of determining whether the snapshot progress of the target snapshot reaches the preset value specifically includes:
and judging whether the snapshot progress of the target snapshot reaches a preset value according to a preset period.
As a preferred embodiment, the multi-snapshot dependency processing apparatus further includes:
and the stopping module is used for stopping the operation of judging whether the snapshot progress of the target snapshot reaches the preset value according to the preset period when the times of judging whether the snapshot progress of the target snapshot reaches the preset value reach the preset times.
As a preferred embodiment, the multi-snapshot dependency processing apparatus further includes:
and the response module is used for responding to the stop instruction and controlling the snapshot to be stopped to stop when the snapshot to be stopped exists.
On the other hand, the present application further provides an electronic device, referring to fig. 4, which shows a schematic structural diagram of an electronic device according to an embodiment of the present application, where the electronic device 2100 according to the embodiment may include: a processor 2101 and a memory 2102.
Optionally, the electronic device may further comprise a communication interface 2103, an input unit 2104 and a display 2105 and a communication bus 2106.
The processor 2101, the memory 2102, the communication interface 2103, the input unit 2104, the display 2105, and the like communicate with each other via the communication bus 2106.
In this embodiment, the processor 2101 may be a Central Processing Unit (CPU), an asic, a digital signal processor, an off-the-shelf programmable gate array or other programmable logic device.
The processor may call a program stored in the memory 2102. Specifically, the processor may perform operations performed on the electronic device side in the following embodiments of the multiple-snapshot dependency processing method.
The memory 2102 stores one or more programs, which may include program code including computer operating instructions, and in this embodiment, at least one program for implementing the following functions is stored in the memory:
acquiring an initial dependency chain table;
judging whether a snapshot to be stopped exists or not, wherein a target volume corresponding to the snapshot to be stopped comprises all data of a source volume;
if yes, cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables;
in the dependency chain table containing the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not containing the source volume, a target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table.
It can be seen that, in this embodiment, when a snapshot to be stopped is detected, the dependency relationship of the downstream snapshot of the snapshot to be stopped in the initial dependency chain table is changed, the initial dependency chain table is separated into two independent dependency chain tables including the dependency chain table of the source volume, the source volume is used as the dependent starting point of the dependent linked list, and after the snapshot to be stopped is deleted, considering that all data of the source volume is stored in the target volume corresponding to the snapshot to be stopped, the data in its corresponding target volume is not affected, and therefore in a dependency list that does not contain a source volume, the target volume corresponding to the snapshot to be stopped can be used as the dependent starting point of the dependent linked list, so that the dependent complexity between the snapshots is reduced, meanwhile, the complexity of the snapshot service processing IO is reduced, when a certain snapshot breaks down, the number of other affected snapshots can be reduced, and the stability of the storage system is greatly improved.
In one possible implementation, the memory 2102 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application program required for at least one function (such as time determination, etc.), and the like; the storage data area may store data created according to the use of the computer.
Further, the memory 2102 may include high speed random access memory, and may also include non-volatile memory, such as at least one disk storage device or other volatile solid state storage device.
The communication interface 2103 may be an interface of a communication module, such as an interface of a GSM module.
The present application may also include a display 2104 and an input unit 2105, among others.
Of course, the structure of the internet of things device shown in fig. 4 does not constitute a limitation on the internet of things device in the embodiment of the present application, and in practical applications, the electronic device may include more or less components than those shown in fig. 4, or some components in combination.
In another aspect, the present application further provides a computer readable storage medium having a computer program stored thereon, which when executed by a processor, implements the steps of the multi-snapshot dependency processing method as described in any one of the above.
For the introduction of a computer-readable storage medium provided in the present application, please refer to the above embodiments, which are not described herein again.
The computer-readable storage medium provided by the application has the same beneficial effects as the multi-snapshot dependency relationship processing method.
It should also be noted that, in this specification, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the application. Thus, the present application is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (8)

1. A method for processing a multi-snapshot dependency relationship, comprising:
acquiring an initial dependency chain table;
judging whether a snapshot to be stopped exists or not, wherein a target volume corresponding to the snapshot to be stopped comprises all data of a source volume;
if yes, cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables;
in the dependency chain table containing the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not containing the source volume, the target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table;
before the step of judging whether the snapshot to be stopped exists, the method for processing the multi-snapshot dependency relationship further comprises the following steps:
receiving a stopping instruction, wherein the stopping instruction comprises information of a target snapshot;
correspondingly, the step of judging whether the snapshot to be stopped exists specifically includes:
judging whether the snapshot progress of the target snapshot reaches a preset value;
and if so, taking the target snapshot as a snapshot to be stopped.
2. The method for processing the multi-snapshot dependency relationship according to claim 1, wherein the step of determining whether the snapshot progress of the target snapshot reaches a preset value specifically comprises:
and judging whether the snapshot progress of the target snapshot reaches a preset value according to a preset period.
3. The method for processing the multiple snapshot dependencies according to claim 2, wherein after determining whether the snapshot progress of the target snapshot reaches a preset value according to a preset period, the method further comprises:
and when the number of times of judging whether the snapshot progress of the target snapshot reaches the preset value reaches the preset number, stopping the operation of judging whether the snapshot progress of the target snapshot reaches the preset value according to the preset period.
4. The method for processing a multiple-snapshot dependency relationship according to any one of claims 1 to 3, wherein after determining whether there is a snapshot to be stopped, the method further comprises:
and if so, responding to the stopping instruction, and controlling the snapshot to be stopped to stop.
5. A multi-snapshot dependency processing apparatus, comprising:
the acquisition module is used for acquiring an initial dependency chain table;
the judging module is used for judging whether the snapshot to be stopped exists or not, if so, the cutting module is triggered, and the target volume corresponding to the snapshot to be stopped comprises all data of the source volume;
the cutting module is used for cutting the initial dependency chain table according to the snapshot to be stopped to obtain a plurality of independent dependency chain tables;
in the dependency chain table containing the source volume, the source volume is used as a dependency starting point of the dependency chain table, and in the dependency chain table not containing the source volume, the target volume corresponding to the snapshot to be stopped is used as the dependency starting point of the dependency chain table;
the multi-snapshot dependency processing apparatus further includes:
the receiving module is used for receiving a stopping instruction, wherein the stopping instruction comprises information of the target snapshot;
correspondingly, the judging module is specifically configured to:
and judging whether the snapshot progress of the target snapshot reaches a preset value, if so, taking the target snapshot as the snapshot to be stopped.
6. The device according to claim 5, wherein the process of determining whether the snapshot progress of the target snapshot reaches a preset value specifically comprises:
and judging whether the snapshot progress of the target snapshot reaches a preset value according to a preset period.
7. An electronic device, comprising:
a memory for storing a computer program;
a processor for implementing the steps of the multi-snapshot dependency processing method of any one of claims 1-4 when executing said computer program.
8. A computer-readable storage medium, having stored thereon a computer program which, when being executed by a processor, carries out the steps of the multi-snapshot dependency processing method according to any one of claims 1-4.
CN201911370289.5A 2019-12-26 2019-12-26 Multi-snapshot dependency relationship processing method and device and related components Active CN111158593B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911370289.5A CN111158593B (en) 2019-12-26 2019-12-26 Multi-snapshot dependency relationship processing method and device and related components

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911370289.5A CN111158593B (en) 2019-12-26 2019-12-26 Multi-snapshot dependency relationship processing method and device and related components

Publications (2)

Publication Number Publication Date
CN111158593A CN111158593A (en) 2020-05-15
CN111158593B true CN111158593B (en) 2022-07-08

Family

ID=70558366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911370289.5A Active CN111158593B (en) 2019-12-26 2019-12-26 Multi-snapshot dependency relationship processing method and device and related components

Country Status (1)

Country Link
CN (1) CN111158593B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112069258B (en) * 2020-09-08 2024-04-19 北京金山云网络技术有限公司 Transaction progress management method and device and distributed database
CN112115153A (en) * 2020-09-21 2020-12-22 北京字跳网络技术有限公司 Data processing method, device, equipment and storage medium
CN114528047A (en) * 2022-02-18 2022-05-24 北京恒华伟业科技股份有限公司 Control initialization method, system, equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104360914A (en) * 2014-10-22 2015-02-18 浪潮(北京)电子信息产业有限公司 Incremental snapshot method and device
GB201617177D0 (en) * 2015-10-12 2016-11-23 International Business Machines Corporation Point-in-time copy with chain cloning
CN106569872A (en) * 2016-09-28 2017-04-19 浪潮电子信息产业股份有限公司 Method for shortening virtual machine snapshot chain
CN106844597A (en) * 2017-01-14 2017-06-13 郑州云海信息技术有限公司 The method and its device of a kind of quick deletion dependent snapshot target volume

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104360914A (en) * 2014-10-22 2015-02-18 浪潮(北京)电子信息产业有限公司 Incremental snapshot method and device
GB201617177D0 (en) * 2015-10-12 2016-11-23 International Business Machines Corporation Point-in-time copy with chain cloning
CN106569872A (en) * 2016-09-28 2017-04-19 浪潮电子信息产业股份有限公司 Method for shortening virtual machine snapshot chain
CN106844597A (en) * 2017-01-14 2017-06-13 郑州云海信息技术有限公司 The method and its device of a kind of quick deletion dependent snapshot target volume

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Boosting Transactional Protocol Scalability through Efficient Consistent Snapshots";Alejandro Z. Tomsic;《2016 27th International Workshop on Database and Expert Systems Applications (DEXA)》;20170116;摘要 *
一种在存储子系统中实现依赖快照的技术;张宇等;《计算机工程与应用》;20110127(第05期);第53-56页 *

Also Published As

Publication number Publication date
CN111158593A (en) 2020-05-15

Similar Documents

Publication Publication Date Title
CN111158593B (en) Multi-snapshot dependency relationship processing method and device and related components
CN110096476B (en) Data backup method, device and computer readable storage medium
US9317373B2 (en) Snapshots in a hybrid storage device comprising a magnetic disk and a solid state disk
US11093162B2 (en) Method and apparatus for deleting cascaded snapshot
US20150277897A1 (en) Software upgrade method and system for mobile terminal
US9037819B2 (en) Source cleaning cascaded volumes using reference counts
US20120260053A1 (en) Cascade ordering
US11907078B2 (en) Data backup method, apparatus, and system
CN107590016B (en) Power-down restarting identification method and device
CN109992452B (en) Fault processing method and device
CN109684270B (en) Database archiving method, device, system, equipment and readable storage medium
CN116149902A (en) Data recovery method and device, electronic equipment and computer readable storage medium
CN106156050B (en) Data processing method and device
CN110647463B (en) Method and device for restoring test breakpoint and electronic equipment
CN110955460A (en) Service process starting method and device, electronic equipment and storage medium
CN113254163B (en) Processing method and device of block chain data
CN115858668A (en) Distributed transaction processing method, device, electronic device and storage medium
CN115391337A (en) Database partitioning method and device, storage medium and electronic equipment
CN111352984B (en) Data distribution method, device and storage medium
CN111090491B (en) Virtual machine task state recovery method and device and electronic equipment
CN108647113B (en) Disaster recovery method and server
CN107506147B (en) Method and system for keeping consistency of metadata
CN112084171A (en) Operation log writing method, device, equipment and medium based on Cassandra database
CN111324413A (en) Data migration method and data migration management equipment
CN110908792A (en) Data processing method and device

Legal Events

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