Method of verifying data consistency between local and...

Error detection/correction and fault detection/recovery – Data processing system error or fault handling – Reliability and availability

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C714S005110

Reexamination Certificate

active

06480970

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to electronic data storage in which data is copied or “mirrored” from a local mass data storage system to a remote mass data storage system for the purposes of backup, security and recovery in the event of a catastrophic failure. More particularly, the present invention relates to a new and improved method and data structure by which to verify data and check parity consistency between the local and remote mass data storage systems by communicating only a relatively small fraction of the information previously required between the local and remote systems, thereby increasing the capacity or bandwidth for performing ongoing, non-verification storage operations.
BACKGROUND OF THE INVENTION
Modern data processing systems recognize the imperative nature of preserving and maintaining the correct data for computational use. In some types of data processing systems, such as those used in banks, financial institutions and other organizations which deal with sensitive and critical data, it is absolutely necessary to guard against massive inadvertent data errors and data loss due to equipment malfunctions, system failures and natural disasters. One common way to avoid such catastrophic errors is to copy or “mirror” the complete data stored at an active data processing system to a mirroring data processing system. The mirroring data processing system is located at a geographically remote location. If the active system experiences a catastrophic failure, the mirroring system has all of the data and computational capabilities necessary to assume responsibility for performing the primary data processing functions as a substitute for the failed active system. Conversely, if the monitoring system fails, the active system proceeds in its normal fashion to continue executing the primary computational and data storage functions. As soon as possible after the catastrophe, the failed one of the remote or active systems is again made functional to restore the backup, security and recovery capabilities of the system.
Of course, the functional integrity of such a mirrored mass data storage system depends entirely on the ability to maintain an accurate copy of the data from the active system on the mirroring system, assuming that both systems have comparable computational capabilities. As the active system adds new data to its active mass data storage system, or modifies its existing data, a copy of that new or changed data must be transferred to and stored on the mirroring data processing system on a frequent basis.
Updating the data of the mirroring mass data storage system may occur synchronously or asynchronously. Synchronous updates are performed approximately simultaneously with the change or addition at the active mass data storage system. Synchronous updates occur continually during the use of the active data processing system. Asynchronous updates are performed at periodic time intervals, and involve collecting blocks of added or modified data into groups and communicating the groups at the time intervals. The asynchronous updates occur at relatively frequent intervals, since the integrity of the mirroring system depends maintaining the state of the mirrored data the same as the state of the active data.
Complex mass data storage systems may involve storing tens or hundreds of terabytes of information. During the normal high-intensity use of such complex systems, a significant fraction of the total information will be updated on a continuing basis, either synchronously or asynchronously. The amount of information to be transferred as updates between the active and remote systems requires rapid communication capability between the active and remote systems. Consequently, the active system and geographically-remote mirroring systems are frequently linked by high-speed, high-capacity land lines and satellite links to communicate the data back and forth. Using lower-performance communication links is simply not effective from a performance standpoint, due to the high requirement for continuing updates involving substantial transfers of data between the active and mirroring systems. The cost of using high-speed, high-capacity land lines and satellite links becomes significant in implementing mirrored, redundant data backup systems.
In addition to communicating updates between the active and remote systems rapidly and with minimal time delay, another aspect of a reliable mirrored mass data storage system involves periodically performing disk verify operations or disk verify and parity check operations. A verify and check operation involves scanning the mass storage media, which is usually formed from multiple disk drives configured as a redundant array of independent disks (RAID), looking for disk defects and checking to determine that the stored data and its parity are consistent. Parity is a short mathematical surrogate or proxy for the data. The parity allows the data to be reconstructed, if necessary.
Occasionally a disk drive will degrade to the point that one of the divisions of its storage media, known as a sector, becomes defective. A defective sector is incapable of storing data reliably. The disk verify operation involves reading the data and writing it back, to determine proper functionality. The parity check is an optional and frequently-performed operation which is combined with the disk verify operation. The parity check involves computing the parity of the data read during the verify operation, and comparing the computed parity with the stored parity that was read with the associated data. Although unintended, it is occasionally possible that a disk drive or the associated mass data storage software will create a situation where the data and the stored parity do not match. A mismatch of the parity and data indicates a problem of data reliability, and such problems should be resolved quickly.
It is essential to detect and correct errors arising from a mismatch of the data and parity and from faulty disk drives and sectors while the remaining RAID mass storage system is properly functional. Although RAID mass data storage systems have been developed to permit certain errors to be detected and corrected, substantially all of the remaining, non-faulty components of the RAID system must usually be properly functional in order to correct the error. If multiple parts of the RAID system have failed or degraded, it may be extremely difficult or impossible to correct multiple errors. Thus, if the errors are not searched out and corrected on a reliable and prompt basis, the existence of such errors may prevent correction and data reconstruction. Verify and check operations are intended to seek out and correct such errors before additional errors occur.
The typical technique of performing the verify and check operation in a mirrored system is to periodically transfer entire blocks of data from the mirroring mass data storage system to the active mass data storage system where the data is compared. Transferring such massive amounts of data is expensive because of the cost of using the land lines or satellite links, and because transferring and comparing the data consumes substantial computational resources of the active data processing system. Diverting the computational resources of the active data processing system away from its normal processing activities reduces the overall performance of the active system and frequently requires the size and capacity of the active system to be increased to compensate for performing the transfer and compare activities.
The complexities and costs involved in transfer, compare, verify and check operations have led to the development of techniques to quantify the data for such operations, permitting such operations to be carried out in a convenient manner while simultaneously performing the normal data processing functions. One technique used is to divide the data into groups or blocks, and to perform such operations only on the blocks. The improvements from the two above identified previous inventions, of wh

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method of verifying data consistency between local and... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method of verifying data consistency between local and..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of verifying data consistency between local and... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2956246

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.