DATA RESYNCHRONIZATION
First Claim
1. A method of re-synchronizing data between an upstream volume and a downstream volume, comprising:
- communicating data to the downstream volume, from a start point to an end point of the upstream volume;
maintaining a first cursor to indicate data, from the start point to the first cursor, that has been communicated to and committed to persistent storage of the downstream volume; and
maintaining a second cursor to indicate data, from the first cursor to the second cursor, that has been communicated to the downstream volume and buffered without yet being confirmed as committed to persistent storage of the downstream volume.
1 Assignment
0 Petitions
Accused Products
Abstract
Examples herein relate to re-synchronizing data between an upstream volume and a downstream volume, including by communicating data to the downstream volume, from a start point to an end point of the upstream volume, maintaining a first cursor to indicate data, from the start point to the first cursor, that has been communicated to and committed to persistent storage of the downstream volume, and maintaining a second cursor to indicate data, from the first cursor to the second cursor, that has been communicated to the downstream volume and buffered without yet being confirmed as committed to persistent storage of the downstream volume.
-
Citations
14 Claims
-
1. A method of re-synchronizing data between an upstream volume and a downstream volume, comprising:
-
communicating data to the downstream volume, from a start point to an end point of the upstream volume; maintaining a first cursor to indicate data, from the start point to the first cursor, that has been communicated to and committed to persistent storage of the downstream volume; and maintaining a second cursor to indicate data, from the first cursor to the second cursor, that has been communicated to the downstream volume and buffered without yet being confirmed as committed to persistent storage of the downstream volume. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable storage medium comprising instructions that, when executed by one or more processors, cause the one or more processors to re-synchronize data between a first data storage volume and a second data storage volume, wherein the instructions are executable to:
-
communicate data to the second data storage volume, from a start point to an end point of the first data storage volume; maintain a first cursor to indicate how much of the data has been communicated to and committed to persistent storage of the second data storage volume; and maintain, based on said communication, a second cursor to indicate how much data has been communicated to and buffered without yet being confirmed as committed to persistent storage of the second data storage volume. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A storage apparatus to re-synchronize data in a downstream volume thereof with data from a system storing an upstream volume, comprising:
-
a first data buffer to receive given data that is to re-synchronize certain data in persistent storage of the downstream volume with the upstream volume; a second data buffer to receive, after receipt of the given data into the first data buffer, new data that is to overwrite the certain data in the persistent storage of the downstream volume; and a processor to execute stored instructions to commit to persistent storage of a current version of the downstream volume the new data in the second data buffer, after the given data in the first data buffer has been committed to persistent storage of the current version of the downstream volume, and to communicate an acknowledgement message to the system storing the upstream volume, the message indicating how much data has been committed to persistent storage of the current version of the downstream volume.
-
-
14. The storage apparatus according to claim 14, wherein the processor is to execute stored instructions to communicate an acknowledgement message to the system storing the upstream volume, the message indicating how much data has been committed from the first data buffer to persistent storage of the current version of the downstream volume.
Specification