Asynchronous data mirroring with look-ahead synchronization record
First Claim
1. A method for managing a data storage system that includes primary and secondary storage subsystems, including respective first and second non-volatile storage media, the method comprising:
- maintaining a record of locations to which data are expected to be written on the primary storage subsystem by a host processor, as indicated by a predetermined prediction algorithm based on the locations to which the data have already been written;
receiving the data from the host processor at the primary storage subsystem to be written to a specified location on the first non-volatile storage media;
if the specified location is not included in the record, updating the record using the prediction algorithm so that the record includes both the specified location and one or more further locations that have not yet been specified by the host processor;
outputting an acknowledgment to the host processor to indicate that the data have been stored in the data storage system after receiving the data and after updating the record if the specified location was not included in the record prior to updating the record;
copying the data from the primary storage subsystem to the secondary storage subsystem so as to create a mirror on the secondary storage subsystem of the data received by the primary storage subsystem;
storing the data in the specified location on both the first and second non-volatile storage media; and
upon recovery of the system from a failure of the primary storage subsystem, conveying, responsively to the record, a portion of the data from the secondary storage subsystem to the primary storage subsystem for storage on the primary storage subsystem.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for managing a data storage system includes maintaining a record predictive of locations to which data are to be written on the primary storage subsystem by a host processor. Upon receiving data from the host processor at the primary storage subsystem to be written to a specified location on the first non-volatile storage media, if the specified location is not included in the record, the record is updated responsively to the specified location. The primary storage subsystem signals the host processor that the data have been stored in the data storage system responsively to receiving the data and, if the specified location was not included in the record, responsively to updating the record.
17 Citations
14 Claims
-
1. A method for managing a data storage system that includes primary and secondary storage subsystems, including respective first and second non-volatile storage media, the method comprising:
-
maintaining a record of locations to which data are expected to be written on the primary storage subsystem by a host processor, as indicated by a predetermined prediction algorithm based on the locations to which the data have already been written; receiving the data from the host processor at the primary storage subsystem to be written to a specified location on the first non-volatile storage media; if the specified location is not included in the record, updating the record using the prediction algorithm so that the record includes both the specified location and one or more further locations that have not yet been specified by the host processor; outputting an acknowledgment to the host processor to indicate that the data have been stored in the data storage system after receiving the data and after updating the record if the specified location was not included in the record prior to updating the record; copying the data from the primary storage subsystem to the secondary storage subsystem so as to create a mirror on the secondary storage subsystem of the data received by the primary storage subsystem; storing the data in the specified location on both the first and second non-volatile storage media; and upon recovery of the system from a failure of the primary storage subsystem, conveying, responsively to the record, a portion of the data from the secondary storage subsystem to the primary storage subsystem for storage on the primary storage subsystem. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
Specification