Method, electronic device and computer program product for backing up data
By entering basic information and data protection regulations by users, data backup policies are automatically generated, which solves the problem of complex data protection configuration in the existing technology, and improves the backup efficiency and rationality of the strategy.
Patent Information
- Application Number
- CN201910989407.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-10-17
- Publication Date
- 2024-12-24
- Estimated Expiration
- 2039-10-17
AI Technical Summary
Existing data protection products rely on users or backup administrators to configure data protection policies, resulting in complex configurations and difficult to meet user needs, especially for users who lack relevant knowledge and experience.
Provide a method to automatically generate recommended backup policies through user input information such as the quantity, importance and affordable data loss, combined with regionally applicable data protection regulations, and simplify the configuration process of data backup policies.
This greatly simplifies the configuration process of data backup policies and improves backup efficiency, allowing users to generate backup policies that meet service level agreements without having relevant data protection experience.
Smart Images

Figure CN112685220B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure generally relate to the field of data backup, and more particularly to a method, an electronic device, and a computer program product for backing up data. Background Art
[0002] With the massive increase in user data and the continuous development of backup technology, more and more users use data protection products such as data backup systems and data storage software to assist in the management and protection of their data assets.
[0003] Usually, users need to configure data protection policies on data protection products based on their own needs and experience. In addition, data protection policies should also comply with data protection regulations applicable in relevant regions. Then, data protection products implement protection measures for user assets in accordance with data protection policies, such as regularly backing up user assets. Therefore, whether the data protection effect ultimately meets the needs of users depends largely on the adopted data protection strategy. Summary of the invention
[0004] Embodiments of the present disclosure provide a method, an electronic device, and a computer program product for backing up data.
[0005] According to a first aspect of the present disclosure, a method for backing up data is provided. The method comprises: receiving a request for a backup policy for data from a user, the request indicating an expected backup period for backing up the data; obtaining backup information associated with the data; and generating a backup policy for the data that meets a service level agreement based on the expected backup period and the backup information.
[0006] According to a second aspect of the present disclosure, an electronic device is provided. The electronic device includes: at least one processing unit; and at least one memory. The at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, and when the instructions are executed by the at least one processing unit, the electronic device performs actions, including: receiving a request for a backup policy for data from a user, the request indicating an expected backup cycle for backing up the data; obtaining backup information associated with the data; and generating a backup policy for the data that meets a service level agreement based on the expected backup cycle and the backup information.
[0007] According to a third aspect of the present disclosure, a computer program product is provided. The computer program product is tangibly stored in a non-transitory computer storage medium and includes machine executable instructions, which, when executed by a device, cause the device to perform actions, including: receiving a request for a backup policy for data from a user, the request indicating an expected backup cycle for backing up the data; obtaining backup information associated with the data; and generating a backup policy for the data that meets a service level agreement based on the expected backup cycle and the backup information.
[0008] This 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 the present disclosure, nor is it intended to limit the scope of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The above and other objects, features and advantages of the present disclosure will become more apparent through a more detailed description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, wherein like reference numerals generally represent like components in the exemplary embodiments of the present disclosure.
[0010] Figure 1 A schematic diagram showing an example environment in which devices and / or methods according to embodiments of the present disclosure may be implemented;
[0011] Figure 2 A flow chart of a method for backing up data according to an embodiment of the present disclosure is shown;
[0012] Figure 3 A flowchart showing a method for backing up data according to an embodiment of the present disclosure is shown.
[0013] Figure 4 A schematic diagram showing a user interface of a data backup system according to an embodiment of the present disclosure;
[0014] Figure 5 A schematic block diagram of a device that can be used to implement an embodiment of the present disclosure is shown.
[0015] In the various drawings, the same or corresponding reference numerals represent the same or corresponding parts. DETAILED DESCRIPTION
[0016] The concept of the present disclosure will now be described with reference to the various exemplary embodiments shown in the accompanying drawings. It should be understood that the description of these embodiments is only to enable those skilled in the art to better understand and further implement the present disclosure, and is not intended to limit the scope of the present disclosure in any way. It should be noted that similar or identical reference numerals may be used in the figures where feasible, and similar or identical reference numerals may represent similar or identical elements. Those skilled in the art will understand from the following description that alternative embodiments of the structures and / or methods described herein may be adopted without departing from the principles and concepts of the present disclosure described.
[0017] In the context of the present disclosure, the term "including" and its various variations may be understood as open terms, which means "including but not limited to"; the term "based on" may be understood as "based at least in part on"; the term "one embodiment" may be understood as "at least one embodiment"; the term "another embodiment" may be understood as "at least one other embodiment". Other terms that may appear but are not mentioned here should not be interpreted or limited in a manner contrary to the concept on which the embodiments of the present disclosure are based, unless explicitly stated.
[0018] Currently, data protection products can help users protect their data assets by using data protection strategies such as backup strategies. As mentioned above, whether the data protection effect can ultimately meet the needs of users depends largely on the data protection strategy adopted. In practice, these data protection products are highly dependent on users or backup administrators to configure data protection strategies, which is often difficult for users who lack sufficient relevant knowledge and experience. For example, users may not be able to determine which data protection strategy is most appropriate for a specific data asset, such as whether hourly backup, weekly backup, or monthly backup should be used for SQL applications or files.
[0019] In addition, when configuring data protection policies, users can use the data protection product's wizard to complete the entire configuration process. The wizard generally includes several steps to guide users in determining data protection policies. Sometimes, users cannot determine what information the wizard requires them to enter, which will make the configuration process too cumbersome and not conducive to the generation of data protection policies.
[0020] According to an embodiment of the present disclosure, a solution for automatically creating a data protection policy is provided. The solution only requires users to input information they have determined, such as the number of data assets to be backed up, the importance of the data assets to be backed up, the amount of data loss that the user can bear, etc., and then generates a recommended backup policy based on the information entered by the user and the data protection regulations applicable to the relevant region, thereby making the interaction between the user and the data protection product simpler. With the help of this solution, the user only inputs a backup policy request for the data without having relevant data protection experience and knowledge, which greatly simplifies the configuration process of the data backup policy and improves the backup efficiency.
[0021] Figure 1 1 is a schematic diagram of an example environment 100 in which devices and / or methods according to embodiments of the present disclosure may be implemented. Figure 1 As shown, example environment 100 includes user 110, computing device 120, and network devices 130 and 140. User 110 may interact with computing device 120, e.g., user 110 may send request 102 to computing device 120 and receive policy 104 from computing device 120. Computing device 120 may communicate with network devices 130 and 140 via any wired and / or wireless connection.
[0022] The computing device 120 may be any device capable of processing computing tasks, including but not limited to a physical host, a server, etc. The computing device 120 may include a service level agreement (SLA) 122, a storage device 124, and one or more data assets 126-1, 126-2...126-N, such as text files, multimedia files, images, any number of virtual machines, etc. Hereinafter, the data assets 126-1, 126-2...126-N may be collectively referred to as "data 126" or "data assets 126".
[0023] The computing device 120 may include one or more general computing resources or special computing resources for generating data and implementing data backup. Examples of general computing resources may include, but are not limited to, a central processing unit (CPU), and examples of special computing resources may include, but are not limited to, a graphics processing unit (GPU), a field programmable gate array (FPGA), and an artificial intelligence processor (AI processor).
[0024] The storage device 124 may be any type of storage device for storing data (e.g., data 126), such as a local memory. In some embodiments, the storage device 124 may be a solid state drive (SSD). The above examples are only used to describe the present disclosure, and are not specific limitations of the present disclosure.
[0025] Network devices 130 and 140 may be remote storage devices physically away from computing device 120, and may include any type of storage devices 134 and 144, respectively, including but not limited to a data backup center, a database, a backup server, a cloud, etc. In some embodiments, network devices 130 and 140 may access computing device 120 and read data 126, respectively, via a network.
[0026] Combined with the above Figure 1 A schematic diagram of an example environment 100 in which devices and / or methods according to embodiments of the present disclosure may be implemented is described. It should be understood that the example environment 100 is described for exemplary purposes only and does not imply any limitation on the scope of the present disclosure. For example, the example environment 100 may also include any number and type of network devices, as well as any appropriate number of intermediate nodes located between the computing device 120 and the network devices 130 and 140.
[0027] Figure 2 FIG. 2 is a flow chart of a method 200 for backing up data according to an embodiment of the present disclosure. The method 200 may be Figure 1 The computing device 120 shown in the figure may also be executed by other appropriate devices. Figure 1 The network shown is used to describe the method 200. It should be understood that the method 200 may also include additional actions not shown and / or may omit the actions shown, and the scope of the present disclosure is not limited in this respect.
[0028] At 210, computing device 120 receives a request 102 from user 110 for a backup strategy for data 126. In some embodiments, request 102 from user 110 indicates a desired backup period for backing up data 126. In some embodiments, a recovery point objective (RPO) may be used to characterize the desired backup period. RPO represents the amount of data lost after a failure occurs, and is typically used to describe the amount of data loss that a user or device can tolerate. For example, user 110 may input a request to computing device 120 indicating that the desired RPO is 6 hours, i.e., the desired backup period is 6 hours.
[0029] At 220, computing device 120 obtains backup information associated with data 126. For example, the backup information may include the backup type of data 126 (e.g., full backup, differential backup, etc.), the size of the data, the type of data (e.g., virtual machine), the change rate of the data, etc. The backup data may also include the network bandwidth used to back up the data, the location and available bandwidth of the storage device (e.g., network devices 130 and 140) used to back up the data, and the like.
[0030] In some embodiments, the computing device 120 may also receive adjustment information from the user 110 for a service level agreement (SLA). An SLA is an agreement between a network service provider and a user on a series of service level objectives (SLOs). For example, an SLA may define the type of service provided by a network service provider to a user, the quality of service, the minimum bandwidth allocated to the user, the minimum network utilization performance supported, traffic priority, and the like. As described above, the backup strategy should comply with the SLA and relevant data protection regulations, such as the General Data Protection Regulation (GDPR) introduced by the European Union in 2016. The GDPR aims to curb the abuse of user information and protect user privacy data. Users in Europe should comply with the GDPR, and users outside Europe may also choose to comply with the GDPR. As another example, the "321 Backup Principle" stipulates that three copies of backup data should be stored, one of which is stored in a production environment, the backup data is stored in two different storage media, and one backup data is stored in an offsite environment.
[0031] In some embodiments, computing device 120 may set SLA based on adjustment information. For example, when user 110 chooses to perform data backup based on the “321 backup principle”, computing device 120 may set SLA 122 based on the “321 backup principle”.
[0032] At 230, the computing device 120 generates a backup strategy 104 for the data 126 that meets the service level agreement based on the expected backup cycle and the backup information. In some embodiments, the computing device 120 may provide the backup strategy 104 to the user 110, for example, through an output device. This will be described below. Figure 3 Described in detail in.
[0033] The data backup method according to the embodiment of the present disclosure can automatically generate a backup strategy that meets user expectations based on the current network environment and service level agreement, or provide appropriate backup suggestions to the user, thereby simplifying the configuration process of the data protection strategy and making the data backup plan more reasonable.
[0034] Figure 3 FIG. 3 is a flowchart of a method 300 for backing up data according to an embodiment of the present disclosure. Figure 2 A detailed description of step 230 can be obtained by Figure 1 The computing device 120 shown in the figure may also be executed by other appropriate devices. Figure 1 The network shown is used to describe the method 300. It should be understood that the method 300 may also include additional actions not shown and / or may omit the actions shown, and the scope of the present disclosure is not limited in this respect.
[0035] At 310, the computing device 120 determines one or more candidate backup cycles based on the desired backup cycle and the backup information input by the user 110. In some embodiments, the computing device 120 may further obtain an efficiency factor α and use the efficiency factor α to adjust the determined candidate backup cycle. The efficiency factor α may be set based on the storage medium type of the source device of the data, the network bandwidth used to back up the data, the deduplication rate of the data, the location of the storage device used to back up the data, and the available bandwidth of the storage device.
[0036] As an example, the computing device 120 may obtain the following expected backup period and backup information:
[0037] The expected backup period is 6 hours;
[0038] The number and size of virtual machines to be backed up, i.e., data 126;
[0039] The average rate of change of the data;
[0040] The deduplication rate of data;
[0041] The speed at which the source data is read, i.e., the available network bandwidth at the computing device 120;
[0042] The speed at which data is received, that is, the network bandwidth at the network devices 130 and 140 for storing backup data;
[0043] ·The number of data streams, etc.
[0044] The computing device 120 can perform different types of backups on the data 126. A full backup can back up all the data 126 at a certain point in time, so that in actual applications, the data of the predetermined RPO can be restored at one time, which greatly speeds up the recovery time of the system or data. A differential backup can only back up the data in the data 126 that has been added or modified in the time period since the last full backup. Therefore, compared with a full backup, a differential backup requires less storage space and a shorter backup time. An incremental backup can only back up the data that has been added or modified compared to the previous full backup or incremental backup after the last full backup or incremental backup. Compared with a differential backup, the time reference point for the backup is different.
[0045] As an example, take weekly data backup as an example, assume that a full backup is performed on Monday, and differential backups are performed from Tuesday to Friday. If the data is damaged on Friday, you only need to restore the full backup on Monday and the differential backup on Thursday. This strategy takes more time to back up data, but less time to restore data.
[0046] As another example, still taking weekly data backup as an example, assume that a full backup is performed on Monday and incremental backups are performed from Tuesday to Friday. If the data is damaged on Friday, it is necessary to restore the full backup on Monday and all incremental backups from Tuesday to Friday. This strategy takes less time to back up data, but takes more time to restore data.
[0047] In some embodiments, computing device 120 may determine candidate backup cycles for different backup types according to the following equations (1) and (2):
[0048]
[0049] In equation (1), TF represents the backup period required for a full backup of data 126, and α represents the efficiency factor. represents the size of the data 126, and Min (read bandwidth, receive bandwidth) represents the minimum value of the read speed and the receive speed.
[0050] As an alternative, in some embodiments, the computing device 120 may also determine candidate backup cycles for different backup types according to the following equation (2):
[0051]
[0052] In equation (2), TD represents the backup period required for performing a differential backup of data 126, and α represents the efficiency factor. represents the size of the data 126, Min (read bandwidth, receive bandwidth) represents the minimum value of the read speed and the receive speed, and the data change rate represents the change rate of the data 126 within a predetermined period obtained based on usage experience.
[0053] The above formulas (1) and (2) are merely simplifications of the calculation process. In actual calculations, the backup information to be considered may be added or modified as needed. In addition, it should be understood that the computing device 120 may also perform other types of backups on the data 126, and the examples of backup types do not imply any limitation on the scope of the present disclosure.
[0054] For example, according to equations (1) and (2), computing device 120 can determine that 6 hours, 5 hours, 4 hours, 3 hours, 2 hours, and 1 hour all meet the user's desired requirement of performing backup once every 6 hours. Of course, when the candidate backup period does not exceed the expected backup period, computing device 120 can also determine the candidate backup period according to other classification criteria.
[0055] At 320, computing device 120 determines whether one or more candidate backup periods satisfy the SLA. For example, computing device 120 determines whether candidate backup periods of 6 hours, 5 hours, 4 hours, 3 hours, 2 hours, and 1 hour respectively satisfy the SLAs corresponding to the "321 backup principle" selected by the user. If one or more of the candidate backup periods satisfy the SLA, the method proceeds to 330, otherwise proceeds to 350.
[0056] In some embodiments, computing device 120 may determine that some or all of the candidate backup cycles satisfy the SLA. Then, at 330, computing device 120 may determine a recommended backup cycle from the candidate backup cycles that satisfy the SLA.
[0057] As an example, computing device 120 determines that candidate backup cycles of 6 hours, 5 hours, 4 hours, 3 hours, 2 hours, and 1 hour all meet the SLA compatible with the "321 backup principle" selected by the user. However, not all candidate backup cycles are required by user 110. For example, from the perspective of optimal backup quality, 1 hour can be recommended to user 110 as a backup cycle, while from the perspective of saving backup space, 6 hours can be recommended to user 110 as a backup cycle. The other candidate backup cycles of 5 hours, 4 hours, 3 hours, and 2 hours have no obvious differences from the perspective of backup quality or backup space.
[0058] At 340, the computing device 120 generates a backup policy 104 indicating a recommended backup period. In some embodiments, the computing device 120 may generate a backup policy to indicate a recommended backup period including a backup quality optimization policy and / or a backup space saving policy, such as 6 hours and 1 hour. In some embodiments, the backup policy may also indicate a start time, an end time, a duration, and a location of a storage device for backup, etc., for backing up the data 126.
[0059] Additionally, in some embodiments, if the computing device 120 determines at 320 that it cannot find a candidate backup cycle that meets the SLA and thus cannot obtain a backup strategy for recommending to the user, the computing device 120 provides the user 110 with adjustment suggestions for the expected backup cycle at 350, for example, suggesting that the user 110 adjust the expected backup cycle to 7 hours.
[0060] Figure 4 A schematic diagram of a user interface of a data backup system according to an embodiment of the present disclosure is shown. The user interface may be, for example, a user interface of a data backup wizard program, and may be Figure 1 The output device of the computing device 120 shown is provided to the user 110, but it can also be provided by other appropriate devices. It should be understood that Figure 4The user interface shown in is merely exemplary, and the scope of the present disclosure is not limited in this regard.
[0061] like Figure 4 As shown, the user 110 can set the expected backup cycle at 402, select the data 126 to be backed up at 404, and set or modify the SLA at 406. Then, the computing device 120 generates a backup policy for the data 126 that meets the SLA based on the expected backup cycle and the backup information, and provides it to the user 110 at 408.
[0062] Figure 5 Schematic block diagram of an example device 500 that can be used to implement embodiments of the present disclosure is shown. Figure 1 The computing device 120 shown can be implemented by a device 500. As shown, the device 500 includes a central processing unit (CPU) 501, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 502 or loaded from a storage unit 508 into a random access memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the device 500 can also be stored. The CPU 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.
[0063] A number of components in the device 500 are connected to the I / O interface 505, including: an input unit 506, such as a keyboard, a mouse, etc.; an output unit 507, such as various types of displays, speakers, etc.; a storage unit 508, such as a disk, an optical disk, etc.; and a communication unit 509, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 509 allows the device 500 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 processing described above, such as methods 200 and 300, may be performed by the processing unit 501. For example, in some embodiments, the methods 200 and 300 may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 508. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 500 via the ROM 502 and / or the communication unit 509. When the computer program is loaded into the RAM 503 and executed by the CPU 501, one or more actions in the method 500 described above may be performed.
[0065] The present disclosure may be a method, an apparatus, a system and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for executing various aspects of the present disclosure.
[0066] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, 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 disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.
[0067] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.
[0068] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed entirely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some implementations, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be customized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present disclosure.
[0069] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices (systems) and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0070] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0071] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0072] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0073] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the marketplace, or to enable other persons of ordinary skill in the art to understand the implementations disclosed herein.
Claims
1. A method for backing up data, comprising: receiving a request for a backup policy for data from a user, the request indicating a desired backup period for backing up the data; obtaining backup information associated with the data; Based on the expected backup period and the backup information, generating the backup strategy for the data that meets the service level agreement; as well as In response to the backup policy for the data that meets the service level agreement failing to be generated based on the expected backup period and the backup information, providing the user with an adjustment suggestion for the expected backup period.
2. The method according to claim 1, wherein the backup information includes at least one of the following: the backup type of the data, the size of the data, the type of the data, the change rate of the data, the network bandwidth used to back up the data, the location of the storage device used to back up the data, and the available bandwidth of the storage device.
3. The method according to claim 1, wherein generating the backup strategy comprises: Determine a candidate backup period based on the expected backup period and the backup information, wherein the candidate backup period does not exceed the expected backup period; Based on the candidate backup cycles, determining a recommended backup cycle that meets the service level agreement; as well as The backup policy indicating the recommended backup period is generated.
4. The method according to claim 3, further comprising: Obtaining an efficiency factor for the backup strategy, the efficiency factor being set based on at least one of: a storage medium type of a source device of the data, a network bandwidth for backing up the data, a deduplication rate of the data, a location of a storage device for backing up the data, and an available bandwidth of the storage device; as well as The candidate backup period is adjusted based on the efficiency factor. 5 . The method according to claim 3 , wherein the backup policy further indicates at least one of the following: a start time, an end time, and a duration for backing up the data, and a location of a storage device for backup.
6. The method according to claim 1, wherein the backup strategy comprises at least one of the following: a backup quality optimization strategy and a backup space saving strategy.
7. The method according to claim 1, further comprising: The backup strategy is provided to the user.
8. The method according to claim 1, further comprising: receiving adjustment information to a service level agreement from the user; as well as The service level agreement is set based on the adjustment information.
9. An electronic device, comprising: at least one processing unit; 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, causing the electronic device to perform a method, the method comprising: receiving a request for a backup policy for data from a user, the request indicating a desired backup period for backing up the data; obtaining backup information associated with the data; generating the backup policy for the data that meets a service level agreement based on the expected backup period and the backup information; and In response to a failure to generate a backup policy for the data that meets the service level agreement based on the expected backup period and the backup information, providing the user with an adjustment suggestion for the expected backup period.
10. An electronic device according to claim 9, wherein the backup information includes at least one of the following: a backup type of the data, a size of the data, a type of the data, a change rate of the data, a network bandwidth used to back up the data, a location of a storage device used to back up the data, and an available bandwidth of the storage device.
11. The electronic device according to claim 9, wherein generating the backup strategy comprises: Determine a candidate backup period based on the expected backup period and the backup information, wherein the candidate backup period does not exceed the expected backup period; Based on the candidate backup cycles, determining a recommended backup cycle that meets the service level agreement; as well as The backup policy indicating the recommended backup period is generated.
12. The electronic device of claim 11, wherein the method further comprises: Obtaining an efficiency factor for the backup strategy, the efficiency factor being set based on at least one of: a storage medium type of a source device of the data, a network bandwidth for backing up the data, a deduplication rate of the data, a location of a storage device for backing up the data, and an available bandwidth of the storage device; as well as The candidate backup period is adjusted based on the efficiency factor. 13 . The electronic device according to claim 11 , wherein the backup policy further indicates at least one of the following: a start time, an end time, and a duration for backing up the data, and a location of a storage device for backup.
14. The electronic device according to claim 9, wherein the backup strategy comprises at least one of the following: a backup quality optimization strategy and a backup space saving strategy.
15. The electronic device of claim 9, wherein the method further comprises: The backup strategy is provided to the user.
16. The electronic device of claim 9, wherein the method further comprises: receiving adjustment information to a service level agreement from the user; as well as The service level agreement is set based on the adjustment information.
17. A computer program product tangibly stored in a non-transitory computer storage medium and comprising machine executable instructions, wherein the machine executable instructions, when executed by a device, cause the device to perform a method comprising: receiving a request for a backup policy for data from a user, the request indicating a desired backup period for backing up the data; obtaining backup information associated with the data; Based on the expected backup period and the backup information, generating the backup strategy for the data that meets the service level agreement; as well as In response to the backup policy for the data that meets the service level agreement failing to be generated based on the expected backup period and the backup information, providing the user with an adjustment suggestion for the expected backup period.
18. The computer program product of claim 17, wherein generating the backup strategy comprises: Determine a candidate backup period based on the expected backup period and the backup information, wherein the candidate backup period does not exceed the expected backup period; Based on the candidate backup cycles, determining a recommended backup cycle that meets the service level agreement; as well as The backup policy indicating the recommended backup period is generated.
