Device level coordination of access operations among...

Electrical computers and digital processing systems: memory – Storage accessing and control – Specific memory composition

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C711S154000

Reexamination Certificate

active

06219751

ABSTRACT:

FIELD OF THE INVENTION
This invention relates to storage subsystems formed from cyclic, multitracked devices, and more particularly to storage subsystems of the RAID 3 or RAID 5 type in which multiple RAID control units share access to arrays of such cyclic devices.
DESCRIPTION OF RELATED ART
The succeeding paragraphs briefly describe the data availability, storage capacity, and data rate tradeoffs among several RAID disk array configurations. This is followed by a discussion of aspects of the prior art management of accessing disk drives and arrays shared among two or more control units.
RAID Arrays Fault Tolerance, and Recovery
In the prior art, RAID arrays of cyclic, tracked storage devices have found use in increasing the availability and reliability of stored data. The increased availability and reliability is achieved by dedicating a portion of the capacity to redundant information. In the presence of corrupted data or unavailable disk drives, the RAID control unit uses the redundancy to either reconstruct data on the fly, rebuild data on spare disks, or both. Thus, in a RAID 1 configuration, each update to data is written out to two disks. If any single disk fails, then the duplicate disk is electronically switched into the access path as its replacement. Although remarkably fault tolerant, an N disk RAID 1 array has a storage capacity limited to N/2 of its drives.
A RAID 3 configuration is data rate intensive and sustains a data rate N times the rate of a single disk. Also, it creates a logical track N times the size of a physical track. In RAID 3, N data blocks at a time are written or read across N counterpart synchronized disks and a parity image on an N+1
st
drive. Unfortunately, the high data rate also means that the concurrency rate is low. That is, only one application can access the drives.
In contrast, a RAID 5 configuration is transaction or concurrency intensive. As illustrated in Clark et al., U.S. Pat. No. 4,761,785, “Parity Spreading to Enhance Storage Access”, issued Aug. 2, 1988, N−1 data blocks and an associated parity image are written across N asynchronous disk drives in the same physical address range such that no single drive stores two or more blocks from the same parity group, and such that no single drive stores all of the parity blocks.
It should be recalled that the RAID 3 configuration is affected by adverse loading. Each read and write requires that all drives be accessed, including the parity drive. However, in the RAID 5 context, adverse loading can be minimized in several ways. First, since parity is spread out among the disks, no single disk bears all the parity loading. Indeed, Mattson et al., U.S. Pat. No. 5,265,098, “Method and Means for Managing DASD Array Accesses When Operating in Degraded Mode”, issued Nov. 23, 1993, proposed spreading data and parity blocks out among the disks in a pattern forming a balanced incomplete block design such that adverse loading would be minimized, even where a disk failed and the array was operating in a fault-tolerant mode.
There have been many proposals both for operating RAID 5 arrays and the like in degraded mode and returning the information state of any given array back to a fault-tolerant mode. In this regard, Dunphy, Jr. et al., U.S. Pat. No. 4,914,656, “Disk Drive Memory”, issued Apr. 3, 1990, describe the use of a pool of hot spare disks available for rewriting in the event of single disk failure and in the presence of single image parity groups.
Similarly, Ng et al., U.S. Pat. No. 5,278,838, “Recovery From Errors in a Redundant Array of Disk Drives”, issued Jan. 11, 1994, disclose the online scheduling and rebuilding of data on a spare DASD or the like, the data having been stored on unavailable disk drives in a type RAID 1, 4, or 5 array. The Ng invention relies upon coded error detection and assumes that failures would occur as random independent events.
Management of Accessing Among RAID Control Units and Shared Disk Arrays
In a RAID 5 disk array, updating one or more of the N blocks in a stripe stored on N disks requires four or more access operations and the recalculation of the parity block image. The data and parity blocks move between a control unit resident cache or buffer and two or more of the disk drives. The operations consist of (1) reading the old data block from disk; (2) reading the old parity block from disk; (3) writing the new data block to disk, recalculating new parity as the XOR of the old parity, old data, and the new data; and (4) writing the new parity block to disk.
When two or more RAID control units seek access to data on drives in a shared array, there are myriad opportunities to corrupt data, such as where RAID read and write operations occur concurrently and where they involve more than one drive. Avoidance requires that RAID operations be coordinated in order to preserve data integrity. In the prior art, the RAID control units have been required to communicate and negotiate a lock-like state serializing their access to the disk data. The constructs for serializing access between the RAID control units would frequently be some form of shared variable or message passing. Shared variable synchronization includes test and set, semaphores, conditional critical regions, monitors, or path expressions.
While any one of these constructs, when utilized by both control units, serialize access to the same resource and preserve data integrity, they require that each RAID control unit devote considerable bandwidth to originating and sending messages as well as receiving and interpreting messages from the other control unit. Given that RAID control units may be configured in network relationships, the message traffic required to synchronize access to shared disk arrays becomes nonlinear. Cumulatively, the network bandwidth dedicated to synchronizing communications reduces the bandwidth available to either data rate or concurrency, or other storage and data management tasks.
SUMMARY OF THE INVENTION
It is accordingly an object of this invention to devise a method and apparatus for serializing access to disk arrays shareable among a plurality of RAID control units at a substantial reduction in intercontrol unit communication.
It is yet another object that such method and means effectuate serialized access to data on said devices independent of any consistent state as among concurrently accessing RAID control units.
It is a related object that such method and apparatus minimize reduction in either data rate or concurrency as a function of differences among random or sequential access patterns.
The above objects are believed satisfied by a method and apparatus for selectably locking a transfer path between one of several RAID control units to a shared array of cyclic, multitracked storage devices (disk drives). The control units perform RAID functions on at least one data block and a parity image of a parity set defined over the disk drives. The blocks are distributed such that no single disk drive in the array stores more than one block from an associated data set.
The method steps include defining a lock function on each disk drive. This enables the disk drive to enqueue lock requests from accessing control units, grant lock requests to a requesting drive in enqueued order to an available parity image stored on the device, and to release the lock responsive to a control unit signal. The next step involves executing at the control unit a RAID function embedded within a path expression, a path expression being a construct for synchronizing and ordering the activity relationship between the control unit and one or more array drives. In this regard, the RAID function requests an explicit lock on at least one predetermined parity image from a counterpart device. Significantly, the execution of any RAID function is inhibited until grant of the lock by the counterpart disk drive as a form of busy-wait. When a lock is granted by the disk drive, the control unit then proceeds to execute the RAID function on at least one data block and parity image of an associated parit

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

Device level coordination of access operations among... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Device level coordination of access operations among..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Device level coordination of access operations among... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2552758

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