Method and means for managing RAID 5 DASD arrays having RAID DASD arrays as logical devices thereof
First Claim
1. A method for accessing data strings from a plurality of DASDs, comprising the steps of:
- (a) configuring the plurality of DASDs into a RAID 5 array of logical devices, each logical device including N data+P parity DASDs in RAID 3 DASD array;
(b) segmenting each data string into K logical records of N data blocks each, coding P parity blocks over each segmented record, and accessing said K logical records in column major order of predetermined interleave depth onto the RAID 5 array logical devices; and
(c) transferring K records at N data+P parity blocks at a time according to the order and depth from the RAID 3 DASD arrays.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus teaching insertion of addressing indirection to form and to access an array hierarchy expressly permitting the concurrency of a high level RAID array, the bandwidth and degraded mode operation sustainable by a lower level RAID array, and after a DASD failure minimum spanning involvement when the array is rebuilding and rewriting missing data to a spare logical device. Also, disclosed are the accessing of variable length records on the array hierarchy; array hierarchy in which RAID 5 arrays have dissimilar number of logic devices (lower level RAID arrays) and interleave depths; formation of logical arrays using fractional storage defined onto real DASD subsets; and the defining of logical devices onto DASDs distributed in the same or different physical clusters of DASDs and the rebuild operation thereof.
-
Citations
13 Claims
-
1. A method for accessing data strings from a plurality of DASDs, comprising the steps of:
-
(a) configuring the plurality of DASDs into a RAID 5 array of logical devices, each logical device including N data+P parity DASDs in RAID 3 DASD array; (b) segmenting each data string into K logical records of N data blocks each, coding P parity blocks over each segmented record, and accessing said K logical records in column major order of predetermined interleave depth onto the RAID 5 array logical devices; and (c) transferring K records at N data+P parity blocks at a time according to the order and depth from the RAID 3 DASD arrays.
-
-
2. A method for writing data strings applied to a storage subsystem, said subsystem being formed from a plurality of RAID 3 DASD arrays, each RAID 3 array having N data+P parity DASDs attaching a controller, comprising the steps of:
-
(a) configuring the plurality of RAID 3 DASD arrays into a RAID 5 array of addressable logical devices by communicatively attaching each of their controllers through a common control unit; and (b) segmenting each data string at the common control unit into K logical records of N blocks each, parity coding each logical record and adding P blocks thereto, and (c) writing K logical records of N data+P parity blocks, each in column major order of predetermined interleave depth, onto the RAID 5 array of logical devices such that the N data+P parity blocks of each logical record are recorded onto N data+P parity DASDs of a counterpart RAID 3 array operating as the addressed logical device through a path including its controller.
-
-
3. A method for managing large and small accesses of portions of data strings formed from K* (N data+P parity) blocks applied to a storage subsystem formed from a plurality of RAID 3 DASD arrays, each RAID 3 array having N data+P parity DASDs attaching a controller, comprising the steps of:
-
(a) configuring the plurality of RAID 3 DASD arrays into at least one level of indirection forming a RAID 5 array of logical devices of RAID 3 DASD arrays, and, reserving at least one of the logical devices as a spare device by communicatively attaching each controller to a common control unit; (b) accessing the logical devices, other than the spare device, through a path including the common control unit in column major order of predetermined interleaved depth; (c) detecting a DASD failure in a RAID 3 array; (d) responsive to detection of said failure, accessing the logical devices as in step (b) but for the failed DASD; and (e) rebuilding and rewriting N data+P parity DASDs of the logical device whose counterpart RAID 3 array contains the failed DASD onto a spare device on either a predetermined or opportunistic schedule, said rebuild and rewrite spanning only the spare device and said device having the failed DASD. - View Dependent Claims (4, 5)
-
-
6. A storage subsystem comprising:
-
a plurality of RAID 3 arrays of DASDs, each RAID 3 array including N data+P parity DASDs attaching a local controller; a control unit communicatively attaching a subset of the plurality of RAID 3 arrays of DASDs to form an addressable RAID 5 array of logic device equivalents of the RAID 3 arrays through a path including the control unit and local controllers; and means including the control unit and responsive to each data string formed from K*N blocks for segmenting the string into N blocks, encoding P parity blocks over each segment, and writing K of the N data+P parity block segments in column major order of predetermined interleave depth on to counterpart logical devices. - View Dependent Claims (7)
-
-
8. A storage subsystem comprising:
-
a plurality of logical devices, each logic device including a RAID 3 array of DASDs having N data+P parity DASDs attaching a local controller; a control unit communicatively attaching a subset of the plurality of logical devices to form an addressable RAID 5 array of said logical devices through a path including said control unit and local controllers, others of the plurality of logical devices being reserved as spare logical devices; first means including the control unit responsive to each data string formed from K*N blocks for segmenting the string into N blocks, encoding P parity blocks over each segment, writing K of the N data+P parity block segments in column major order of a predetermined interleave depth on to counterpart logical devices, and for recording the N data+P parity blocks of each segment onto N data+P parity DASDs of a counterpart RAID 3 DASD array to the device through a path including its controller; second means including the control unit for detecting a DASD failure in the RAID 3 DASD array counterpart of a logical device and for writing to the logical devices in a predetermined designated order and depth and recording the blocks but for those blocks destined for the failed DASD; and third means for rebuilding and rewriting N data+P parity DASDs of the logical device whose counterpart RAID 3 array contains the failed DASD onto the spare logical device on either a predetermined or opportunistic schedule, said rebuild and rewrite spanning only the spare logical device and said logical device having the failed DASD. - View Dependent Claims (9)
-
-
10. A storage subsystem comprising:
-
a plurality of logical devices, each device formed from a RAID 3 array of DASDs; a control unit for communicatively attaching either a first or a second RAID 5 array of the logical devices; first means including the control unit for selecting the first RAID 5 array, segmenting a data string into segments of m data blocks, coding p parity blocks over each segment, and writing each segment of m data+p parity blocks across the logical devices of the first RAID 5 array in column major order to a first interleave depth; and second means including the control unit for selecting a second RAID 5 array, segmenting another data string into n data blocks, coding p parity blocks over each segment, and writing each segment of n data+p parity blocks across the second DASD subset in column major order to a second interleave depth, at least one of the devices of the second RAID 5 array being also a member of the first RAID 5 array. - View Dependent Claims (11, 12)
-
-
13. A method for writing variable length, count-key-data (CKD) field formatted records to a storage subsystem, said subsystem being formed from a plurality of RAID 3 DASD arrays, each RAID 3 array having N data+P parity DASDs attaching a controller, comprising the steps of:
-
(a) configuring the plurality of RAID 3 DASD arrays into a RAID 5 array of addressable logical devices by communicatively attaching each of their controllers through a common control unit; and (b) segmenting each data string at the common control unit into K logical records of N stripes each, parity coding each logical record and adding P strings thereto, and (c) writing K logical records of N data+P parity strings, each in row major order of predetermined interleave depth, onto the RAID 5 array of logical devices such that the N data+P parity strings of each logical record are recorded onto N data+P parity DASDs of a counterpart RAID 3 array operating as an addressed logical device through a path including its controller such that; (1) each count field of a CKD formatted variable length record being replicated on the N DASDs of the first device in row major order, (2) the key and data fields following the count field of a CKD formatted variable length record being segmented and recorded across N DASDs of the counterpart RAID 3 array operating as the addressed logical device in the predetermined row major order and interleave depth, and (3) each parity block P logically combining a counterpart N fields.
-
Specification