Data backup method, electronic device, storage medium and computer program product
By determining the transmission priority of backup tasks and allocating bandwidth in remote backup, the problem of poor data backup effect is solved, and efficient data backup is achieved under limited bandwidth.
Patent Information
- Application Number
- CN202510956403.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-11
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2045-07-11
AI Technical Summary
The existing remote backup method has the problem of poor data backup effect, especially when bandwidth resources are not allocated reasonably, resulting in low data backup efficiency of important backup tasks.
By receiving the backup instructions sent by the server, the transmission priority of the backup task is determined, and bandwidth is allocated to each backup task based on the available bandwidth to prioritize and ensure that the data of important backup tasks is backed up as quickly as possible.
Under limited bandwidth resources, the efficiency of data backup is improved, the bandwidth resources are maximized, the timely completion of important backup tasks is ensured, and the data backup effect is improved.
Smart Images

Figure CN120469861B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing technology, and in particular to a data backup method, electronic equipment, storage medium, and computer program product. Background Art
[0002] Remote backup refers to backing up the data to be backed up in a first device to a second device. In some scenarios, the remote backup process involves the allocation of bandwidth resources in the first device.
[0003] In related technologies, a server can dynamically adjust the bandwidth resources of the first device based on the service load of the first device and send an instruction to the first device, instructing the first device to back up the data to be backed up to the second device based on the adjusted bandwidth resources. After receiving the instruction, the first device backs up the data to be backed up to the second device through one or more backup tasks, where the one or more backup tasks share the adjusted bandwidth resources. However, this remote backup method suffers from poor data backup performance. Summary of the Invention
[0004] The present application provides a data backup method, electronic device, storage medium and computer program product to improve the effect of data backup.
[0005] This application provides a data backup method, including:
[0006] Receiving a backup instruction sent by the server; the backup instruction is used to instruct to back up data corresponding to at least one backup task from the first device to the second device based on the available bandwidth between the first device and the second device;
[0007] determining a transmission priority of each of at least one backup task;
[0008] determining, based on the transmission priority and available bandwidth of the at least one backup task, a bandwidth allocated to each of the at least one backup task;
[0009] For each backup task in the at least one backup task, data corresponding to the backup task is backed up from the first device to the second device according to the bandwidth allocated to the backup task.
[0010] The present application also provides a data backup device, comprising:
[0011] a receiving module, configured to receive a backup instruction sent by the server; the backup instruction is configured to instruct, based on the available bandwidth between the first device and the second device, to back up data corresponding to at least one backup task from the first device to the second device;
[0012] A first determining module, configured to determine a transmission priority of each of at least one backup task;
[0013] A second determining module is configured to determine a bandwidth allocated to each of the at least one backup tasks according to the transmission priority and available bandwidth of the at least one backup task;
[0014] The backup module is configured to back up data corresponding to each backup task in at least one backup task from the first device to the second device according to a bandwidth allocated to the backup task.
[0015] The present application also provides an electronic device, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned data backup methods when executing the computer program.
[0016] The present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned data backup methods are implemented.
[0017] The present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned data backup methods when executed by a processor.
[0018] Through this application, the first device receives a backup instruction sent by a server and can determine the available bandwidth between the first device and the second device based on the backup instruction. The first device determines the transmission priority of at least one backup task and allocates bandwidth to the at least one backup task based on the transmission priority and the available bandwidth, thereby backing up the data in the first device to the second device based on the bandwidth allocated to the at least one backup task. Because the first device allocates bandwidth to each backup task based on the transmission priority, this processing mechanism can prioritize and ensure that the data corresponding to important backup tasks is backed up as quickly as possible within limited bandwidth resources, maximizing bandwidth utilization and thus improving data backup effectiveness. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0020] Figure 1 A flowchart of a data backup method provided in an embodiment of the present application;
[0021] Figure 2 Schematic diagram of application scenarios provided by embodiments of the present application;
[0022] Figure 3A flowchart of a data backup method provided in an embodiment of the present application;
[0023] Figure 4 A schematic diagram of a process for determining the transmission priority of at least one backup task according to an embodiment of the present application;
[0024] Figure 5 A flowchart of another data backup method provided in an embodiment of the present application;
[0025] Figure 6 A schematic diagram of the structure of a data backup device provided in an embodiment of the present application;
[0026] Figure 7 This is a schematic diagram of the structure of the electronic device provided in this application. DETAILED DESCRIPTION
[0027] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0028] It should be noted that, in the description of this application, the terms "comprises," "includes," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. The terms "first," "second," etc., in this application are used to distinguish similar objects, and are not used to describe a particular order or sequence.
[0029] First, the professional terms involved in this application are explained.
[0030] Recovery Point Objective (RPO): is a key indicator used to measure data loss tolerance, defining the maximum acceptable data loss time for a system or data after a disaster occurs.
[0031] Remote backup: refers to backing up data in the first device to the second device to achieve the purpose of data protection. Remote backup methods include synchronous remote backup, asynchronous remote backup, and periodic asynchronous remote backup. Among them, synchronous remote backup means backing up data to the second device at the same time as writing it to the first device, so the RPO of synchronous remote backup is 0; asynchronous remote backup means backing up data to the second device in a timely manner after writing it to the first device, so the RPO of asynchronous remote backup is smaller; periodic asynchronous remote backup means backing up data to the second device periodically after writing it to the first device, so compared with synchronous remote backup and asynchronous remote backup, the RPO of periodic asynchronous remote backup is larger.
[0032] In some embodiments, the specific remote backup method can be determined based on factors such as data protection requirements, actual business needs, and the evolution and expansion of future business architectures. For example, synchronous remote backup can be used in disaster recovery scenarios within different computer rooms, buildings, or locations; asynchronous remote backup can be used in disaster recovery scenarios across long distances; and periodic asynchronous remote backup can be used in scenarios with high network latency and low bandwidth.
[0033] It's important to note that before performing any of the following backup tasks: synchronous remote backup, asynchronous remote backup, or periodic asynchronous remote backup, an initial synchronization process must be performed between the first and second devices to ensure that the data on the second device is consistent with the data on the first device. After the initial synchronization process is complete, data backup is completed using the synchronous remote backup, asynchronous remote backup, or periodic asynchronous remote backup method.
[0034] In some embodiments, since the data that needs to be backed up during synchronous remote backup and asynchronous remote backup is relatively small, data backup can be performed based on the business resources of the first device. During the initial synchronization processing and periodic asynchronous remote backup, the data that needs to be backed up is relatively large, so data backup can be performed based on the backup resources of the first device. Backup resources may, for example, include computing, network, disk input / output (I / O) and other resources of the first device. At this time, it may have an impact on business resources, that is, when the backup resources are large, the business resources are small, resulting in problems such as write delays and data transmission delays in the business data of the first device. Therefore, it is necessary to reasonably allocate backup resources. It should be noted that this application is mainly explained in terms of the allocation of bandwidth resources, and this application can also be applied to the allocation of other resources.
[0035] In related technologies, the server can monitor the business load of the first device in real time and adjust the backup bandwidth resources of the first device in real time according to the business load of the first device. Specifically, when the business load of the first device is large, the backup bandwidth resources of the first device are reduced; when the business load of the first device is small, the backup bandwidth resources of the first device are increased. Then, based on the allocated backup bandwidth resources, the first device backs up the data in the first device to the second device. Specifically, the data in the first device can be periodically backed up to the second device. This process can be combined with Figure 1 Understand. It should be noted that, Figure 1 It is a backup process in which one backup task is performed in one backup cycle. Figure 1 Understand.
[0036] Figure 1 This is a flowchart of a data backup method provided in an embodiment of the present application. Figure 1 , the method may include the following steps:
[0037] S101: Determine the data corresponding to the backup task in the jth cycle.
[0038] Wherein, j is initially 1. When j is equal to 1, the data corresponding to the backup task in the first cycle is determined; when j is equal to 2, the data corresponding to the backup task in the second cycle is determined.
[0039] The data corresponding to the backup task in the jth cycle refers to the data on the first device that needs to be backed up by the backup task in the jth cycle. In some embodiments, during the data backup process in the j-1th cycle, new data may be written to the first device, and the new data needs to be backed up by the backup task. If new data is written to the first device, the new data can be determined as the data corresponding to the backup task in the jth cycle.
[0040] In some embodiments, there may be data that has not been fully backed up in the j-1th cycle. If there is data that has not been fully backed up in the j-1th cycle, the data that has not been fully backed up in the j-1th cycle can be determined as the data corresponding to the backup task in the jth cycle.
[0041] S102: Determine whether the size of the corresponding data in the j-th cycle is greater than or equal to the minimum backup unit.
[0042] If not, execute S107;
[0043] If yes, execute S103.
[0044] In some embodiments, data backup can be performed based on a minimum backup unit, that is, the size of the data backed up each time is the minimum backup unit. For example, the minimum backup unit can be 1 grain, and the data size of 1 grain is 256KB.
[0045] S103: Back up the data to be backed up to the second device according to the minimum backup unit.
[0046] The size of the data to be backed up is a minimum backup unit, and the data to be backed up is a subset of the data corresponding to the jth period. In some embodiments, assuming that the minimum backup unit is 1 grain, the size of the data to be backed up is 256KB.
[0047] If the size of the data corresponding to the jth cycle is greater than or equal to the minimum backup unit, it indicates that the data corresponding to the jth cycle can be backed up. In this case, the data to be backed up in the data corresponding to the jth cycle is backed up according to the minimum backup unit.
[0048] S104: Determine whether the first duration is greater than or equal to the duration of the j-th period.
[0049] If not, execute S105;
[0050] If so, execute S107.
[0051] The first duration refers to the duration between the current time and the start time of the jth cycle. In some embodiments, whether the backup process of the jth cycle has ended can be determined based on the first duration and the duration of the jth cycle. If the first duration is greater than or equal to the duration of the jth cycle, the backup process of the jth cycle is determined to have ended.
[0052] S105: Determine whether the size of the unbacked-up data in the corresponding data in the j-th cycle is greater than or equal to the minimum backup unit.
[0053] If yes, execute S103;
[0054] If not, execute S106.
[0055] When the size of the data that has not been backed up in the corresponding data in the j-th cycle is greater than or equal to the minimum backup unit, it means that the data backup for the data that has not been backed up in the corresponding data in the j-th cycle can continue. At this time, execute S103 to continue the data backup for the data that has not been backed up in the corresponding data in the j-th cycle.
[0056] When the size of the unbacked-up data in the data corresponding to the jth cycle is smaller than the minimum backup unit, it is determined that the data backup of the unbacked-up data in the data corresponding to the jth cycle cannot be continued.
[0057] S106: Determine whether there is any unbacked-up data in the data corresponding to the backup task.
[0058] If yes, execute S107;
[0059] If not, execute S108.
[0060] In the case that the size of the unbacked-up data in the corresponding data in the j-th cycle is smaller than the minimum backup unit, the backup process of the j-th cycle is terminated.
[0061] Then, a determination is made as to whether any unbacked-up data exists in the data corresponding to the backup task. In some embodiments, when executing the backup task during the jth cycle, new data may be written to the first device, requiring a backup of the new data. Therefore, after the jth cycle backup process is complete, it is necessary to again determine whether any unbacked-up data exists in the data corresponding to the backup task.
[0062] S107: Update j to j+1, and then execute S101.
[0063] If the size of the data corresponding to the jth cycle is smaller than the minimum backup unit, the data corresponding to the jth cycle may be determined as data that has not been fully backed up in the jth cycle. In this case, the data corresponding to the j+1th cycle is determined to include the data that has not been fully backed up in the jth cycle.
[0064] In the case that there is unbacked-up data in the data corresponding to the backup task, it indicates that new data is written into the first device. In this case, it is determined that the corresponding data in the j+1th cycle includes the new data.
[0065] S108: End the backup task.
[0066] If there is any unbacked-up data in the data corresponding to the backup task, it means that the data between the first device and the second device have been synchronized. At this time, the backup task is terminated.
[0067] However, when the backup bandwidth resources of the first device are reduced, the data backup rate of the first device is also reduced accordingly. This results in an increase in the RPO of at least one backup task during initial synchronization and periodic asynchronous remote backup. While this approach reduces the impact of excessive backup bandwidth resources on business resources, it fails to perform differentiated bandwidth adjustments for each of the at least one backup task, resulting in poor data backup performance.
[0068] This application provides a data backup method in which, after receiving a backup instruction from a server, a first device allocates bandwidth to at least one backup task based on the transmission priority of the at least one backup task. Because the first device allocates bandwidth to each backup task based on the transmission priority, this processing mechanism can prioritize and ensure that data corresponding to important backup tasks is backed up as quickly as possible within limited bandwidth resources, maximizing bandwidth utilization and thereby improving data backup effectiveness.
[0069] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods.
[0070] In conjunction with the specific application environment architecture or specific hardware architecture on which the execution of the data backup method depends, the specific application environment architecture or specific hardware architecture is described here. Figure 2 , Figure 2 This is a schematic diagram of an application scenario provided by an embodiment of the present application. Figure 2 As shown, it includes a server 21, a first device 22 and a second device 23, wherein the server 21 can be, for example, a background server of a data backup system, the first device 22 can be, for example, a data storage device for business data, and the second device 23 can be, for example, a data backup device for business data.
[0071] In actual application, the server 21 can communicate with the first device 22. For example, the server 21 can send a backup instruction to the first device 22, instructing the first device 22 to back up the data in the first device 22 to the second device 23. The first device 22 can communicate with the second device 23. For example, the first device 22 can send test information to the second device 23, and the second device 23 can send response information to the first device 22.
[0072] It should be noted that Figure 2 This is just an example to illustrate an application scenario, and is not intended to limit the application scenario.
[0073] The following specific embodiments describe in detail the technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0074] Figure 3 A flowchart of a data backup method provided in an embodiment of the present application is shown as follows: Figure 3 As shown, the embodiment of the present application provides a data backup method, which is described in detail as follows:
[0075] S301. Receive a backup instruction sent by a server; the backup instruction is used to instruct to back up data corresponding to at least one backup task from the first device to the second device based on the available bandwidth between the first device and the second device.
[0076] The execution subject of the present application may be the first device, or may be a data backup device provided in the first device. The data backup device may be implemented through software, or through a combination of software and hardware.
[0077] The server is the backend server of the data storage system. In some embodiments, the server can determine the available bandwidth between the first device and the second device and, when data on the first device needs to be backed up to the second device, send a backup instruction to the first device. For example, the first device can be a storage device for business data, and the second device can be a backup device for business data. In some embodiments, to ensure the security of business data, after storing the business data on the first device, it is also necessary to back up the business data to the second device. This way, if an anomaly occurs on the first device, the business data can be retrieved from the second device, avoiding problems such as business data loss due to an anomaly on the first device.
[0078] The available bandwidth between the first device and the second device is the available bandwidth when backing up data in the first device to the second device. For example, assuming that the available bandwidth between the first device and the second device is 100 Mbps, the available bandwidth when backing up data in the first device to the second device is 100 Mbps.
[0079] In some embodiments, there may be one or more backup tasks for backing up data in a first device to a second device. The data corresponding to each backup task refers to the data in the first device that requires the backup task to back up data. For example, assuming that at least one backup task is backup task 1, backup task 2, and backup task 3, the data that needs to be backed up by backup task 1 is data A, the data that needs to be backed up by backup task 2 is data B, and the data that needs to be backed up by backup task 3 is data C. Then, the data corresponding to backup task 1 is data A, the data corresponding to backup task 2 is data B, and the data corresponding to backup task 3 is data C.
[0080] It should be noted that, for a backup task of the periodic asynchronous remote backup type, after receiving the backup instruction sent by the server, the first device starts to execute the backup task within the backup period of the periodic asynchronous remote backup.
[0081] In some embodiments, professional terms such as "replication", "backup", "data replication", "data backup", "remote replication", "remote backup", "synchronous remote replication", "synchronous remote backup", "asynchronous remote replication", "asynchronous remote backup", "periodic asynchronous remote replication", and "periodic asynchronous remote backup" can be used interchangeably.
[0082] S302: Determine the transmission priority of at least one backup task.
[0083] The transmission priority refers to the backup priority of the backup task. The transmission priority of each of the at least one backup task can be determined based on the importance of the data corresponding to the at least one backup task and / or the processing efficiency of the at least one backup task by the second device.
[0084] In some embodiments, because at least one backup task corresponds to different data, the importance of the data corresponding to different backup tasks may differ. For data of higher importance, a higher transmission priority may be assigned to the backup task corresponding to that data to ensure efficient backup of that data. In some embodiments, the second device may have different processing efficiencies for different backup tasks. For backup tasks with lower processing efficiency, a lower transmission priority may be assigned to the backup task corresponding to that data to avoid wasting bandwidth resources.
[0085] S303: Determine a bandwidth allocated to each of the at least one backup tasks according to the transmission priority and available bandwidth of the at least one backup task.
[0086] For each backup task in at least one backup task, when the transmission priority of the backup task is higher, a larger bandwidth can be allocated to the backup task based on the available bandwidth; when the transmission priority of the backup task is lower, a smaller bandwidth can be allocated to the backup task based on the available bandwidth.
[0087] It should be noted that the available bandwidth is the sum of the bandwidth allocated to at least one backup task. For example, assuming that at least one backup task includes Backup Task 1, Backup Task 2, and Backup Task 3, and that the bandwidth allocated to Backup Task 1 is 10 megabits per second (Mbps), the bandwidth allocated to Backup Task 2 is 40 Mbps, and the bandwidth allocated to Backup Task 3 is 50 Mbps, the available bandwidth is 100 Mbps.
[0088] S304: For each backup task in the at least one backup task, back up data corresponding to the backup task from the first device to the second device according to the bandwidth allocated to the backup task.
[0089] For example, assume that at least one backup task includes backup task 1, backup task 2, and backup task 3, where the bandwidth allocated to backup task 1 is 10 Mbps, the bandwidth allocated to backup task 2 is 40 Mbps, and the bandwidth allocated to backup task 3 is 50 Mbps. Then, based on the 10 Mbps bandwidth, the data corresponding to backup task 1 is backed up from the first device to the second device; based on the 40 Mbps bandwidth, the data corresponding to backup task 2 is backed up from the first device to the second device; and based on the 50 Mbps bandwidth, the data corresponding to backup task 3 is backed up from the first device to the second device.
[0090] It should be noted that data is stored in the first device using sites as storage units, and data is also stored in the second device using sites as storage units. During the data backup process, the data storage unit in the first device can be called the primary site, and the data storage unit in the second device can be called the secondary site.
[0091] The method for backing up data from the first device to the second device can be, for example, a snapshot backup method. Taking the snapshot backup method as an example, based on a backup task of the periodic asynchronous remote backup type, the method for backing up data from the first device to the second device can be as follows: Assuming that the backup cycle of the periodic asynchronous backup is 300 seconds, within each backup cycle, the first device starts a snapshot of the primary site, and the second device starts a snapshot of the secondary site. Then, within the backup cycle of 300 seconds, the data in the first device is transferred to the second device. After the data transfer is completed, the snapshots of the primary site and the secondary site are terminated, thereby completing the data backup process for the entire backup cycle.
[0092] Figure 3 In the illustrated embodiment, a first device receives a backup instruction from a server and, based on the backup instruction, determines the available bandwidth between the first device and the second device. The first device then determines the transmission priority of at least one backup task and, based on the transmission priority and available bandwidth, allocates bandwidth to the at least one backup task. This allows the data on the first device to be backed up to the second device based on the bandwidth allocated to the at least one backup task. Because the first device allocates bandwidth to each backup task based on transmission priority, this processing mechanism prioritizes the swift backup of data corresponding to important backup tasks within limited bandwidth resources, maximizing bandwidth utilization and improving data backup effectiveness.
[0093] exist Figure 3 Based on the embodiment shown below, combined with Figure 4 The method for determining the transmission priority of at least one backup task provided in an embodiment of the present application is further explained.
[0094] Figure 4The present invention provides a flow chart of determining the transmission priority of at least one backup task. Figure 4 As shown, the process may include the following steps:
[0095] S401. Determine a backup duration for at least one backup task; wherein the backup duration indicates the duration for completing a backup task.
[0096] The backup duration is the duration of backing up the data corresponding to the backup task from the first device to the second device. For example, the backup duration may be the round-trip time (RTT). In some embodiments, the backup duration is used to indicate the efficiency of backing up the data corresponding to the backup task from the first device to the second device. A longer backup duration indicates a lower efficiency of backing up the data corresponding to the backup task from the first device to the second device; a shorter backup duration indicates a higher efficiency of backing up the data corresponding to the backup task from the first device to the second device.
[0097] The efficiency of backing up the data corresponding to the backup task from the first device to the second device may include, for example, the transmission efficiency of transmitting the data corresponding to the backup task to the second device, and the processing efficiency of the second device for the data corresponding to the backup task.
[0098] Specifically, the method for determining the backup duration of at least one backup task can be as follows: for each backup task in at least one backup task, perform the following operations: send a test message to the second device, the test information is used to indicate the backup task; receive a response message sent by the second device, the response message is obtained by the second device processing the test information according to the backup task; determine the time between the moment when the first device sends the test information and the moment when the response information is received as the backup duration of the backup task.
[0099] In some embodiments, after receiving the test information, the second device processes the test information according to the backup task indicated by the test information. It should be noted that the test information is processed in the same manner as the data corresponding to the backup task, and after processing the test information, the second device sends the resulting response information to the first device.
[0100] Therefore, the backup duration is the sum of the time it takes for the test information to be transmitted from the first device to the second device, the time it takes for the second device to process the test information, and the time it takes for the response information to be transmitted from the second device to the first device. The time it takes for the test information to be transmitted from the first device to the second device and the time it takes for the response information to be transmitted from the second device to the first device reflect the transmission efficiency between the first and second devices, while the time it takes for the second device to process the test information reflects the efficiency with which the second device processes the data corresponding to the backup task.
[0101] S402: For each backup task in at least one backup task, determine a weight of the backup task according to a business type of data corresponding to the backup task.
[0102] The weight of the backup task is used to indicate the importance of the backup task. In some embodiments, the maximum weight of the backup task is 1, and the weight of the backup task can be expressed in the form of a percentage or a fraction.
[0103] In some embodiments, at least one backup task may correspond to different data, and a weight for each backup task may be determined based on the importance of the data corresponding to each backup task. Specifically, for each backup task in the at least one backup task, if the data corresponding to the backup task is of high importance, the weight of the backup task may be determined to be greater; if the data corresponding to the backup task is of low importance, the weight of the backup task may be determined to be smaller.
[0104] The importance of data may be determined by the business type of the data. Therefore, the weight of the backup task may be determined based on the business type of the data corresponding to the backup task. Specifically, the weight of at least one backup task may be determined based on the business type of the data corresponding to the at least one backup task and the mapping relationship between the business type and the weight of the backup task.
[0105] For example, assume that at least one backup task includes backup task 1, backup task 2, and backup task 3, wherein the business type of the data corresponding to backup task 1 is business M, the business type of the data corresponding to backup task 2 is business N, and the business type of the data corresponding to backup task 3 is business X. The mapping relationship between the business type and the weight of the backup task can be shown in Table 1:
[0106] Table 1
[0107]
[0108] The weight of backup task 1 is determined to be 40%, the weight of backup task 2 is determined to be 20%, and the weight of backup task 3 is determined to be 10%.
[0109] S403: Determine a transmission priority of at least one backup task according to a weight of at least one backup task and a backup duration of at least one backup task.
[0110] For each backup task in at least one backup task, the transmission priority of the backup task can be determined according to the weight of the backup task and the backup duration of the backup task. Specifically, the transmission priority of the backup task can be determined as shown in formula (1):
[0111] (1)
[0112] Among them, U is used to indicate the transmission priority of the backup task, W is used to indicate the weight of the backup task, and T is used to indicate the backup duration of the backup task.
[0113] exist Figure 4 In the illustrated embodiment, for each backup task in at least one backup task, the backup duration of the backup task is determined by the duration between the moment when the second device sends the test information and the moment when the response information is received. At this time, the backup duration is used to indicate the efficiency of the second device in processing the data corresponding to the backup task, as well as the transmission efficiency of transmitting the data corresponding to the backup task from the first device to the second device. In the case of a long backup duration, the transmission priority of the backup task is determined to be low, so as to avoid wasting bandwidth resources by allocating a large bandwidth to the backup task when the backup efficiency of the backup task is low. In addition, the weight of the backup task is determined based on the business type of the data corresponding to the backup task. In the case of a large weight of the backup task, the transmission priority of the backup task is determined to be high, so as to avoid wasting bandwidth resources by allocating a small bandwidth to the backup task when the weight of the backup task is large.
[0114] Based on the above embodiments, Figure 5 The data backup method provided in the embodiment of the present application is further described.
[0115] Figure 5 This is a flow chart of another data backup method provided in an embodiment of the present application. Figure 5 As shown, the process may include the following steps:
[0116] S501: Receive a backup instruction sent by a server.
[0117] For details about the first device receiving the backup instruction sent by the server, please refer to Figure 3 S301 in the illustrated embodiment will not be described in detail here.
[0118] It should be noted that the backup instruction indicates the available bandwidth between the first device and the second device, wherein the available bandwidth is determined by the server according to the data transmission rate and data transmission duration between the first device and the second device.
[0119] Specifically, the available bandwidth is determined based on the current data transmission rate, data transmission duration, and benchmark transmission duration between the first and second devices. The benchmark transmission duration refers to the transmission duration between the first and second devices when the first and second devices are idle and the transmission link between the first and second devices is free of congestion and interference.
[0120] The server sends an instruction to the first device, instructing it to send bandwidth test information to the second device. After receiving the instruction, the first device sends the bandwidth test information to the second device. After receiving the bandwidth test information from the first device, the second device sends a bandwidth response message to the first device. The server can determine the current data transmission duration between the first device and the second device based on the time between the first device sending the bandwidth test information and receiving the bandwidth response information. The data transmission duration can be the RTT between the first and second devices.
[0121] The formula for determining the available bandwidth can be shown as formula (2):
[0122] (2)
[0123] Wherein, B is used to indicate the available bandwidth, and V is used to indicate the data transmission rate between the first device and the second device. Used to indicate the duration of data transmission between the first device and the second device. Used to indicate the benchmark transmission duration between the first device and the second device.
[0124] In some embodiments, an available bandwidth may be preset. If a preset available bandwidth exists, the smaller value between the preset available bandwidth and the calculated available bandwidth is determined as the available bandwidth between the first device and the second device. If no preset available bandwidth exists, the calculated available bandwidth is determined as the available bandwidth between the first device and the second device.
[0125] S502: Determine the transmission priority of at least one backup task.
[0126] The method of determining transmission priority can be found in Figure 4 The embodiments shown are not described in detail here.
[0127] S503: Determine a bandwidth allocated to each of the at least one backup tasks according to the transmission priority and available bandwidth of the at least one backup task.
[0128] The method for determining the bandwidth allocated to each of the at least one backup tasks can be as follows: for each backup task in the at least one backup task, perform the following operations: determine the bandwidth allocation ratio of the backup task based on the transmission priority of the backup task and the transmission priority of each of the at least one backup tasks; determine the initial bandwidth allocated to the backup task based on the bandwidth allocation ratio of the backup task and the available bandwidth; and determine the smaller value of the preset bandwidth and the initial bandwidth of the backup task as the bandwidth allocated to the backup task.
[0129] The method for determining the bandwidth allocation ratio of the backup task can be shown as formula (3):
[0130] (3)
[0131] in, Used to indicate the bandwidth allocation ratio of the xth backup task. Used to indicate the transmission priority of the xth backup task. It is used to indicate the transmission priority of the yth backup task, and N is used to indicate the number of at least one backup task. Indicates the sum of the transmission priorities of at least one backup task.
[0132] In some embodiments, the initial bandwidth allocated to the backup task may be determined as shown in formula (4):
[0133] (4)
[0134] in, Indicates the initial bandwidth for the xth backup task.
[0135] In some embodiments, a bandwidth may be preset for each of the at least one backup task. Therefore, after determining the initial bandwidth of the backup task, the smaller of the preset bandwidth and the initial bandwidth of the backup task is determined as the bandwidth allocated to the backup task.
[0136] For example, assuming that the initial bandwidth of the backup task 1 is determined to be 80 Mbps and the preset bandwidth of the backup task 1 is 100 Mbps, the bandwidth allocated to the backup task is determined to be 80 Mbps.
[0137] S504: Determine a second data volume according to the first data volume, the duration of the i-th cycle, the bandwidth allocated to the backup task, and the minimum backup unit.
[0138] Here, i is initially 1 and is a positive integer.
[0139] The first data volume is the size of the data to be backed up in the data corresponding to the backup task after the i-1th cycle; the second data volume is the size of the data to be backed up in the backup task in the i-th cycle; the data to be backed up in the data corresponding to the backup task after the 0th cycle is the data corresponding to the backup task.
[0140] It should be noted that the data to be backed up in the data corresponding to the backup task after the (i-1)th cycle may include: data not backed up after the (i-1)th cycle, and new data written to the first device during the (i-1)th cycle. When i is 1, the data corresponding to the backup task has not yet been backed up. Therefore, the data to be backed up in the data corresponding to the backup task after the 0th cycle is the data corresponding to the backup task.
[0141] In some embodiments, the method for determining the second data volume can be as follows: based on the duration of the i-th cycle and the bandwidth allocated to the backup task, determine the third data volume, where the third data volume is the size of the data that can be backed up in the i-th cycle; when the third data volume is greater than or equal to the minimum backup unit, determine the smaller value of the first data volume and the third data volume as the second data volume; when the third data volume is less than the minimum backup unit, determine that the second data volume is less than or equal to the preset data volume.
[0142] The third data volume is the size of the data that can be backed up during the i-th cycle when backing up the data according to the bandwidth allocated for the backup task. In some embodiments, the third data volume can be determined as shown in formula (5):
[0143] (5)
[0144] Wherein, O represents the third data volume, l represents the duration of the i-th cycle, Indicates the bandwidth allocated for backup tasks.
[0145] Because data is backed up from the first device to the second device based on the minimum backup unit, if the third data volume is greater than or equal to the minimum backup unit, the data corresponding to the backup task can be backed up to the second device based on the bandwidth allocated for the backup task. At this point, the size of the data to be backed up in the backup task during the i-th cycle can be determined.
[0146] In some embodiments, the first data amount is smaller than the third data amount, that is, the size of the data that needs to be backed up in the i-th cycle is smaller than the size of the data that can be backed up in the i-th cycle. In this case, the first data amount can be determined as the second data amount. In some embodiments, the first data amount is greater than or equal to the third data amount, that is, the size of the data that needs to be backed up in the i-th cycle is greater than or equal to the size of the data that can be backed up in the i-th cycle. In this case, the third data amount can be determined as the second data amount.
[0147] If the third data volume is less than the minimum backup unit, it indicates that the data corresponding to the backup task cannot be backed up to the second device based on the bandwidth allocated to the backup task. In this case, the second data volume is determined to be less than or equal to the preset data volume. For example, if the preset data volume is 0, the second data volume can be determined to be 0.
[0148] S505: Determine whether the second data amount is greater than the preset data amount.
[0149] If yes, execute S506;
[0150] If not, execute S508.
[0151] S506: Back up the target data from the first device to the second device according to the bandwidth allocated for the backup task.
[0152] The size of the target data is the second data volume, and the target data belongs to a subset of the data to be backed up in the data corresponding to the backup task after the (i-1)th cycle.
[0153] For example, assuming that the data size corresponding to the backup task after the first cycle is 20M, and the second data volume is 10M, the target data is the data with a data size of 10M in the data corresponding to the backup task after the first cycle.
[0154] If the second data volume is greater than the preset data volume, it indicates that the data corresponding to the backup task can be backed up from the first device to the second device. In this case, the target data can be backed up from the first device to the second device according to the bandwidth allocated for the backup task.
[0155] It should be noted that the target data may be backed up from the first device to the second device in the following manner: based on the minimum backup unit, data in the target data whose data size is equal to the minimum backup unit is backed up from the first device to the second device until the size of the unbacked-up data in the target data becomes smaller than the minimum backup unit and / or the duration of backing up the target data is greater than or equal to the duration of the i-th cycle.
[0156] S507: Determine whether there is any unbacked-up data in the data corresponding to the backup task.
[0157] If yes, execute S508;
[0158] If not, execute S509.
[0159] In some embodiments, during the process of backing up the target data in the i-th cycle, the data in the first device may be updated, for example, new data may be written to the first device. Therefore, after completing the i-th cycle data backup, it is necessary to determine whether there is any unbacked-up data in the data corresponding to the backup task.
[0160] S508: Update i to i+1, and then execute S504.
[0161] If there is unbacked up data in the data corresponding to the backup task, it is necessary to back up the unbacked up data in the data corresponding to the backup task from the first device to the second device. Therefore, i is updated to i+1, and the above operation is repeated.
[0162] S509: End the backup task.
[0163] If there is no unbacked-up data in the backup task, this indicates that the data corresponding to the backup task has been backed up from the first device to the second device, and no new data was written to the first device during the backup process. Therefore, the backup task is terminated.
[0164] The following is a specific example Figure 5 The implementation process is introduced.
[0165] For example, the size of the data corresponding to a backup task is 100M, the minimum backup unit is 1 grain, the preset data volume is 0M, the bandwidth allocated to the backup task is 50 Mbps, and the duration of each cycle is 1s (it should be noted that the duration of different cycles can be the same or different. In this example, the duration of each cycle is the same).
[0166] First, the data backup process in the first cycle is executed, that is, i is initially 1. In this scenario, the first data volume is 100M.
[0167] Based on the duration of the first cycle and the bandwidth allocated for the backup task, we can determine that the third data volume is 1s * 50Mbps = 50M = 51200KB. Since the third data volume is larger than one grain (256KB) and smaller than the first data volume, the second data volume is determined to be 50M.
[0168] Since the second data volume is larger than the preset data volume, the target data can be determined from the data corresponding to the backup task, and the size of the target data is 50M. Then, based on the bandwidth allocated for the backup task and the minimum backup unit, the target data is backed up from the first device to the second device.
[0169] After the data backup of the first cycle is completed, the first data volume is updated.
[0170] Assume that the size of the target data not backed up is 100KB. Since the minimum backup unit is 1 grain (256KB), the size of the data not backed up during the first cycle is 100KB. Furthermore, during the first cycle, the size of the new data written to the first device is 10MB. Therefore, the size of the data not backed up in the backup task is (100MB - 50MB) + 10MB + 100KB = 61540KB.
[0171] When it is determined that there is unbacked-up data in the data corresponding to the backup task, the backup process of the second cycle is executed, that is, i=2, wherein the duration of the second cycle is 1 second.
[0172] According to the duration of the second cycle and the bandwidth allocated to the backup task, the third data volume is determined to be 1s*50Mbps=50M=51200KB, and the second data volume is determined to be 50M.
[0173] Since the second data volume is greater than the preset data volume, at this time, the target data is backed up from the first device to the second device according to the bandwidth allocated to the backup task and the minimum backup unit.
[0174] After the second cycle of data backup is completed, the first data volume is updated.
[0175] Assume that the size of the target data not backed up is 200KB. Since the minimum backup unit is 1 grain (256KB), the size of the data not backed up during the second cycle is 200KB. Furthermore, during the second cycle, the size of the new data written to the first device is 520KB. Therefore, the size of the data not backed up in the backup task is (61540KB - 51200KB) + 520KB + 200KB = 11060KB.
[0176] It is determined that the data corresponding to the backup task contains unbacked-up data. Therefore, the third cycle of the backup task is executed. The backup process for the third cycle is similar to the backup processes for the first and second cycles. The backup task ends when all unbacked-up data in the data corresponding to the backup task is no longer present, that is, all data on the first device is backed up to the second device.
[0177] exist Figure 5 In the illustrated embodiment, after receiving a backup instruction from a server, the first device allocates bandwidth to at least one backup task based on the transmission priority and available bandwidth of the at least one backup task. The device then determines the size of the data to be backed up in the backup task during the i-th cycle. Based on the minimum backup unit and the bandwidth allocated for the backup task, the device backs up the target data of the size of the data to be backed up in the i-th cycle from the first device to the second device until no unbacked-up data exists in the data corresponding to the backup task. In the above method, the first device allocates bandwidth to each of the at least one backup tasks, thereby achieving differentiated bandwidth allocation for the at least one backup task. Furthermore, during the process of backing up the data corresponding to each of the at least one backup tasks from the first device to the second device based on the bandwidth allocated to the at least one backup task, a second data size can be determined based on the first data size, the duration of the i-th cycle, the bandwidth allocated for the backup task, and the minimum backup unit. If the second data size exceeds the preset data size, the target data is backed up. This allows the size of the data to be backed up in the i-th cycle to be dynamically adjusted, ensuring efficient data transmission within the bandwidth limits allocated to the backup tasks and avoiding issues such as excessive data backlogs.
[0178] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.
[0179] Figure 6 This is a structural diagram of a data backup device provided in an embodiment of the present application. Figure 6 As shown, an embodiment of the present application further provides a data backup device 60, which includes a receiving module 61, a first determining module 62, a second determining module 63 and a backup module 64, wherein:
[0180] A receiving module 61 is configured to receive a backup instruction sent by a server; the backup instruction is configured to instruct that data corresponding to at least one backup task be backed up from the first device to the second device based on the available bandwidth between the first device and the second device;
[0181] A first determining module 62 is configured to determine a transmission priority of at least one backup task;
[0182] A second determining module 63 is configured to determine a bandwidth allocated to each of the at least one backup tasks according to the transmission priority and available bandwidth of the at least one backup task;
[0183] The backup module 64 is configured to back up data corresponding to each backup task in the at least one backup task from the first device to the second device according to the bandwidth allocated to the backup task.
[0184] In a possible implementation, the first determining module 62 is specifically configured to:
[0185] Determine a backup duration for each of at least one backup task; wherein the backup duration is used to indicate the duration for completing a backup task;
[0186] For each backup task in the at least one backup task, determining a weight of the backup task according to a business type of data corresponding to the backup task;
[0187] Determine the transmission priority of the at least one backup task according to the weight of the at least one backup task and the backup duration of the at least one backup task.
[0188] In a possible implementation, the first determining module 62 is specifically configured to:
[0189] For each backup task in at least one backup task, perform the following operations:
[0190] Sending a test message to the second device, where the test message is used to indicate a backup task;
[0191] receiving response information sent by the second device, where the response information is obtained by the second device processing the test information according to the backup task;
[0192] The duration between the time when the first device sends the test information and the time when the first device receives the response information is determined as the backup duration of the backup task.
[0193] In a possible implementation, the second determining module 63 is specifically configured to:
[0194] For each backup task in at least one backup task, perform the following operations:
[0195] determining a bandwidth allocation ratio for the backup task based on the transmission priority of the backup task and the transmission priority of at least one backup task;
[0196] Determine the initial bandwidth allocated to the backup task based on the bandwidth allocation ratio of the backup task and the available bandwidth;
[0197] The smaller value between the preset bandwidth and the initial bandwidth of the backup task is determined as the bandwidth allocated to the backup task.
[0198] In a possible implementation, the backup module 64 is specifically configured to:
[0199] Executing a first operation, the first operation comprising: determining a second data volume based on the first data volume, the duration of the i-th cycle, the bandwidth allocated for the backup task, and the minimum backup unit; wherein the first data volume is the size of the data to be backed up in the data corresponding to the backup task after the i-1th cycle; the second data volume is the size of the data to be backed up in the i-th cycle of the backup task; i is initially 1, i is a positive integer, and the data to be backed up in the data corresponding to the backup task after the 0th cycle is the data corresponding to the backup task;
[0200] Performing a second operation, the second operation comprising: backing up target data from the first device to the second device according to the bandwidth allocated for the backup task when the second data volume is greater than a preset data volume; the size of the target data is the second data volume, and the target data belongs to a subset of the data to be backed up in the data corresponding to the backup task after the (i-1)th cycle;
[0201] If there is unbacked-up data in the data corresponding to the backup task, i is updated to i+1, and the first operation and the second operation are repeatedly performed until there is no unbacked-up data in the data corresponding to the backup task.
[0202] In a possible implementation, the backup module 64 is specifically configured to:
[0203] Determine a third data volume based on the duration of the i-th cycle and the bandwidth allocated for the backup task, where the third data volume is the size of data that can be backed up in the i-th cycle;
[0204] In a case where the third data amount is greater than or equal to the minimum backup unit, determining the smaller value between the first data amount and the third data amount as the second data amount;
[0205] In a case where the third data amount is smaller than the minimum backup unit, it is determined that the second data amount is smaller than or equal to a preset data amount.
[0206] In a possible implementation, the available bandwidth is determined according to a data transmission rate and a data transmission duration between the first device and the second device.
[0207] The description of the features in the embodiment corresponding to the data backup device 60 can be found in the relevant description of the embodiment corresponding to the data backup method, and will not be repeated here.
[0208] Figure 7 This is a schematic diagram of the structure of the electronic device provided in this application. Figure 7 As shown, the electronic device 70 provided in this embodiment includes: at least one processor 701 and a memory 702. Optionally, the electronic device 70 further includes a communication component 703. The processor 701, the memory 702 and the communication component 703 are connected via a bus.
[0209] During the specific implementation process, at least one processor 701 executes the computer-executable instructions stored in the memory 702, so that the at least one processor 701 executes the above-mentioned data backup method embodiment.
[0210] The specific implementation process of the processor 701 can be found in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.
[0211] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the application may be directly executed by a hardware processor or by a combination of hardware and software modules within the processor.
[0212] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage.
[0213] A bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be categorized as address buses, data buses, and control buses. For ease of illustration, the buses in the drawings of this application are not limited to just one bus or just one type of bus.
[0214] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps of any of the above-mentioned data backup method embodiments when running.
[0215] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.
[0216] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of any of the above-mentioned data backup method embodiments are implemented.
[0217] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of any of the above-mentioned data backup method embodiments are implemented.
[0218] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0219] The above is a detailed introduction to a data backup method, electronic device, storage medium, and computer program product provided by the present application. Specific examples are used herein to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only intended to help understand the method and core ideas of the present application. It should be pointed out that, for those skilled in the art, without departing from the principles of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application.
Claims
1. A data backup method, characterized in that: Applied to a first device, comprising: receiving a backup instruction sent by the server; the backup instruction is used to instruct, based on the available bandwidth between the first device and the second device, to back up data corresponding to at least one backup task from the first device to the second device; determining a transmission priority of each of the at least one backup tasks; determining, based on the transmission priority of the at least one backup task and the available bandwidth, a bandwidth allocated to each of the at least one backup task, so as to achieve differentiated bandwidth allocation for the at least one backup task, wherein the available bandwidth is determined based on a data transmission rate and a data transmission duration between the first device and the second device; For each backup task in the at least one backup task, backing up data corresponding to the backup task from the first device to the second device according to the bandwidth allocated to the backup task; The determining, based on the transmission priority of the at least one backup task and the available bandwidth, a bandwidth allocated to each of the at least one backup tasks includes: For each backup task in the at least one backup task, perform the following operations: determining a bandwidth allocation ratio for the backup task according to the transmission priority of the backup task and the transmission priority of each of the at least one backup task; Determining an initial bandwidth allocated to the backup task according to the bandwidth allocation ratio of the backup task and the available bandwidth; A smaller value between the preset bandwidth of the backup task and the initial bandwidth is determined as the bandwidth allocated to the backup task.
2. The method according to claim 1, characterized in that Determining the transmission priority of each of the at least one backup tasks includes: Determining a backup duration for each of the at least one backup task; wherein the backup duration is used to indicate a duration for completing a backup task; For each backup task in the at least one backup task, determining a weight of the backup task according to a business type of data corresponding to the backup task; Determine the transmission priority of each of the at least one backup tasks according to the weight of each of the at least one backup tasks and the backup duration of each of the at least one backup tasks.
3. The method according to claim 2, characterized in that The determining of the backup duration of each of the at least one backup tasks includes: For each backup task in the at least one backup task, perform the following operations: Sending test information to the second device, where the test information is used to indicate the backup task; receiving response information sent by the second device, where the response information is obtained by the second device processing the test information according to the backup task; The duration between the time when the first device sends the test information and the time when the first device receives the response information is determined as the backup duration of the backup task.
4. The method according to any one of claims 1 to 3, characterized in that Backing up, for each backup task in the at least one backup task, data corresponding to the backup task from the first device to the second device according to the bandwidth allocated to the backup task, includes: Performing a first operation, the first operation comprising: determining a second data volume based on the first data volume, the duration of the i-th cycle, the bandwidth allocated to the backup task, and the minimum backup unit; wherein the first data volume is the size of the data to be backed up in the data corresponding to the backup task after the i-1th cycle; the second data volume is the size of the data to be backed up in the i-th cycle of the backup task; i is initially 1, is a positive integer, and after the 0th cycle, the data to be backed up in the data corresponding to the backup task is the data corresponding to the backup task; performing a second operation, the second operation comprising: backing up target data from the first device to the second device according to the bandwidth allocated to the backup task, if the second data volume is greater than a preset data volume; the size of the target data is the second data volume, and the target data belongs to a subset of the data to be backed up in the data corresponding to the backup task after the (i-1)th cycle; If there is unbacked-up data in the data corresponding to the backup task, i is updated to i+1, and the first operation and the second operation are repeatedly performed until there is no unbacked-up data in the data corresponding to the backup task.
5. The method according to claim 4, characterized in that The determining of the second data volume according to the first data volume, the duration of the i-th cycle, the bandwidth allocated to the backup task, and the minimum backup unit includes: Determine a third data volume according to the duration of the i-th cycle and the bandwidth allocated to the backup task, where the third data volume is the size of data that can be backed up in the i-th cycle; In a case where the third data amount is greater than or equal to the minimum backup unit, determining the smaller value between the first data amount and the third data amount as the second data amount; In a case where the third data amount is smaller than the minimum backup unit, it is determined that the second data amount is smaller than or equal to the preset data amount.
6. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the data backup method according to any one of claims 1 to 5 when executing the computer program.
7. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, wherein the computer program implements the steps of the data backup method according to any one of claims 1 to 5 when executed by a processor.
8. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the data backup method according to any one of claims 1 to 5 are implemented.
Citation Information
Patent Citations
Backup method, electronic equipment and computer program product
CN113742130A
Data backup method and device, equipment, medium and product
CN119449826A
Traffic scheduling method and device, electronic equipment, storage medium and program product
CN119629132A