Data management method, electronic device and computer program product

By enabling services and allocating resources on demand through the data manager, the problem of resource waste in traditional data management products is solved, achieving resource savings and improved user experience.

CN114816840BActive Publication Date: 2025-11-28EMC IP HLDG CO LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110087417.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-01-22
Publication Date
2025-11-28
Estimated Expiration
2041-05-24

AI Technical Summary

Technical Problem

In traditional data management products, all services are activated as soon as they are enabled, leading to a waste of computing and storage resources, increased operating costs, and a reduced user experience.

Method used

The data manager enables relevant services only when it receives a management operation request, disables services that have already completed operations, and dynamically adjusts resource allocation.

Benefits of technology

Save resources, improve user experience, and avoid waiting time and data loss caused by insufficient resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114816840B_ABST
    Figure CN114816840B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure relate to a data management method, an electronic device and a computer program product. The method comprises: receiving a request for performing a first management operation related to a first storage device on data, the request indicating a type of the data; determining a first service associated with the type of the data; and enabling the first service to perform the first management operation on the data. Using the technical solution of the present disclosure, the resource consumption of the data manager at runtime can be greatly reduced, so that not only the resource can be saved to reduce the operation cost of the data manager, but also the user experience of the user using the data manager can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] Embodiments of the present disclosure generally relate to the field of data management, and in particular, to a data management method, an electronic device, and a computer program product. BACKGROUND

[0002] With the continuous development of computing technology, both individuals and enterprises will save a large amount of data on the physical or virtual computers, servers, and other storage devices they own. If these data are not reasonably and effectively managed and protected, the loss of these data will result in huge losses when the data cannot be used continuously due to, for example, failure of the storage medium or errors in the data itself. Therefore, a large number of data management products are designed, developed, and used to manage and protect data accordingly. These data management products support ensuring that copies of data are safely saved by pre-saving data in multiple forms in multiple locations based on specific requirements of data owners, so that when data cannot be used continuously due to loss of data on the storage medium or failure of the storage medium itself, the data can be recovered from the saved copies.

[0003] Data management products usually support saving copies of data and recovering data from the copies by providing various services associated with data management. However, in traditional data management products, all services are simultaneously enabled with the data management product, so that when a management operation needs to be performed on the data, the corresponding service can be directly used. Since keeping the services enabled consumes computing resources and storage resources, even when a large number or even all of the services in the data management product are not used, the data management product will still consume a large amount of computing resources and storage resources, which not only causes waste of resources and increases the operating cost of the data management product, but also reduces the user experience of users of the data management product. SUMMARY

[0004] Embodiments of the present disclosure provide a data management method, an electronic device, and a computer program product.

[0005] In a first aspect of the present disclosure, a data management method is provided. The method comprises receiving a request for performing a first management operation related to a first storage device on data, the request indicating a type of the data; determining a first service associated with the type of the data; and enabling the first service to perform the first management operation on the data.

[0006] In a second aspect of the disclosure, an electronic device is provided. The electronic device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, cause the device to perform acts comprising: receiving a request for performing a first management operation related to a first storage on data, the request indicating a type of the data; determining a first service associated with the type of the data; and enabling the first service to perform the first management operation on the data.

[0007] In a third aspect of the disclosure, a computer program product is provided. The computer program product is tangibly stored on a non-transitory computer readable medium and comprises machine executable instructions that, when executed, cause a machine to perform any of the steps of the method described according to the first aspect of the disclosure.

[0008] The summary is provided to introduce a selection of concepts, in a simplified form, that are further described below in the DETAILED DESCRIPTION. This summary is not intended to identify key features or essential features of embodiments of the disclosure, nor is it intended to limit the scope of embodiments of the disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0009] The above and other objects, features and advantages of the disclosure will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings in which like reference characters refer to like parts throughout the figures, and in which:

[0010] Figure 1 A schematic diagram illustrating an example environment 100 in which devices and / or methods according to embodiments of the disclosure can be implemented is shown;

[0011] Figure 2 A flowchart illustrating a data management method 200 according to embodiments of the disclosure is shown;

[0012] Figure 3 A flowchart illustrating a data management method 300 according to embodiments of the disclosure is shown; and

[0013] Figure 4 A schematic block diagram illustrating an example device 400 that can be used to implement embodiments of the disclosure is shown.

[0014] In the various drawings, like or corresponding reference numbers refer to like or corresponding parts. DETAILED DESCRIPTION

[0015] Preferred embodiments of the present disclosure will be described in greater detail below, with reference to the accompanying drawings. While preferred embodiments of the present disclosure are shown in the drawings, it is understood that the present disclosure can be embodied in various forms without being limited by the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the present disclosure to those skilled in the art.

[0016] The term "include," and derivations thereof, means "including, but not limited to," as contrasted with "consisting of," when used herein. Unless specifically set forth herein, the term "or" means "and / or," and the term "based on" means "based, at least in part, on." The terms "one example embodiment," and "an embodiment," mean "at least one embodiment." The term "another embodiment" means "at least one additional embodiment." The terms "a first," "a second," etc., can refer to different or the same objects. Other explicitly and implicitly recited definitions can be found below.

[0017] In conventional data management products, all services are enabled at the same time as the data management product is enabled, so that the corresponding services can be directly used when a management operation on data is needed. As can be seen, the services in conventional data management products are not enabled on demand, and neither the provider nor the user of the data management product can enable or disable the services for the data management operation to be performed. However, keeping these services enabled consumes a large amount of computing resources and storage resources. For example, when a conventional data management product is enabled and kept running, even if the data management product does not perform any data management operation, the services kept enabled can occupy up to 18 GB of memory space. Therefore, for conventional data management products, even if a large number or even all of the services are not used, a large amount of computing resources and storage resources are still consumed, which not only causes waste of resources and increases the running cost of the data management product, but also reduces the user experience of the user of the data management product.

[0018] To at least partially solve one or more of the above problems and other potential problems, embodiments of the present disclosure propose a data management solution. In the data management method according to embodiments of the present disclosure, the data manager 110 enables the associated services only after receiving a request for performing a management operation related to a storage device on data 0, so that the services can be avoided to be enabled for a long time in advance in unnecessary cases, and thus the processing resources and storage resources consumed by the data manager can be saved.

[0019] Figure 1 A schematic diagram of an example environment 100 in which devices and / or methods according to embodiments of the present disclosure can be implemented is shown. According to embodiments of the present disclosure, Figure 1The example environment 100 in FIG. 1 includes a data manager 110. The data manager 110 can provide a plurality of services 111-1, 111-2, …, 111-N, which are also collectively referred to as services 111 below. The services 111 can be provided by the data manager 110 to perform a plurality of operations on the data 120. Figure 1 In the environment 100 of FIG. 1, a plurality of data 120-1, 120-2, …, 120-N are shown, which are collectively referred to as data 120. The data 120 can be provided by an enterprise or an individual. Figure 1 In the environment 100 of FIG. 1, a plurality of second storage devices 140-1, 140-2, …, 140-N are also shown, which are collectively referred to as second storage devices 140. It should be understood that although the data manager 110, the data 120, the first storage devices 130, and the second storage devices 140 are illustrated as separate units in FIG. 1, part or all of these units can also be integrated together according to different implementation architectures. For example, the data manager 110, the first storage devices 130, and the second storage devices 140 can be integrated together as one new data management system. Therefore, the scope of protection of the present disclosure is not limited to the example environment 100 shown in FIG. 1. Figure 1 Figure 1 The services 111 can include services for different types of data 120, respectively. According to embodiments of the present disclosure, the data 120 can include data owned and used by an enterprise or an individual, and the data 120 can also be referred to as data assets. The data 120 includes, for example, application data, virtual machine data, storage device data, and container data, etc. The application data can include, for example, SQL server application data, ORACLE application data, and file system application data, etc., and the container data can include, for example, KUBERNETES container data, etc.

[0020] Accordingly, the services 111 can include an application data management service ADM for application data, a virtual machine data management service VMDM for virtual machine data, a storage device data management service SDM for storage device data, and a container data management service CNDM for container data. These services for different types of data 120 can be collectively referred to as first services in the present disclosure, and can be used to cause the data 120 to be backed up to the first storage devices 130 or to be restored from the first storage devices 130. In embodiments of the present disclosure, the data 120 being backed up to the first storage devices 130 or being restored from the first storage devices 130 can be referred to as first management operations. The first storage devices 130 can also be referred to as primary storage devices.

[0021]

[0022] ​​The services 111 can also include services for causing the data 120 backed up into the first storage 130 to be further backed up to or restored from the second storage 140. In this disclosure, the data 120 backed up into the first storage 130 being further backed up to or restored from the second storage 140 can be referred to as a second management operation. The second management operation is related to the second storage 140 and the further form of data management to be performed on the data 120 backed up into the first storage 130.

[0023] For example, the second management operation can include management operations such as backup, replication, restore, cloud tier storage for long term retention, and cloud disaster recovery provided for the data 120 based on the data management requirements of the enterprise or individual. These management operations can be implemented by enabling the services 111 included in the data manager 110. The services 111 can be microservices, such that they can exist independently as separate modules in the data manager 110, and are also easily added, modified, or deleted in the data manager 110.

[0024] For example, when it is desired to cause the data 120 backed up into the first storage 130 to be further backed up to or restored from the second storage 140, which is a replication storage, for example, the services 111 can include a replication management service replmgr, when it is desired to cause the data 120 backed up into the first storage 130 to be further backed up to or restored from the second storage 140, which is a cloud tier storage, for example, the services 111 can include a cloud tier management service cloudmgr, when it is desired to cause the data 120 backed up into the first storage 130 to be further backed up to or restored from the second storage 140, which is a cloud disaster recovery storage, for example, the services 111 can include a cloud disaster recovery management service clouddr.

[0025] In Figure 1In the diagram, the bidirectional arrow between data 120 and the first storage device 130 represents a first management operation that allows data 120 to be backed up to or restored from the first storage device 130. A unidirectional arrow pointing from data manager 110 to this bidirectional arrow indicates that the first management operation is implemented through service 111 within data manager 110. Similarly, the bidirectional arrow between the first storage device 130 and the second storage device 140 represents a second management operation that allows data 120 backed up to the first storage device 130 to be further backed up to or restored from the second storage device 140. A unidirectional arrow pointing from data manager 110 to this bidirectional arrow indicates that the second management operation is implemented through service 111 within data manager 110.

[0026] In the embodiments of this disclosure, a data manager 110 is used as an example for illustration, and the data manager 110 may include any physical or virtual central processing unit, dedicated processing unit, and proprietary accelerator, etc. However, the scope of protection of this disclosure is not limited thereto, but can be applied to various computing elements, units, modules, or systems capable of providing input / output processing capabilities.

[0027] It should be understood that the example environment 100 is merely exemplary and not limiting, and it is scalable or scalable. For example, the example environment 100 may include more data managers 110, more data 120, more first storage devices 130, and more second storage devices 140, thereby enabling more users to simultaneously utilize more data managers 110, more first storage devices 130, and more second storage devices 140 to protect more data. Furthermore, the example environment 100 may only include the first storage device 130 and exclude the second storage device 140, and in this case, the data manager 110 may only utilize its service 111 to back up or restore data 120 to or from the first storage device 130, without considering further backing up or restoring the data 120 backed up to or from the first storage device 130.

[0028] The following is Figure 1 The following will be used as an example to illustrate the data manager 110, data 120, first storage device 130, and second storage device 140 included in the data manager 110, data 120, first storage device 130, and second storage device 140. Figure 2 and Figure 3 The data management method 200 and data management method 300 are shown.

[0029] Figure 2 A flowchart of a data management method 200 according to an embodiment of the present disclosure is shown. Method 200 can be... Figure 1The data manager 110 shown in the example environment 100 can also be implemented by other suitable devices. It should be understood that the data management method 200 can further include additional steps not shown and / or can omit the steps shown, and the scope of embodiments of the present disclosure is not limited in this respect.

[0030] At block 202, the data manager 110 receives a request for performing a first management operation related to the first storage 130 on the data 120. According to embodiments of the present disclosure, the aforementioned request can be a management policy sent by, for example, an enterprise or an individual to the data manager 110 for indicating a management operation desired to be performed on the data 120 owned and used by the enterprise or the individual. Thus, the request can indicate a type of the data 120 on which the management operation is desired to be performed. According to embodiments of the present disclosure, the type of the data 120 can include, for example, application data, virtual machine data, storage data, and container data, and thus the aforementioned request can indicate that the type of the data 120 is application data, virtual machine data, storage data, or container data. For example, the management policy can directly indicate the type of the data 120, the first storage 130, and the first management operation including a backup operation or a recovery operation desired to be performed on the data 120. According to embodiments of the present disclosure, since only one first storage 130 is included in the example environment 100, the management policy can also not need to indicate the first storage 130. When multiple first storages 130 are included in the example environment 100, the management policy can indicate a corresponding first storage 130 of the multiple first storages 130 for performing the first management operation. In addition, the management policy can also indicate a time, a schedule, a number of times, and a form of taking several levels of protection associated with performing the management operation on the data 120, for example, to which several different locations the data is backed up.

[0031] At block 204, the data manager 110 determines a first service associated with the type of the data 120. According to embodiments of the present disclosure, the first service can include, for example, an application data management service ADM for application data, a virtual machine data management service VMDM for virtual machine data, a storage data management service SDM for storage data, and a container data management service CNDM for container data, and thus the data manager 110 can determine that the first service is the application data management service ADM, the virtual machine data management service VMDM, the storage data management service SDM, or the container data management service CNDM based on whether the type of the data 120 is application data, virtual machine data, storage data, or container data.

[0032] At block 206, the data manager 110 enables the first service to perform the first management operation on the data 120. According to embodiments of the present disclosure, the first service can be a microservice, and the first management operation can include causing the data 120 to be backed up to or restored from the first storage 130.

[0033] According to embodiments of the present disclosure, after the data manager 110 enables the first service, the data manager 110 can add the first service to the enabled service list to indicate that the first service has been enabled. Therefore, before the data manager 110 enables the first service, the enabled service list can also be checked to determine whether the first service has been enabled. When the first service has been enabled, the data manager 110 need not perform the operation of enabling the first service again.

[0034] With the data management method 200, since the data manager 110 enables the associated first service only after receiving the request for performing the first management operation on the data 120 related to the first storage 130, the first service can be avoided from being enabled in advance for a long time in unnecessary cases, thereby saving the processing resources and storage resources consumed by the data manager 110.

[0035] Figure 3 A flowchart of a data management method 300 according to embodiments of the present disclosure is shown. The method 300 can also be implemented by the data manager 110 shown in FIG. 1, or by other appropriate devices. It should be understood that the data management method 300 can also include additional steps not shown and / or the steps shown can be omitted, and the scope of embodiments of the present disclosure is not limited in this respect. The data management method 300 is a specific implementation of the data management method 200. Figure 1

[0036] At block 302, the data manager 110 receives a request for performing a first management operation on the data 120 related to the first storage 130. The specific content of the actions involved in block 302 is the same as that involved in block 202, and is not repeated here.

[0037] At block 304, the data manager 110 determines the first service associated with the type of the data 120. The specific content of the actions involved in block 304 is the same as that involved in block 204, and is not repeated here.

[0038] At block 306, the data manager 110 enables the first service to perform the first management operation on the data 120. The specific content of the actions involved in block 306 is the same as that involved in block 206, and is not repeated here.

[0039] ​At block 308, the data manager 110 determines whether the execution of the first management operation is completed. When the data manager 110 determines that the execution of the first management operation has been completed, the method 300 proceeds to block 310. According to an embodiment of the present disclosure, the data manager 110 can establish a task associated with the execution of the first management operation using the first service, and when the data manager 110 detects that this task has been completed, it can determine that the execution of the first management operation has been completed. In addition, the data manager 110 can also determine that the execution of the first management operation has been completed by detecting the removal of the management policy.

[0040] At block 310, the data manager 110 disables the first service. According to an embodiment of the present disclosure, the first service is used by the data manager 110 to execute the first management operation. Therefore, when the execution of the first management operation has been completed, the first service can be disabled, thereby avoiding the data manager 110 consuming processing resources and storage resources due to the first service remaining enabled for a long time after being used.

[0041] According to an embodiment of the present disclosure, after the data manager 110 disables the first service, the data manager 110 can remove the first service from the list of enabled services to indicate that the first service has been disabled.

[0042] At block 312, the data manager 110 determines the amount of resources required to execute the first management operation on the data 120. According to an embodiment of the present disclosure, the data manager 110 can determine the amount of resources required to execute the first management operation on the data 120 based on a previously recorded history associated with the execution of the first management operation. For example, the data manager 110 can determine that when the type of the data 120 is virtual machine data, the execution of the first management operation on the data 120 requires occupying 1% of the computing resources of a 2.4GHz central processing unit and 10MB of memory space.

[0043] At block 314, the data manager 110 determines whether the number of the data 120 of the type has increased. When the data manager 110 determines that the number of the data 120 of the type has increased, the method 300 proceeds to block 316. According to an embodiment of the present disclosure, the data manager 110 can previously know the number of the data 120 that the enterprise or the individual user wishes to manage using the data manager 110. Therefore, when the user's data 120 increases, the data manager 110 can know that the number of the data 120 has increased.

[0044] At block 316, the data manager 110 allocates additional resources for performing the first management operation on the increased number of data 120 determined at block 314 based on the amount of resources determined at block 312. According to an embodiment of the present disclosure, the data manager 110 may, for example, determine that when the type of data 120 is virtual machine data, and performing the first management operation on the data 120 requires occupying 1% of the computing resources of a 2.4GHz central processing unit and 10MB of memory space. Meanwhile, the data manager 110 may, for example, have determined that there are currently 100 virtual machines that can need to perform the first management operation, and has allocated 1 2.4GHz central processing unit and 1GB of memory space accordingly. At this time, if the data manager 110 determines at block 314 that the user has added 50 virtual machines and can need to perform the first management operation, the data manager 110 can allocate one more 2.4GHz or a central processing unit with a slightly lower frequency and 500MB of memory space, so that the data manager 110 can use two central processing units and a total of 1.5GB of memory space for providing the first management operation on the increased number of a total of 150 virtual machines.

[0045] Performing the operations in blocks 312, 314 and 316 can achieve avoiding the situation that the amount of resources is insufficient when the first management operation needs to be performed on the data 120, and in turn can avoid the waiting time that additional resources must be allocated when the first management operation is performed due to the temporary discovery of insufficient amount of resources, and can also avoid the situation that the data 120 of the user is lost and cannot be recovered during this waiting time. In addition, when the data manager 110 has allocated a large amount of resources for performing the first management operation on the data 120, the data manager 110 can also reduce the amount of resources that has been allocated based on the determination of the decrease of data that needs to be performed the first management operation, thereby achieving further saving of the amount of resources consumed by the data manager 110.

[0046] It should be noted that the operations in blocks 312, 314 and 316 in the data management method 300 are optional operations, and the data management method 400 can also not include these operations involving allocating additional resources by determining the amount of resources required for performing the first management operation on the data 120 and the increased number of data 120. In addition, the operations in blocks 312, 314 and 316 can be performed before, after or at the same time as the operations in other blocks in the data management method 300, without affecting the implementation of the data management method 300, and therefore the scope of the embodiments of the present disclosure is not limited in this respect.

[0047] At block 318, the data manager 110 determines a second service associated with a second management operation to be performed on the data 120. According to embodiments of the present disclosure, the request received by the data manager 110 at block 302 also indicates a second management operation to be performed on the data 120 in relation to the second storage 140. For example, the aforementioned request can be a management policy sent by, for example, an enterprise or an individual to the data manager 110 to indicate management operations that are desired to be performed on the data 120 owned and used by the enterprise or the individual. The second management operation can include, for example, causing the data 120 backed up to the first storage 130 to be further backed up to, or recovered from, a second storage 140 that is, for example, a replication storage, causing the data 120 backed up to the first storage 130 to be further backed up to, or recovered from, a second storage 140 that is, for example, a cloud tier storage, and causing the data 120 backed up to the first storage 130 to be further backed up to, or recovered from, a second storage 140 that is, for example, a cloud disaster recovery storage.

[0048] For another example, the second service can include, for example, a replication management service replmgr for causing the data 120 backed up to the first storage 130 to be further backed up to, or recovered from, a second storage 140 that is, for example, a replication storage, a cloud tier management service cloudmgr for causing the data 120 backed up to the first storage 130 to be further backed up to, or recovered from, a second storage 140 that is, for example, a cloud tier storage, and a cloud disaster recovery management service clouddr for causing the data 120 backed up to the first storage 130 to be further backed up to, or recovered from, a second storage 140 that is, for example, a cloud disaster recovery storage.

[0049] At block 320, the data manager 110 enables the second service to perform the second management operation on the data 120. According to embodiments of the present disclosure, the second service can be a microservice.

[0050] According to embodiments of the present disclosure, after the data manager 110 enables the second service, the data manager 110 can add the second service to an enabled service list to indicate that the second service has been enabled. Thus, the enabled service list can also be checked to determine whether the second service has been enabled before the data manager 110 enables the second service. When the second service has already been enabled, the data manager 110 does not need to perform the operation of enabling the second service again. The enabled service list for the second service can be the same as or different from the enabled service list for the first service, and the scope of embodiments of the present disclosure is not limited in this aspect.

[0051] Meanwhile, the data manager 110 can also disable the second service after determining that the execution of the second management operation is completed, thereby avoiding the data manager 110 from consuming processing resources and storage resources due to the first service and the second service remaining enabled for a long time after being used. At this time, the data manager 110 can determine that the execution of the second management operation has been completed by detecting the removal of the management policy.

[0052] According to embodiments of the present disclosure, after the data manager 110 disables the second service, the data manager 110 can remove the second service from the list of enabled services to indicate that the second service has been disabled.

[0053] According to embodiments of the present disclosure, the request received by the data manager 110 at block 302 can indicate a plurality of second management operations related to a plurality of second storage devices 140, or the second management operation can be related to a plurality of second storage devices 140 at the same time. At this time, the data manager 110 can enable a plurality of second services at the same time. For example, the management policy can directly indicate a plurality of second storage devices 140 and a backup or a restore operation associated with the plurality of second storage devices 140.

[0054] With the data management method 300, since the data manager 110 enables the associated first service and the second service only after receiving a request for performing a first management operation related to the first storage device 130 and a second management operation related to the second storage device 140 on the data 120, the first service can be prevented from being enabled for a long time in advance unnecessarily, thereby saving the processing resources and the storage resources consumed by the data manager 110. In addition, since the data manager 110 disables the associated first service and the second service after determining that the first management operation and the second management operation are completed, the data manager 110 can also be prevented from consuming processing resources and storage resources due to the first service and the second service remaining enabled for a long time after being used.

[0055] The above description with reference to Figures 1 to 3 The above description with reference to

[0056] It should be understood that the number of various elements and the size of physical quantities employed in the embodiments of the present disclosure and in the various drawings are merely examples and are not intended to limit the scope of protection of the embodiments of the present disclosure. The above-mentioned number and size can be arbitrarily set as needed without affecting the normal implementation of the embodiments of the present disclosure.

[0057] By the above description with reference to Figures 1 to 3 the technical solution according to the embodiments of the present disclosure has many advantages over the conventional solution.

[0058] For example, using the technical solution of the present disclosure, the resource consumption of the data manager at runtime can be greatly reduced, so not only can resources be saved, but also the user experience of users using the data manager can be improved.

[0059] For another example, using the technical solution of the present disclosure, the amount of allocated resources can be dynamically increased as the amount of data that needs to be executed by the management operation increases, so that the situation of insufficient amount of resources when performing the management operation on the increased amount of data can be avoided, and further, the waiting time for temporarily finding insufficient amount of resources when performing the management operation and having to allocate additional resources can be avoided, and the situation of the user's data being lost and unable to be recovered in this waiting time can also be avoided.

[0060] For another example, using the technical solution of the present disclosure, the amount of allocated resources can be dynamically reduced as the amount of data that needs to be executed by the management operation decreases, so that the amount of resources consumed by the data manager 110 can be further reduced.

[0061] In one example, a conventional data management product is enabled and kept running even if the data management product does not perform any data management operation, and the service that keeps the product enabled occupies up to 18 GB of memory space. In contrast, using the technical solution of the present disclosure, since the service associated with the management operation is not pre-enabled, the data manager 110 occupies less than 12 GB of memory space, and when the data manager 110 enables the virtual machine data management service VMDM in response to receiving a request, the data manager 110 only increases the occupied memory space by 2 GB, and the total memory space it occupies is still much less than the 18 GB of memory space occupied by the conventional data management product. It should be understood that the above specific example of memory space is only exemplary and does not limit the protection scope of the present disclosure in any way.

[0062] Figure 4 FIG. 1 illustrates a schematic block diagram of an example device 400 that can be used to implement embodiments of the present disclosure. According to embodiments of the present disclosure, Figure 1The data manager 110 in the above-described method 200 and method 300 can be implemented by the device 400. As shown, the device 400 includes a central processing unit (CPU) 401, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 402 or loaded from a storage unit 408 into a random access memory (RAM) 403. Various programs and data required for operation of the device 400 can also be stored in the RAM 403. The CPU 401, ROM 402, and RAM 403 are connected to each other through a bus 404. An input / output (I / O) interface 405 is also connected to the bus 404.

[0063] Various components in the device 400 are connected to the I / O interface 405, including an input unit 406, such as a keyboard, mouse, etc.; an output unit 407, such as various types of displays, speakers, etc.; the storage unit 408, such as a magnetic disk, optical disk, etc.; and a communication unit 409, such as a network card, modem, wireless communication transceiver, etc. The communication unit 409 allows the device 400 to exchange information / data with other devices through a computer network, such as the Internet, and / or various telecommunication networks.

[0064] The various processes and processes described above, such as the method 200 and method 300, can be performed by the processing unit 401. For example, in some embodiments, the method 200 and method 300 can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 408. In some embodiments, part or all of the computer program can be loaded and / or installed on the device 400 via the ROM 402 and / or the communication unit 409. When the computer program is loaded into the RAM 403 and executed by the CPU 401, one or more actions of the method 200 and method 300 described above can be performed.

[0065] Embodiments of the present disclosure can relate to methods, devices, systems, and / or computer program products. The computer program product can include a computer readable storage medium having computer readable program instructions loaded thereon for performing various aspects of embodiments of the present disclosure.

[0066] A computer readable storage medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, semiconductor, or any other suitable combination of the foregoing. More specific examples (a non- exhaustive list) of computer readable storage media include a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or a

[0067] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.

[0068] Computer readable program instructions for carrying out operations of embodiments of the disclosure can be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or source or object code, in any combination of one or more programming languages including an object oriented programming language such as Smalltalk, C++ or the like, and conventional procedural programming languages such as the "C" programming language or similar programming languages. The computer readable program instructions can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer, for example, through the Internet using an Internet Service Provider. In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate array (FPGA), or programmable logic array (PLA) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of embodiments of the present disclosure.

[0069] Various aspects of embodiments of the present disclosure are described herein with reference to flow diagrams and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the present disclosure. It will be understood that each block of the flow diagrams and / or block diagrams, and combinations of blocks in the flow diagrams and / or block diagrams, can be implemented by computer readable program instructions.

[0070] These computer readable program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flow diagrams and / or block diagrams. These computer readable program instructions can also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function / act specified in the flow diagrams and / or block diagrams.

[0071] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer, other programmable data processing apparatus, or other device implement the functions / acts specified in the flowchart and / or block diagram block or blocks.

[0072] The flow diagrams and the block diagrams in the drawings are presented to illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flow diagrams and the block diagrams can represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logic functions. In some alternative implementations, the functions noted in the blocks can occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks can sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flow diagrams, and combinations thereof, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and

[0073] Embodiments of the present disclosure have been described above, and the description is intended to be illustrative of the embodiments and not restrictive. Many modifications and variations of the described embodiments are possible and are within the scope of the disclosure. The selection of terms is intended to best describe the principles of the embodiments, practical application, or technical improvements over the technology found in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for data management, comprising: receiving a request to perform a first management operation related to a first storage device on data, the request indicating a type of the data; determining a first service associated with the type of the data, wherein the first service is a microservice; maintaining an enabled services list; based on determining the first service, making a first determination that the first service is not on the enabled services list; upon receiving the request and based on the first determination, enabling the first service to perform the first management operation on the data and adding the first service to the enabled services list; making a second determination that the first management operation is completed; and based on the second determination, disabling the first service and removing the first service from the enabled services list, wherein disabling the first service causes the first service to stop using resources.

2. The method of claim 1, wherein the first management operation comprises at least one of: causing the data to be backed up to the first storage device; and causing the data to be restored from the first storage device.

3. The method of claim 1, wherein the type of the data indicates at least one of: the data is application data, the data is virtual machine data, the data is storage device data, and the data is container data.

4. The method of claim 1, further comprising: determining an amount of resources needed to perform the first management operation on the data; if the amount of the type of data increases, allocating additional resources for performing the first management operation on the data based on the amount of resources.

5. The method of claim 1, wherein the request further indicates a second management operation related to a second storage device to be performed on the data, the method further comprising: determining a second service associated with the second management operation to be performed on the data; and enabling the second service to perform the second management operation on the data.

6. The method of claim 5, wherein the second management operation comprises at least one of: causing the data to be backed up from the first storage device to the second storage device; and causing the data to be restored from the second storage device to the first storage device.

7. An electronic device, comprising: at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, which when executed by the at least one processing unit, cause the device to perform acts comprising: receiving a request to perform a first management operation related to a first storage device on data, the request indicating a type of the data; determining a first service associated with the type of the data, wherein the first service is a microservice; maintaining an enabled services list; based on determining the first service, making a first determination that the first service is not on the enabled services list; ​ ​ enabling the first service to perform the first management operation on the data and adding the first service to the enabled services list upon receiving the request and based on the first determination; making a second determination that the first management operation is complete; and disabling the first service and removing the first service from the enabled services list based on the second determination, wherein disabling the first service causes the first service to stop using resources.

8. The electronic device of claim 7, wherein the first management operation comprises at least one of: causing the data to be backed up to the first storage; and causing the data to be restored from the first storage.

9. The electronic device of claim 7, wherein the type of the data indicates at least one of: the data is application data, the data is virtual machine data, the data is storage data, and the data is container data.

10. The electronic device of claim 7, wherein the actions further comprise: determining an amount of resources required to perform the first management operation on the data; if the amount of the type of data increases, allocating additional resources for performing the first management operation on the data based on the amount of resources.

11. The electronic device of claim 7, wherein the request further indicates a second management operation related to a second storage to be performed on the data, the actions further comprising: determining a second service associated with the second management operation to be performed on the data; and enabling the second service to perform the second management operation on the data.

12. The electronic device of claim 11, wherein the second management operation comprises at least one of: causing the data to be backed up from the first storage to the second storage; and causing the data to be restored from the second storage to the first storage.

13. A non-transitory computer-readable medium comprising computer-readable program code that, when executed by a computer processor, enables the computer processor to perform a method for data management, the method comprising: receiving a request to perform a first management operation related to a first storage on data, the request indicating a type of the data; determining a first service associated with the type of the data, wherein the first service is a microservice; maintaining an enabled services list; based on determining the first service, making a first determination that the first service is not on the enabled services list; enabling the first service to perform the first management operation on the data and adding the first service to the enabled services list upon receiving the request and based on the first determination; making a second determination that the first management operation is complete; and disabling the first service and removing the first service from the enabled services list based on the second determination, wherein disabling the first service causes the first service to stop using resources.

14. The non-transitory computer-readable medium of claim 13, the method further comprising: ​ ​ determining an amount of resources required to perform the first management operation on the data; if the quantity of the type of data increases, allocating additional resources for performing the first management operation on the data based on the amount of resources.

15. The non-transitory computer-readable medium of claim 13, wherein the request further indicates a second management operation related to a second storage device to perform on the data, the method further comprising: determining a second service associated with the second management operation to perform on the data; and enabling the second service to perform the second management operation on the data.

Citation Information

Patent Citations

  • Network safety situation perception result output method and device

    CN106941493A

  • Virtual machine backup method and component and cloud computing system

    CN111651305A