Remote copy secondary data copy validation-audit function
First Claim
1. A method for validating whether shadowed data is a true copy of primary data updates, wherein the primary data updates are generated by one or more applications running in a primary processor at a primary site, the primary data updates received by a primary storage subsystem, each primary data update identified by a unique device and subsystem address, the primary storage subsystem causing I/O write operations to write each primary data update therein, and wherein a secondary site, whether local to or remote from the primary site, shadows the primary data updates in sequence consistent order such that data at the secondary site is available for disaster recovery purposes, the method comprising steps of:
- (a) operating the primary and secondary sites in a full duplex mode such that the primary data updates are continuously shadowed at the secondary site;
(b) initiating a validation session in the primary and secondary sites, including identifying those primary data updates to be validated as properly shadowed at the secondary site;
(c) determining device and subsystem addresses for the identified primary data updates;
(d) specifying a copy start time for grouping a portion of the identified primary data updates to be validated, the copy start time being a logically equivalent time at the primary and secondary sites for the grouped portion of the identified primary data updates and the corresponding shadowed data at the secondary site;
(e) creating first check codes at the primary site for the grouped portion of primary data updates, and creating second check codes at the secondary site for the corresponding shadowed data; and
(f) comparing the first and second check codes for determining whether the shadowed data is a true copy of the corresponding primary data updates.
1 Assignment
0 Petitions
Accused Products
Abstract
A data copy validation technique compares primary data to a copy of that data by generating check codes of the data to be validated at both primary and secondary sites in a continuously running remote data shadowing system. The validation session runs concurrently with the data shadowing so as not to disrupt the data shadowing. Each data validation session is assigned a copy start time, for example, a time preceding a time of a consistency group, for defining when the check code for data at the primary should be compared to a check code of the data at the secondary. The check code of the data at the secondary site is taken at a time that is the equivalent logical point-in-time of that data at the primary site even though the respective data contents may be different in real time.
-
Citations
22 Claims
-
1. A method for validating whether shadowed data is a true copy of primary data updates, wherein the primary data updates are generated by one or more applications running in a primary processor at a primary site, the primary data updates received by a primary storage subsystem, each primary data update identified by a unique device and subsystem address, the primary storage subsystem causing I/O write operations to write each primary data update therein, and wherein a secondary site, whether local to or remote from the primary site, shadows the primary data updates in sequence consistent order such that data at the secondary site is available for disaster recovery purposes, the method comprising steps of:
-
(a) operating the primary and secondary sites in a full duplex mode such that the primary data updates are continuously shadowed at the secondary site; (b) initiating a validation session in the primary and secondary sites, including identifying those primary data updates to be validated as properly shadowed at the secondary site; (c) determining device and subsystem addresses for the identified primary data updates; (d) specifying a copy start time for grouping a portion of the identified primary data updates to be validated, the copy start time being a logically equivalent time at the primary and secondary sites for the grouped portion of the identified primary data updates and the corresponding shadowed data at the secondary site; (e) creating first check codes at the primary site for the grouped portion of primary data updates, and creating second check codes at the secondary site for the corresponding shadowed data; and (f) comparing the first and second check codes for determining whether the shadowed data is a true copy of the corresponding primary data updates. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A data shadowing system including a primary site and a secondary site, the secondary site asynchronously shadowing in real time, record updates generated by applications running at the primary site, the primary site comprising:
-
a primary processor running the applications generating the record updates and issuing a corresponding write I/O operation for each record update, the primary processor having a primary data mover therein for issuing a validation order to determine whether the record updates are accurately shadowed at the secondary site, the primary data mover further describing a copy start time for defining a portion of record updates to be validated, the copy start time useable for matching the portion of record updates at the primary site with corresponding shadowed record updates at the secondary site wherein the content of the corresponding record updates and shadowed record are expected to be equivalent at the copy start time though the contents of such record updates and corresponding shadowed records may vary in real time; a plurality of primary storage controllers directed to store the record updates, the plurality of primary storage controllers executing the issued write I/O operation for each record update; and a plurality of primary storage devices receiving and storing the record updates therein according to the corresponding write I/O operations, wherein the primary processor and each write I/O are time-stamped by the primary processor, such that write I/O operations are accurately sequence ordered relative to each other, the primary data mover collecting sets of record updates and combining each record set information as provided by each one of the plurality of primary storage controllers with the corresponding record update for creating self describing record sets, the self describing record sets being transmitted to the secondary site, wherein the self describing record sets provide information adequate for the secondary site to shadow the record updates therein in sequence consistent order without further communications from the primary site, and wherein the primary data mover'"'"'s issued validation order causes primary and secondary check codes to be generated for the portion of record updates and the corresponding shadowed record updates, respectively, and comparing the primary and secondary check codes for copy validation. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. An asynchronous remote data duplexing system providing storage based, realtime data shadowing with real time copy-audit validation, including a primary site running applications generating record updates and having a secondary site, remote from the primary site, the secondary site shadowing the record updates and providing disaster recovery for the primary site, the asynchronous remote data duplexing system comprising:
-
a primary processor at the primary site for running the applications and issuing write I/O operations for corresponding record updates, the primary processor having a primary data mover therein; a plurality of primary storage controllers receiving the write I/O operation for each record update, each primary storage controller write I/O operation synchronized by the primary processor; a plurality of primary storage devices storing the record updates therein according to each corresponding write I/O operation, wherein the primary data mover collects record set information from the plurality of primary storage controllers for each record update and appends a prefix header to a predetermined group of record set informations, the prefix header and predetermined record set information groups forming self describing record sets, the primary data mover periodically issuing a validation order to the plurality of primary storage controllers and to the secondary site, each validation order including a copy start time such that record updates falling within consecutive copy start times form a portion of record updates, the primary data mover causing a check code to be generated from each portion of record updates for copy validation; a secondary processor at the secondary site having a secondary data mover, the secondary data mover receiving the self describing record sets, the validation orders, and the copy start times from the primary site; a plurality of secondary storage controllers coupled to the secondary processor; and a plurality of secondary storage devices storing the record updates, wherein the secondary data mover determines whether the transmitted self describing record sets are complete and forms secondary portions of record updates from the self describing record sets and copy start times and further provides the record updates from the secondary portion of record updates to the plurality of secondary storage controllers for writing to the plurality of secondary storage devices in an order consistent with a sequence that the record updates were written to the plurality of primary storage devices, the secondary data mover causing a secondary check code to be generated from each secondary portion of record updates, and transmitting the secondary check code to the primary data mover, wherein the primary data mover compares the corresponding primary and secondary check codes to determine whether each secondary portion of record updates is a valid copy of the portion of record updates.
-
-
22. A method for validating whether shadowed data is a true copy of primary data updates, wherein the primary data updates are generated by one or more applications running in a primary processor at a primary site, the primary data updates received by a primary storage subsystem, each primary data update identified by a unique device and subsystem address, the primary storage subsystem causing I/O write operations to write each primary data update therein, and wherein a secondary site, whether local to or remote from the primary site, shadows the primary data updates in sequence consistent order such that the secondary site is available for disaster recovery purposes, the method comprising steps of:
-
(a) operating the primary and secondary sites in a full duplex mode such that the primary data updates are continuously shadowed at the secondary site; (b) initiating a validation session in the primary and secondary sites, including identifying those primary data updates to be validated as properly shadowed at the secondary site; (c) determining device and subsystem addresses for the identified primary data updates; (d) specifying a copy start time for grouping a portion of the identified primary data updates to be validated, the copy start time being a logically equivalent time at the primary and secondary sites for the grouped portion of the identified primary data updates and the corresponding shadowed data at the secondary site; (e) providing a copy of the grouped portion of primary data updates, and the corresponding shadowed data; and (f) comparing the copies of the grouped portion of primary data updates, and the corresponding shadowed data for determining whether the shadowed data is a true copy of the corresponding primary data updates.
-
Specification