Method, electronic device and computer program product for data replication

During the data replication process, by migrating data from a storage disk with lower performance to a storage disk with higher performance according to the aging degree and transmission time of the storage disk, the problem of data loss in the prior art is solved, and data replication efficiency and storage system performance are improved.

CN119718173APending Publication Date: 2025-03-28DELL PROD LP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311285259.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-28
Publication Date
2025-03-28

AI Technical Summary

Technical Problem

When existing data replication technologies process large-scale data, it is difficult to effectively reduce the possibility of data loss, especially when the source storage device fails, the probability of data loss in the data transmission sub-window is high.

Method used

By determining the aging degree and transmission time of different types of storage disks in the source storage device, it is decided to migrate the target data from the second type of storage disk with lower performance to the first type of storage disk with higher performance, and copy the data from the first type of storage disk to the destination storage device.

Benefits of technology

It significantly improves data replication efficiency, reduces the possibility of data loss, and thus improves the performance of the storage system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119718173A_ABST
    Figure CN119718173A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a method for data replication, electronic equipment and a computer program product. The method includes determining a degree of aging of a storage disk of a first type in a source storage device. The method further includes determining a length of transfer time to copy the target data from the second type of memory disk in the source storage device to the destination storage device, wherein the target data is stored in the second type of memory disk in the source storage device. The method further includes determining to migrate the target data from the second type of memory disk to the first type of memory disk based on the length of transmission time and the degree of aging, and copying the target data from the first type of memory disk in the source storage device to the destination storage device. According to the data replication method disclosed by the embodiment of the invention, the data replication efficiency can be remarkably improved, and the possibility of data loss is reduced, so that the performance of a storage system is remarkably improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure relate to the field of storage technology, and more particularly, to a method, an electronic device, and a computer program product for data replication. Background Art

[0002] As business needs continue to increase, the amount of business-related data is also growing exponentially. Data replication is an important part of disaster recovery plans for both large and small organizations. Data replication technology refers to the technology of copying data from a source storage device to a destination storage device for disaster recovery or to improve accessibility. By using data replication technology, data is stored as a backup in the destination storage device, which can prevent data loss caused by operational errors or failures of the source storage device caused by various reasons. Summary of the invention

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

[0004] According to a first aspect of the present disclosure, a method for data replication is provided. The method includes determining the aging degree of a first type of storage disk in a source storage device. The method also includes determining the transmission time length for copying target data from a second type of storage disk in the source storage device to a destination storage device, wherein the target data is stored in the second type of storage disk in the source storage device. The method further includes determining to migrate the target data from the second type of storage disk to the first type of storage disk based on the transmission time length and the aging degree, and copying the target data from the first type of storage disk in the source storage device to the destination storage device.

[0005] According to a second aspect of the present disclosure, an electronic device is provided. The electronic device includes at least one processor; and a memory coupled to the at least one processor and having instructions stored thereon, the instructions causing the device to perform actions when executed by the at least one processor, the actions comprising: determining the aging degree of a first type of storage disk in a source storage device; determining the transmission time length for copying target data from a second type of storage disk in the source storage device to a destination storage device, wherein the target data is stored in the second type of storage disk in the source storage device; determining to migrate the target data from the second type of storage disk to the first type of storage disk based on the transmission time length and the aging degree; and copying the target data from the first type of storage disk in the source storage device to the destination storage device.

[0006] According to a third aspect of the present disclosure, there is provided a computer program product, which is tangibly stored on a non-volatile computer-readable medium and comprises machine-executable instructions, which when executed cause a machine to perform the steps of the method in the first aspect of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0007] 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 throughout the exemplary embodiments of the present disclosure.

[0008] Figure 1 A schematic diagram showing an example environment in which data replication may be implemented;

[0009] Figure 2 A schematic diagram showing an asynchronous data replication process scheduled by a recovery point objective (RPO);

[0010] Figure 3 A schematic diagram showing a situation when a source storage device fails within the RPO time window;

[0011] Figure 4 A schematic diagram showing a case where the amount of target data is large;

[0012] Figure 5 A flowchart showing a method for data replication according to an embodiment of the present disclosure

[0013] Figure 6 A schematic block diagram showing a source storage device to which the method according to an embodiment of the present disclosure can be applied;

[0014] Figure 7 A flowchart showing an implementation process of determining to migrate target data from a second type of storage disk to a first type of storage disk according to an embodiment of the present disclosure;

[0015] Figure 8 A flowchart showing the implementation process of calculating the start migration time according to the present disclosure;

[0016] Fig. 9 An exemplary implementation process of determining a start migration time for an RPO time window according to an embodiment of the present disclosure is shown;

[0017] Fig.10 A schematic flow chart showing a data replication process according to an embodiment of the present disclosure; and

[0018] Fig.11 A schematic block diagram of an example device suitable for implementing embodiments of the present disclosure is shown.

[0019] In the various drawings, the same or corresponding reference numerals represent the same or corresponding parts. DETAILED DESCRIPTION

[0020] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments described herein, which are instead provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.

[0021] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.

[0022] Data replication technology refers to the technology of copying data from a source storage device to a destination storage device in order to achieve disaster recovery or improve accessibility. As the data in the source storage device gradually increases, the data copied to the destination storage device also gradually increases. Currently, data replication technology is usually implemented in two ways: synchronous data replication and asynchronous data replication. The following will describe the implementation process of data replication in detail with the accompanying drawings, where Figure 1 A schematic diagram of an example environment in which data replication can be implemented according to an embodiment of the present disclosure is shown.

[0023] exist Figure 1 In the example environment shown, a storage system 100 that can implement data replication is shown. The storage system 100 may include various storage systems such as a distributed storage system. The storage system 100 includes a computing device 120, a first storage device 140, and a second storage device 160. For data replication, the following will take the first storage device 140 as a source storage device and the second storage device 160 as a destination storage device as an example for description. It can be understood that this is only exemplary.

[0024] For synchronous data replication, the user writes data to the source storage device 140 through a client (not shown). Then, the source storage device 140 copies the received data to the destination storage device 160. After receiving the data from the source storage device 140, the destination storage device 160 returns a confirmation signal such as ACK to the source storage device 140. The source storage device 140 then sends the confirmation signal to the client, thereby realizing synchronous data replication.

[0025] For asynchronous data replication, the user writes data to the source storage device 140 through the client. Then, the source storage device 140 processes the received data and sends information indicating that the processing has been completed to the client after the processing is completed. After that, the source storage device 140 will send the accumulated data to the destination storage device 160 at regular intervals, thereby realizing asynchronous data replication.

[0026] For asynchronous data replication, the above-mentioned "periodic intervals" may correspond to a recovery point objective (RPO). The recovery point objective refers to the amount of data loss that the business system can tolerate when a source storage device 140 fails. Typically, the RPO is measured in units of time and has a corresponding time length based on the specific requirements of the storage system 100, for example, 8 hours, 4 hours, 1 hour, 0.5 hours, 10 minutes, etc.

[0027] When the source storage device 140 fails, whether the data can be recovered from the destination storage device 160 is related to the time point when the source storage device 140 fails to a certain extent. For example, when the failure occurs during the transmission of the data to be replicated within the RPO time window, the data to be replicated may be lost. When the amount of data to be replicated is large, when the source storage device fails, the data to be replicated may also be lost. Therefore, there is an urgent need for an effective data replication method that can reduce the possibility of data loss and improve the performance of the storage system.

[0028] To at least solve the above technical problems, a data replication method according to an embodiment of the present disclosure is proposed. The data replication method according to an embodiment of the present disclosure includes determining the aging degree of a first type of storage disk in a source storage device. The method also includes determining the transmission time length for copying target data from a second type of storage disk in the source storage device to a destination storage device, wherein the target data is stored in the second type of storage disk in the source storage device. The method further includes determining to migrate the target data from the second type of storage disk to the first type of storage disk based on the transmission time length and the aging degree, and copying the target data from the first type of storage disk in the source storage device to the destination storage device.

[0029] According to the method of the embodiment of the present disclosure, before data replication, by migrating the target data from the second type of storage disk with relatively low performance to the first type of storage disk with relatively high performance, the data replication efficiency can be significantly improved and the possibility of data loss can be reduced, thereby significantly improving the performance of the storage system.

[0030] Figure 2A schematic diagram of an asynchronous data replication process scheduled by a recovery point objective (RPO) is shown. According to the technology of asynchronous data replication, the source storage device 140 can create a data copy according to a predetermined demand, and under the periodic triggering of PRO, the data copy is copied to the destination storage device 160. For simplicity, the data copy is referred to as "target data" hereinafter, which is used to refer to the data to be copied from the source storage device 140 to the destination storage device 160.

[0031] Figure 2 Multiple time windows are shown in FIG. 1 . Each time window corresponds to each RPO time length. Each RPO is triggered by a corresponding triggering moment, and the time period between two triggering moments is the corresponding RPO time length. Figure 2 As shown, the first RPO is determined by the first moment T RPO1 The second RPO is triggered by the second moment T RPO2 The third RPO is triggered by the third moment T RPO3 The fourth RPO is triggered by the fourth moment T RPO4 The fifth RPO is triggered by the fifth time T RPO5 The time period between two triggering moments is the corresponding RPO time length or the corresponding time window. Figure 2 As shown, the first moment T RPO1 With the second moment T RPO2 The time length between corresponds to the time window W1, and the second moment T RPO2 and the third moment T RPO3 The time length between corresponds to the time window W2, and the third moment T RPO3 With the fourth moment T RPO4 The time length between corresponds to the time window W3, and the fourth moment T RPO4 and the fifth moment T RPO5 The time length between the two triggering moments corresponds to the time window W4. In addition, the interval between the two triggering moments may be equal, in other words, the data replication is triggered periodically. It is understood that during the data replication process, the length of the triggering time interval may be adjusted. It is also understood that Figure 2 The figures in the figure are only for illustration, and the first moment does not mean the initial moment, but instead, it can refer to any moment in the data replication process. In addition, the data replication process may include more than 5 or less than 5 triggering moments, which is not limited in the present disclosure.

[0032] Figure 2The shaded blocks in FIG. 1 may represent target data. For example, taking time window W1 as an example, within the time window, data D1 is copied from source storage device 140 to destination storage device 160, and the copying is completed at time t1. Time t1 is within time window W1. And within time window W1, storage system 100 does not have any failure. After that, the data copying process may enter the next triggering time T RPO2 The RPO time window is triggered, and the next target data D2 is copied to the destination storage device, and so on.

[0033] In the time window Wi defined by two adjacent PRO triggering moments, the time window Wi can be divided into two sub-windows: a data transmission sub-window for transmitting replicated data (corresponding to a time length t dt ) and the corresponding idle sub-window after data transmission is completed (corresponding to the time length t idle ). And, the time length t corresponding to the data transmission sub-window dt The time length t corresponding to the idle sub-window idle Satisfies the following equation:

[0034] t dt +t idle =WRPO (1)

[0035] Where WRPO corresponds to the triggering time of two adjacent PROs (for example, T RPOn With T RPO(n+1) )The length of the RPO time window defined by the .

[0036] In the PRO time window defined by two adjacent PRO triggering moments, the time length t of the data transmission subwindow dt The ratio of the time length of the PRO time window WRPO can be expressed as the following equation (2):

[0037]

[0038] Where WRPO represents the length of the PRO time window defined by two adjacent PRO triggering moments. dt The value of is relatively small. Once the source storage device 140 fails, due to the data transmission sub-window t dt Therefore, in this time window, the probability of loss of the copied target data will be relatively low. dt The value of is relatively large. Once the source storage device 140 fails, due to the data transmission sub-window t dt It occupies a relatively large part in the time window, so the probability of loss of the copied target data in this time window is relatively high.

[0039] By adopting the data replication method of the embodiment of the present disclosure, it is possible to solve the problem of dt When the value of is relatively large, a problem of data loss may occur when a failure of the source storage device 140 occurs within the data transmission sub-window.

[0040] by Figure 3 Take this as an example to illustrate. Figure 3 FIG. 1 is a schematic diagram showing a source storage device 140 failing within the RPO time window. Figure 3 In the case where two adjacent PROs are triggered (for example, the second time T RPO2 and the third moment T RPO3 ), in the PRO time window defined by the source storage device 140, when a failure occurs at time t2 (t2 is within the data transmission subwindow), by adopting the data replication method of the embodiment of the present disclosure, the data D2 can be transmitted to the destination storage device before time t2, so that the target data D2 can be completely copied to the destination storage device 160 before the failure, thereby avoiding data loss.

[0041] In addition, by adopting the data replication method of the embodiment of the present disclosure, it is also possible to well solve the problem of data loss that may exist when the amount of data to be replicated is large.

[0042] For example, Figure 4 A schematic diagram showing a situation where target data may be lost when the target data has a large amount of data. Figure 4 In the case where the amount of data to be copied is large, the data copy method according to the embodiment of the present disclosure can be used, so that the data D21 can be transmitted to the destination storage device before the failure occurs at time t4 to avoid data loss.

[0043] It is understood that the device and / or method according to the embodiments of the present disclosure may be Figure 1 is implemented in the example environment 100 in FIG. Figure 1 Although not shown, it is understood that the computing device 120 can be connected to the source storage device 140 and the destination storage device 160 through a network 150. The network 150 includes, but is not limited to, various types of networks such as the Internet, a local area network, and a wireless network. In addition, those skilled in the art can also understand that the computing device 120 can also be connected to and communicate with the source storage device 140 and the destination storage device 160 through various types of buses or lines, and the present disclosure does not limit this. In addition, the source storage device 140 and the destination storage device 160 can be connected in various ways, and the present disclosure does not limit this. In addition, although Figure 1140 and a destination storage device 160 are shown in the figure, but it is understandable that the storage system 100 may include any number of source storage devices 140 and destination storage devices 160. In addition, the source storage device 140 and the destination storage device 160 are also relative. Figure 1 When the storage device 160 in the storage device 140 copies data to the storage device 140, at this time, the storage device 140 can be the destination storage device relative to the storage device 160, and the storage device 160 can be the source storage device relative to the storage device 140.

[0044] Combine the following Figure 5 A flow chart of a method 500 for data replication according to an embodiment of the present disclosure is described. Figure 5 A flow chart of a method 500 for data replication according to an embodiment of the present disclosure is shown. The method 500 may be Figure 1 The process is executed at a computing device 120 in the storage system 100 or at any suitable computing device.

[0045] At block 502, computing device 120 determines an age level of a first type of storage disk in source storage device 140. In some embodiments, the age level characterizes an ageing state of the first type of storage disk.

[0046] In some embodiments, the source storage device 140 may include a hybrid storage device, in which the speed and type of storage disks are mixed. For this type of hybrid storage device, the storage device may include two or more storage disks. In some embodiments, the storage device (source storage device 140 or destination storage device 160) according to an embodiment of the present disclosure may be a hybrid storage device. In the hybrid storage device, there are, but are not limited to, a solid-state drive SSD and a mechanical hard disk HDD. It will be appreciated by those skilled in the art that the performance of an SSD is better than that of an HDD. For example, the read and write speeds of an SSD are faster than the read and write speeds of an HDD.

[0047] Figure 6 FIG. 1 is a schematic block diagram of a source storage device 140 to which the method of the embodiment of the present disclosure can be applied. Figure 6As shown, the source storage device 140 may be a hybrid storage device, which includes a first type of storage disk and a second type of storage disk, wherein the performance of the first type of storage disk is better than that of the second type of storage disk. In some embodiments, the first type of storage disk may include an SSD, and the second type of storage disk may include an HDD. It is understood that the source storage device 140 may also include other types of storage disks. In the following, an SSD is used as the "first type of storage disk" and an HDD is used as the "second type of storage disk" as an example for explanation. It is understood by those skilled in the art that this is not a limitation, and the first type of storage disk and the second type of storage disk may also include other types of storage disks, not limited to SSD or HDD.

[0048] In some embodiments, the SSD storage disks may be arranged in tiers, and each tier includes a plurality of SSD storage disks. Similarly, the HDD storage disks may also be arranged in tiers, and each tier includes a plurality of HDD storage disks. Figure 6 As shown, the SSD storage disk stores data. The data to be copied to the destination storage device 160, i.e., the target data, can be referred to as a "snapshot". The SSD storage disk stores the target data (e.g., snapshot 11, snapshot 12, ... snapshot 1N), and the HDD storage disk also stores the target data (e.g., snapshot 21, snapshot 22, ... snapshot 2N). Figure 6 shown.

[0049] In some embodiments, the computing device 120 may calculate the aging degree of a first type of storage disk (e.g., an SSD type storage disk), and the aging degree represents the aging state of the first type of storage disk. Hereinafter, the first type of storage disk will be described as an SSD type storage disk. However, it is understandable that the method for calculating the aging degree may be similarly applied to other storage disks. Assume that the source storage device 140 includes N s SSD storage disks, where the aging degree of each SSD storage disk is d n , the aging degree represents the ratio of the current aging state of the SSD storage disk to the life span of the SSD storage disk. For the source storage device 140, the aging degree of its SSD type storage disk can be represented by the following equation (3):

[0050]

[0051] In some embodiments, a preset aging degree σ for the first type of storage disk (e.g., an SSD type storage disk) may also be predetermined. If the aging degree d calculated according to equation (3) is greater than or equal to the preset aging degree σ, i.e., d≥σ, then the aging degree of the first type of storage disk (e.g., an SSD type storage disk) is relatively serious, and therefore, the migration data from other types of storage disks (e.g., HDD) can no longer be accepted or processed to avoid the current aging degree of the first type of storage disk (e.g., an SSD type storage disk) being aggravated. If the aging degree d calculated according to equation (3) is less than the preset aging degree σ, i.e., d<σ, then the aging degree of the first type of storage disk (e.g., an SSD type storage disk) is relatively light, and therefore, the migration data from other types of storage disks (e.g., HDD) can be accepted or processed.

[0052] return Figure 5 In box 504, the computing device 120 can determine the transmission time length of copying the target data from the second type of storage disk in the source storage device 140 to the destination storage device 160, where the target data is stored in the second type of storage disk in the source storage device 140.

[0053] In some embodiments, during the process of performing data replication, for an RPO time window W RPO_i , multiple data blocks (e.g., snapshot data) can be copied to the destination storage device in parallel. Multiple data blocks can come from one or more storage disks. For simplicity, only the target data is used as the target data for the RPO time window W. RPO_i Accordingly, the flowchart corresponding to method 500 can be understood as a flowchart for the RPO time window W. RPO_i It can be understood that the method according to the embodiment of the present disclosure can be applied to any one or more time windows in the data replication process, and can be applied in parallel to any number of data blocks being replicated, for example.

[0054] In some embodiments, the computing device 120 may calculate the transmission time length t of copying the target data from the second type storage disk (eg, HDD type storage disk) in the source storage device 140 to the destination storage device 160. dt_i Assume that the data size of the target data block i is D i , and the average transmission speed of data on the replication data link between the source storage device 140 and the destination storage device 160 is f avg , the transmission time length t can be determined based on equation (4): dt_i :

[0055]

[0056] In some embodiments, the transmission time length t dt_i Indicates the length of transmission time for copying data block i of target data from the second type storage disk (eg, HDD type storage disk) of the source storage device 140 to the destination storage device 160 .

[0057] In block 506, the computing device 120 may determine to migrate the target data from the second type of storage disk to the first type of storage disk based on the transfer time length and the aging degree. RPO_i Accordingly, in some embodiments, the computing device 120 may calculate the transmission time length t dt_i and aging degree d, determine the RPO time window W RPO_i , the target data (e.g., data block i or snapshot i) is migrated from the second type of storage disk (e.g., HDD type storage disk) to the first type of storage disk (e.g., SSD type storage disk). In other words, the operation of migrating the target data from the second type of storage disk to the first type of storage disk may be for the RPO time window W. RPO_i The specific implementation process of the operation in 506 will be described in detail below in conjunction with the accompanying drawings.

[0058] In block 508, computing device 120 may copy target data (e.g., data block i or snapshot i) from a first type of storage disk (e.g., an SSD type storage disk) in source storage device 140 to destination storage device 160. In some embodiments, in response to a request for RPO time window W RPO_i When triggered at the moment of WRPO, the computing device 120 can copy the target data (for example, data block i or snapshot i) from the first type of storage disk (for example, SSD type storage disk) in the source storage device 140 to the destination storage device 160 within the RPO time window WRPO.

[0059] In some embodiments, the transmission time length of the target data from the first type of storage disk in the source storage device 140 to the destination storage device 160 is shorter than the transmission time length of the target data from the second type of storage disk in the source storage device 140 to the destination storage device 160. Advantageously, before the RPO is triggered and data replication begins, by migrating the target data (e.g., data block i or snapshot i) from the second type of storage disk (e.g., HDD type storage disk) to the first type of storage disk (e.g., SSD type storage disk), the target data can be replicated to the destination storage device starting from the first type of storage disk with relatively high performance in the source storage device 140. As a result, the data replication efficiency can be significantly improved, the possibility of data loss can be reduced, and the performance of the storage system can be significantly improved.

[0060] Hereinafter, the calculation method of the computing device 120 based on the transmission time length t will be described in detail with reference to the accompanying drawings. dt_i and aging degree d, determine the specific implementation process of migrating target data (for example, data block i or snapshot i) from the second type of storage disk (for example, HDD type storage disk) to the first type of storage disk (for example, SSD type storage disk).

[0061] Figure 7 FIG. 1 is a flowchart showing an implementation process of determining to migrate target data from a second type of storage disk to a first type of storage disk according to an embodiment of the present disclosure. Figure 7 As shown, in block 702, the computing device 120 calculates the transmission time length t based on the transmission time length (eg, the transmission time length t calculated at block 504). dt_i ) is greater than or equal to the product of the preset time length and the weight, the target data is determined as candidate migration data.

[0062] In some embodiments, the preset time length corresponds to the RPO time length, that is, the time length of the RPO time window. For example, the RPO time window W RPO_i The length of time, which can be expressed as T RPO_i The weight can be expressed as θ, where 0<θ≤1. The computing device 120 can calculate the transmission time length t dt_i The product of RPO time length and weight θ*T RPO_i Make a comparison.

[0063] When t dt_i <θ*T RPO_i When , it means that the transmission time is less than the product of the RPO time and the weight θ*T RPO_i , the computing device 120 can estimate that in the RPO time window W RPO_i Within t, the replicated data will have a relatively small probability of being lost due to a failure of the source storage device 140.dt_i ≥θ*T RPO_i When , it means that the transmission time is greater than the product of the RPO time and the weight θ*T RPO_i , the computing device 120 can estimate that in the RPO time window W RPO_i There is a relatively high probability that the copied data will be lost due to a failure of the source storage device 140. In this case, the computing device 120 determines the target data of the data block i as the candidate migration data.

[0064] In block 704, computing device 120 may determine a reduced length of time associated with the target data. Since the read and write speed of the first type of storage disk is faster than the read and write speed of the second type of storage disk, the reduced length of time t s_i Indicates: the length of transmission time saved by copying target data from the first type of storage disk in the source storage device 140 to the destination storage device 160 compared to copying target data from the second type of storage disk in the source storage device 140.

[0065] In some embodiments, when calculating the reduced transmission time length t s_i When , the computing device 120 can obtain the data size of the target data. For example, for the target data of data block i, its data size can be obtained as D i . The computing device 120 can determine the average single read amount of the target data for the read operation (e.g., one or more read operations required to read the target data) from the destination storage device 160. For example, the destination storage device 160 can perform multiple read operations on the target data to achieve full reading of the target data, and the amount of data read by each read operation is the average single read amount. The average single read amount can be determined based on the actual needs of the storage system 100, and the present disclosure does not limit this. In addition, the average single read amount can also be determined based on the ratio between the amount of data read by multiple read operations and the number of reads. The average single read amount can be expressed here as S r_b Furthermore, the computing device 120 may also determine the first response time t of the first type of storage disk and the second type of storage disk to a read operation (eg, one or more read operations required to read target data). sdd and the second response time t hdd .

[0066] Thus, the computing device 120 may calculate the amount of data D based on the amount of data D. i , the average single read size S r_b , first response time t sdd and the second response time t hdd , to determine the length of time t for the reduction s_i, as expressed in equation (5):

[0067]

[0068] As shown in equation (5), the reduced transmission time length can represent: the transmission time length saved in copying the target data from the first type of storage disk in the source storage device 140 to the destination storage device 160 compared to copying from the second type of storage disk in the source storage device 140.

[0069] The computing device 120 determines the transmission time length t of copying the target data from the first type of storage disk of the source storage device 140 to the destination storage device 160. s_i Thereafter, computing device 120 may further determine an updated transmission time length associated with the target data based on the transmission time length and the reduced time length in block 706. In some embodiments, computing device 120 may determine the updated transmission time length t based on equation (6): p_i .

[0070] t p_i =t dt_i -t s_i (6)

[0071] As shown in equation (6), the updated time length may represent the transmission time length required to copy the target data from the first type of storage disk in the source storage device 140 to the destination storage device 160. Thus, it can be further determined that the transmission time length t required to copy the target data from the first type of storage disk in the source storage device 140 to the destination storage device 160 is s_i Less than the transmission time length t of copying the target data from the second type storage disk of the source storage device 140 to the destination storage device 160 p_i .

[0072] The computing device 120 may determine to migrate the target data from the second type of storage disk to the first type of storage disk based on the update transmission time length in block 708. In some embodiments, the computing device 120 may calculate the update transmission time length t calculated in equation (6) as p_i With the preset time length T RPO_i (i.e., the RPO time length or the time length corresponding to the RPO time window) is compared. p_i Greater than or equal to the preset time length T RPO_i (t p_i ≥T RPO_i ), it means that even if the target data is migrated from the second type of storage disk to the first type of storage disk, the required transmission time is still greater than the RPO time window W RPO_iThe target data will still be lost with a high probability for the corresponding time length. In this case, the computing device 120 will avoid or not perform the operation of migrating the target data from the second type of storage disk to the first type of storage disk to save computing resources.

[0073] In some embodiments, when the update transmission time length t p_i Less than the preset time length T RPO_i (t p_i <T RPO_i ), it means that the target data is migrated from the second type of storage disk to the first type of storage disk, and the required transmission time will be less than the RPO time window W RPO_i The corresponding time length. In this case, the computing device 120 will further determine whether to migrate the target data from the second type of storage disk to the first type of storage disk in combination with the aging degree d obtained according to equation (3) in box 502. If the aging degree d of the first type of storage disk calculated according to equation (3) is less than the preset aging degree σ, that is, d<σ, it means that the aging degree of the first type of storage disk (for example, an SSD type storage disk) is relatively light, so the computing device 120 determines that the target data can be migrated from the second type of storage disk to the first type of storage disk. If the computing device 120 determines that the aging degree d calculated according to equation (3) is greater than or equal to the preset aging degree σ, that is, d≥σ, it means that the aging degree of the first type of storage disk (for example, an SSD type storage disk) is relatively serious, so the computing device 120 does not perform the operation of migrating the target data from the second type of storage disk to the first type of storage disk, so as to avoid the aging degree of the current SSD type storage disk from being aggravated.

[0074] It is understood that when the computing device 120 determines t p_i Less than the preset time length T RPO_i And the aging degree d of the first type of storage disk is less than the preset aging degree σ, it can be within the RPO time window W RPO_i Within, the target data is migrated from the second type of storage disk to the first type of storage disk as candidate migration data. When the computing device 120 determines t p_i Greater than or equal to the preset time length T RPO_i , the operation of migrating the target data from the second type of storage disk to the first type of storage disk as candidate migration data will be avoided or not performed to save computing resources. In addition, when the computing device 120 determines that the aging degree d of the first type of storage disk is greater than or equal to the preset aging degree σ, the operation of migrating the target data from the second type of storage disk to the first type of storage disk may not be performed to avoid aggravating the aging degree of the current first type of storage disk.

[0075] In some embodiments, when computing device 120 determines to RPO_i When the target data is migrated from the second type of storage disk to the first type of storage disk within a certain period of time, the computing device 120 may further determine the RPO time window W for which the data replication operation is performed. RPO_i The starting migration time t tp_i In the RPO time window W RPO_i The starting migration time t tp_i and the starting migration time t tp_i The previous time period can be used to migrate the target data from the second type of storage disk to the first type of storage disk. Figure 8 The flowchart describes the calculation of the starting migration time t tp_i The specific implementation process.

[0076] Figure 8 The calculation of the starting migration time t according to the present disclosure is shown. tp_i 800 is a flowchart of the specific implementation process of Figure 8 In block 802, the computing device 120 may determine a transfer speed f of target data between a second type of storage disk and a first type of storage disk. r In block 804, the computing device 120 obtains the data size of the target data. Still taking the above example as an example, for example, the data size is D i .

[0077] In block 806, computing device 120 may calculate the transmission speed f based on the transmission speed f. r And the data size D i , determine the migration time length t associated with the target data tp_i In some embodiments, computing device 120 may determine the migration time length t based on equation (7): r_i :

[0078]

[0079] It can be understood that the migration time length t calculated according to equation (7) is r_i It may represent the length of time required to migrate target data from the second type of storage disk in the source storage device 140 to the first type of storage disk.

[0080] In block 808, computing device 120 may calculate the time window W based on the RPO time window W. RPO_i The endpoint time at the endpoint and the migration time length determine the starting migration time in the RPO time window. Fig. 9 To describe the determination of the starting migration time t in the RPO time window tp_iAn exemplary implementation of .

[0081] Fig. 9 The following figure shows the determination of the starting migration time t in an RPO time window according to an embodiment of the present disclosure. tp_i An exemplary implementation process of Fig. 9 In the example, two adjacent PRO triggering moments (for example, moment T RPO_(i-1) With time T RPO_i ) defined by the time window W RPO_i Take this as an example to illustrate.

[0082] The computing device 120 calculates the migration time length t calculated according to equation (7) in block 806. r_i represents the length of time required to migrate the target data from the second type of storage disk in the source storage device 140 to the first type of storage disk. Therefore, in order to ensure that the target data can be completely migrated to the first type of storage disk before the next RPO trigger arrives, the RPO time window W is RPO_i The two port times of this time window are respectively T RPO_(i-1) With time T RPO_i Time T RPO_i is the next RPO triggering moment. In this case, the computing device 120 may calculate the time window W based on the RPO time window W. RPO_i The endpoint time at the endpoint and the determined migration time length are used to determine the starting migration time t tp_i Specifically, the computing device 120 can calculate the RPO time window W according to the RPO time window W. RPO_i The right end point of (indicates the RPO time window W RPO_i The end point of RPO_i and migration time length t r_i The difference between the two is used to determine the starting migration time t in the RPO time window. tp_i , as shown in equation (8):

[0083] t tp_i =T RPO_i -t r_i (8)

[0084] The starting migration time t calculated according to equation (8) tp_i It can represent the migration start time of migrating the target data from the second type of storage disk to the first type of storage disk. It can be understood that the starting migration time t tp_i Before, to the starting end time T of the RPO time window RPO_(i-1) The time period between can be used to migrate the target data. In other words, the migration can start at the time t tp_i Before (may include the starting migration time ttp_i ), RPO time window W RPO_i The triggering time T RPO_(i-1) (It may include the trigger time T RPO_(i-1) ) at any time after that, trigger the data migration operation.

[0085] It is understandable that the above only describes the process of determining the start migration time for one RPO time window. In the remaining RPO time windows during the data replication process, the same Figure 8 A similar process to the flowchart in FIG. 1 is used to determine the starting migration time within each RPO time window.

[0086] According to the method of the embodiment of the present disclosure, before data replication, by migrating the target data from the second type of storage disk with relatively low performance to the first type of storage disk with relatively high performance, the data replication efficiency can be significantly improved, the possibility of data loss can be reduced, and the performance of the storage system can be significantly improved.

[0087] Fig.10 A schematic flow chart of a data replication process according to an embodiment of the present disclosure is shown. Fig.10 The flowchart 1000 in FIG. Figure 1 The method 1000 is executed at the computing device 120 or any suitable computing device in the storage system 100 in the embodiment of the present invention, and is used to copy the target data from the source storage device 140 to the destination storage device 160. The method 1000 may be a method for copying the target data to the RPO time window W. RPO_i It can be understood that the steps in method 1000 can refer to the description of the corresponding parts above.

[0088] like Fig.10 As shown, the method starts at 1001. At block 1002, the computing device 120 obtains at least one parameter related to data replication. In some embodiments, the at least one parameter related to data replication may include, but is not limited to, the aging degree d of each SSD storage disk in the source storage device 140. n , the length of the predetermined PRO time window T RPO_i , the data size D of the target data (e.g., data block i) i , a first response time t of the first type of storage disk to a read operation sdd , a second response time t of the second type of storage disk to the read operation hdd and the transmission speed f of the target data between the second type storage disk and the first type storage disk r .

[0089] At box 1003, the computing device 120 may determine the aging degree d of the first type of storage disk in the source storage device 140. In some embodiments, the computing device may determine the aging degree d of the first type of storage disk according to formula (3). At 1004, the computing device 120 may compare the aging degree d of the first type of storage disk with a preset aging degree σ. When the aging degree d of the first type of storage disk is greater than or equal to the preset aging degree σ, the process enters box 1011 and ends the data replication process for the target data. When the aging degree d of the first type of storage disk is less than the preset aging degree σ, the process enters box 1005.

[0090] In block 1005, computing device 120 may determine a transmission time length t for copying target data from the second type of storage disk of source storage device 140 to destination storage device 160. dt_i In some embodiments, the computing device 120 may calculate the transmission time length t based on equation (4): dt_i The relevant detailed implementation process can refer to the above description of equation (4), which will not be repeated here for the sake of brevity.

[0091] In 1006, the computing device may set the transmission time length t dt_i With RPO time window W RPO_i The length of time T RPO_i and the product of the weight θ. In some embodiments, method 1000 may be performed for an RPO time window W. RPO_i When the transmission time length t dt_i Less than RPO time length T RPO_i When the transmission time length t is multiplied by the weight θ, the process returns to block 1002 and obtains at least one parameter related to the data replication of the next target data (for example, data block i+1). dt_i Greater than or equal to the RPO time length T RPO_i When the product of θ and weight θ is obtained, the process proceeds to block 1007. In block 1007, the computing device 120 may determine the update transmission time length t p_i Update the transmission time length t p_i It can represent the transmission time length required to copy the target data from the first type of storage disk in the source storage device 140 to the destination storage device 160. And, the update transmission time length t can be determined based on formulas (5) and (6) in combination with the above related description. p_i For the sake of brevity, it will not be described here.

[0092] At 1008, computing device 120 may update transmission time length t p_i With the preset time length T RPO_i(i.e., RPO time length or RPO time window W RPO_i When the transmission time length t is updated, p_i Greater than the preset time length T RPO_i When the transmission time length t is updated, the process returns to block 1002, and at least one parameter related to the data replication of the next target data is obtained at block 1002. p_i Less than or equal to the preset time length T RPO_i , the process enters box 1009.

[0093] In some embodiments, when the update transmission time length t p_i Less than or equal to the preset time length T RPO_i When the computing device 120 determines that the time window T RPO_i The target data is migrated from the second type of storage disk to the first type of storage disk within a period of time. And, in block 1009, the computing device 120 may determine the RPO time window W for which the data replication operation is performed. RPO_i The starting migration time t tp_i In some embodiments, the computing device 120 may determine the starting migration time t according to equations (7)-(8): tp_i .

[0094] Thereafter, in block 1010, the computing device 120 may perform a data replication operation within the RPO time window W targeted by the data replication operation. RPO_i At the initial migration time t tp_i Before (may include the starting migration time t tp_i ), start the migration of target data, thereby migrating the target data from the second type of storage disk in the source storage device to the first type of storage disk in the source storage device.

[0095] After that, the process enters box 1011, and the target data is completed for the RPO time window W. RPO_i data copy operation.

[0096] Advantageously, by adopting the data replication method of the present invention, before data replication, by migrating the target data from a relatively low-performance second-type storage disk to a relatively high-performance first-type storage disk, the data replication efficiency can be significantly improved and the possibility of data loss can be reduced, thereby significantly improving the performance of the storage system.

[0097] Table 1 shows a comparison of the copying time and copying speed of target data from an SSD to a destination storage device compared to an HDD type storage disk. As can be seen from Table 1, copying target data from an SSD to a destination storage device takes significantly less time than copying from an HDD to a destination storage device. Therefore, by migrating target data from a second type of storage disk with relatively low performance to a first type of storage disk with relatively high performance, the performance and reliability of asynchronous data copying can be significantly improved.

[0098] Table 1

[0099]

[0100] Fig.11 A schematic block diagram of an example device 1100 that may be used to implement embodiments of the present disclosure is shown. Figure 1 The computing device 120 in the embodiment can be implemented by the device 1100. As shown in the figure, the device 1000 includes a central processing unit (CPU) 1101, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 1102 or computer program instructions loaded from the storage unit 508 to a random access memory (RAM) 1103. In the RAM 1103, various programs and data required for the operation of the device 1100 can also be stored. The CPU 1101, the ROM 1102, and the RAM 1103 are connected to each other via a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.

[0101] A number of components in the device 1100 are connected to the I / O interface 1105, including: an input unit 1106, such as a keyboard, a mouse, etc.; an output unit 1107, such as various types of displays, speakers, etc.; a storage page 1108, such as a disk, an optical disk, etc.; and a communication unit 1109, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 1109 allows the device 1100 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0102] The various processes and processing described above, such as methods 500, 700-800, and 1000, may be performed by the processing unit 1101. For example, in some embodiments, the methods 500, 700-800, and 1000 may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as the storage unit 1108. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 500 via the ROM 1102 and / or the communication unit 1109. When the computer program is loaded into the RAM 1103 and executed by the CPU 1101, one or more actions of the methods 500, 700-800, and 1000 described above may be performed.

[0103] 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.

[0104] Computer readable storage medium can be a tangible device that can hold and store instructions used by an instruction execution device. Computer readable storage medium can 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 above. More specific examples (non-exhaustive list) of computer readable storage medium include: portable computer disk, hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanical encoding device, such as a punch card or a convex structure in a groove on which instructions are stored, and any suitable combination of the above. The computer readable storage medium used here is not interpreted as a transient signal itself, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagated by a waveguide or other transmission medium (e.g., a light pulse by an optical fiber cable), or an electrical signal transmitted by a wire.

[0105] 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.

[0106] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related 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 completely 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 completely 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 embodiments, 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.

[0107] 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 according to the embodiments of 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.

[0108] 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.

[0109] 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.

[0110] 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 embodiments 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 the module, program segment or instruction includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, 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 implemented with a dedicated hardware-based system that performs the specified function or action, or can be implemented with a combination of special hardware and computer instructions.

[0111] The embodiments of the present disclosure have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. 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 embodiments. The selection of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

Claims

1. A method for data replication, comprising: Determining an aging degree of a first type of storage disk in a source storage device; Determine a transmission time length for copying target data from a second type of storage disk in the source storage device to a destination storage device, wherein the target data is stored in the second type of storage disk in the source storage device; Based on the transmission time length and the aging degree, determining to migrate the target data from the second type of storage disk to the first type of storage disk; as well as The target data is copied from the first type of storage disk in the source storage device to the destination storage device.

2. The method according to claim 1, wherein determining to migrate the target data from the second type of storage disk to the first type of storage disk comprises: Based on the transmission time length being greater than or equal to the product of a preset time length and a weight, determining the target data as candidate migration data; determining a reduced length of time associated with the target data; determining an updated transmission time length associated with the target data based on the transmission time length and the reduced time length; as well as Based on the update transmission time length, determine to migrate the target data from the second type of storage disk to the first type of storage disk.

3. The method according to claim 2, wherein determining to migrate the target data from the second type of storage disk to the first type of storage disk based on the update transmission time length comprises: Based on the update transmission time length being less than the preset time length and the aging degree being less than the preset aging degree, the target data is migrated from the second type of storage disk to the first type of storage disk as the candidate migration data.

4. The method of claim 2, wherein determining the reduced time length comprises: Obtaining the data volume of the target data; Determine a single average read amount size of the target data from the read operation of the destination storage device; respectively determining a first response time and a second response time of the first type of storage disk and the second type of storage disk to the read operation; as well as The reduced time length is determined based on the data amount, the single average read amount, the first response time, and the second response time.

5. The method of claim 2, wherein determining the update transmission time length comprises: The difference between the transmission time length and the reduced time length is used as the updated transmission time length.

6. The method according to claim 2, wherein the preset time length corresponds to the length of a preset time window, the method further comprising: For the preset time window, a start migration time for migrating the target data from the second type of storage disk to the first type of storage disk in the source storage device is determined.

7. The method according to claim 6, wherein determining the start migration time comprises: determining a transmission speed of the target data between the second type of storage disk and the first type of storage disk; Obtaining the data volume of the target data; Determining a migration time length associated with the target data based on the transmission speed and the data volume; as well as The starting migration time for the preset time window is determined based on the endpoint time at the endpoint of the preset time window and the migration time length.

8. The method of claim 1 , wherein determining the transmission time length comprises: Obtaining the data volume of the target data; Determining an average transmission speed of the target data between the source storage device and the destination storage device; as well as The transmission time length is determined based on the data volume and the transmission speed.

9. The method according to claim 1, wherein the transmission time length of the target data from the first type of storage disk in the source storage device to the destination storage device is less than the transmission time length of the target data from the second type of storage disk in the source storage device to the destination storage device. 10 . The method of claim 1 , wherein the first type of storage disk comprises a solid state drive (SSD), and the second type of storage disk comprises a hard disk (HDD).

11. An electronic device, comprising: at least one processor; as well as at least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor, the instructions, when executed by the at least one processor, causing the electronic device to perform actions, the actions comprising: Determining an aging degree of a first type of storage disk in a source storage device; Determine a transmission time length for copying target data from a second type of storage disk in the source storage device to a destination storage device, wherein the target data is stored in the second type of storage disk in the source storage device; Based on the transmission time length and the aging degree, determining to migrate the target data from the second type of storage disk to the first type of storage disk; and The target data is copied from the first type of storage disk in the source storage device to the destination storage device.

12. The electronic device according to claim 11, wherein determining to migrate the target data from the second type of storage disk to the first type of storage disk comprises: Based on the transmission time length being greater than or equal to the product of a preset time length and a weight, determining the target data as candidate migration data; determining a reduced length of time associated with the target data; determining an updated transmission time length associated with the target data based on the transmission time length and the reduced time length; as well as Based on the update transmission time length, determine to migrate the target data from the second type of storage disk to the first type of storage disk.

13. The electronic device according to claim 12, wherein determining to migrate the target data from the second type of storage disk to the first type of storage disk based on the update transmission time length comprises: Based on the update transmission time length being less than the preset time length and the aging degree being less than the preset aging degree, the target data is migrated from the second type of storage disk to the first type of storage disk as the candidate migration data.

14. The electronic device of claim 12, wherein determining the reduced length of time comprises: Obtaining the data volume of the target data; Determine a single average read amount size of the target data from the read operation of the destination storage device; respectively determining a first response time and a second response time of the first type of storage disk and the second type of storage disk to the read operation; as well as The reduced time length is determined based on the data amount, the single average read amount, the first response time, and the second response time.

15. The electronic device of claim 12, wherein determining the update transmission time length comprises: The difference between the transmission time length and the reduced time length is used as the updated transmission time length.

16. The electronic device according to claim 12, wherein the preset time length corresponds to the length of a preset time window, and wherein the instruction, when executed by the at least one processor, further causes the electronic device to perform an action, the action comprising: For the preset time window, a start migration time for migrating the target data from the second type of storage disk to the first type of storage disk in the source storage device is determined.

17. The electronic device according to claim 16, wherein determining the start migration time comprises: determining a transmission speed of the target data between the second type of storage disk and the first type of storage disk; Obtaining the data volume of the target data; Determining a migration time length associated with the target data based on the transmission speed and the data volume; as well as The starting migration time for the preset time window is determined based on the endpoint time at the endpoint of the preset time window and the migration time length.

18. The electronic device of claim 11, wherein determining the transmission time length comprises: Obtaining the data volume of the target data; Determining an average transmission speed of the target data between the source storage device and the destination storage device; as well as The transmission time length is determined based on the data volume and the transmission speed.

19. An electronic device according to claim 11, wherein the transmission time length of the target data from the first type of storage disk in the source storage device to the destination storage device is less than the transmission time length of the target data from the second type of storage disk in the source storage device to the destination storage device.

20. A computer program product tangibly stored on a non-transitory computer readable medium and comprising machine executable instructions which, when executed, cause a machine to: Determining an aging degree of a first type of storage disk in a source storage device; Determine a transmission time length for copying target data from a second type of storage disk in the source storage device to a destination storage device, wherein the target data is stored in the second type of storage disk in the source storage device; Based on the transmission time length and the aging degree, determining to migrate the target data from the second type of storage disk to the first type of storage disk; as well as The target data is copied from the first type of storage disk in the source storage device to the destination storage device.