Adaptive hash-based data replication in a storage system
US-10565058-B1 · Feb 18, 2020 · US
US10831398B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10831398-B2 |
| Application number | US-201615268741-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 19, 2016 |
| Priority date | Sep 19, 2016 |
| Publication date | Nov 10, 2020 |
| Grant date | Nov 10, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Improving storage device efficiency during data replication. An asynchronous data replication process is initiated between a source computer and a target computer over a network. Performance of the target computer and a storage device of the target computer is monitored. At least one portion of data stored on the source computer is identified for the data replication, wherein the at least one portion of the data is organized in a data block. Whether to modify a size of the data block is determined, based on the monitored performance of the target computer. Responsive to determining to modify the size of the data block, based on the monitored performance of the target computer, the size of the data block is modified.
Opening claim text (preview).
What is claimed is: 1. A method comprising: initiating, by one or more computer processors, an asynchronous data replication process between a source computer and a target computer over a network; monitoring, using the source computer, at least one storage device performance of a storage device of the target computer to determine whether a target computer load is greater than a first specified threshold; monitoring, using the source computer, at least one network performance to determine whether a network load is greater than a second specified threshold; in response to comparing, using the source computer, a most recent snapshot of a data stored on the source computer with a previous snapshot of the data stored on the source computer, identifying, by the one or more computer processors, at least one difference between the most recent snapshot of the data stored in the source computer and the previous snapshot of the data stored in the source computer, wherein the at least one identified difference includes at least one portion of data stored on the source computer for the asynchronous data replication process between the source computer and the target computer, wherein the at least one portion of data is organized in a data block; and responsive to determining, based on the monitored at least one storage device performance of the target computer, that the target computer load is greater than the first specified threshold, increasing, using the source computer, a size of the data block associated with the at least one identified difference for the asynchronous data replication process between the source computer and the target computer over the network, wherein the increased size of the data block is aligned to an optimal data block size for efficient write operation by the storage device of the target computer to reduce a number of Input/Output operations per second (IOPs) performed by the target computer and decrease the target computer load, wherein the increased size of the data block increases the network load, and wherein the network load is increased to not exceed the second specified threshold associated with the network load. 2. The method of claim 1 , further comprising: responsive to determining that the data block received by the target computer is the optimal data block size for the storage device, writing, by the one or more computer processors, the data block to the storage device using a first writing operation; and responsive to determining that the data block received by the target computer is not the optimal data block size for the storage device, writing, by the one or more computer processors, the data block to the storage device using a second writing operation. 3. The method of claim 1 , further comprising: wherein the monitored at least one network performance of the network includes monitoring a network bandwidth utilization, and wherein the monitored at least one storage device performance of the storage device includes monitoring the number of IOPS. 4. The method of claim 2 , wherein determining whether the data block received by the target computer is the optimal data block size for the storage device comprises: determining, by the one or more computer processors, whether a memory address of the storage device has a memory size equal to a multiple of a memory size of the data block. 5. The method of claim 2 , wherein the first writing operation is performed using a modify operation, and wherein the second writing operation is performed using a redirect-on-write operation. 6. The method of claim 3 , further comprising: responsive to determining that the network load is greater than the second specified threshold, decreasing, by the one or more computer processors, the size of the data block, wherein the decreased size of the data block is not equal to the optimal data block size for the storage device, and wherein the data block having the decreased size of the data block is written to the storage device using the second writing operation. 7. The method of claim 6 , wherein decreasing the size of the data block increases the number of IOPs performed by the storage device for writing the data block and decreases the network utilization bandwidth. 8. A computer program product comprising: one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising: program instructions to initiate an asynchronous data replication process between a source computer and a target computer over a network; program instructions to monitor, using the source computer, at least one storage device performance of a storage device of the target computer to determine whether a target computer load is greater than a first specified threshold; program instructions to monitor, using the source computer, at least one network performance to determine whether a network load is greater than a second specified threshold; program instructions to, in response to comparing, using the source computer, a most recent snapshot of a data stored on the source computer with a previous snapshot of the data stored on the source computer, identify, by the one or more computer processors, at least one difference between the most recent snapshot of the data stored in the source computer and the previous snapshot of the data stored in the source computer, wherein the at least one identified difference includes at least one portion of data stored on the source computer for the asynchronous data replication process between the source computer and the target computer, wherein the at least one portion of data is organized in a data block; and program instructions to, responsive to determining, based on the monitored at least one storage device performance of the target computer, that the target computer load is greater than the first specified threshold, increasing, using the source computer, a size of the data block associated with the at least one identified difference for the asynchronous data replication process between the source computer and the target computer over the network, wherein the increased size of the data block is aligned to an optimal data block size for efficient write operation by the storage device of the target computer to reduce a number of Input/Output operations per second (IOPs) performed by the target computer and decrease the target computer load, wherein the increased size of the data block increases the network load, and wherein the network load is increased to not exceed the second specified threshold associated with the network load. 9. The computer program product of claim 8 , wherein the program instructions stored on the one or more computer readable storage media further comprises: program instructions to, responsive to determining that the data block received by the target computer is the optimal data block size for the storage device, write the data block to the storage device using a first writing operation; and program instructions to, responsive to determining that the data block received by the target computer is not the optimal data block size for the storage device, write the data block to the storage device using a second writing operation. 10. The computer program product of claim 8 , wherein the program instructions stored on the one or more computer readable storage media further comprises: wherein the monitored at least one network performance of the network includes monitoring a network bandwidth utilization, and wherein the monitored at least one storage device performance of the storage device includes monitoring the number of IOPS. 11. The computer program produc
Management of blocks · CPC title
Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes · CPC title
Saving storage space on storage systems · CPC title
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Replication mechanisms · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.