Claims
- 1. A method for improving the read performance of a RAID 5 drive array having ‘n’ number of drives so that the read performance is greater than (n−1) times that of an independent single drive, said method comprising the acts of:receiving formatting information for each of at least three drives; selecting a first parity block size for use with corresponding first zones of said at least three drives, wherein said first parity block size is equal to an integer multiple of a stripe size associated with at least the first zone of at least one of said three drives, wherein said integer multiple is greater than one; and selecting a second parity block size different than said first parity block size for use with corresponding second zones of said at least three drives, wherein said first and said second parity block sizes are selected to increase the read performance, as compared to at least a first different parity block size, from the drive array based on at least a portion of said formatting information.
- 2. A method for improving the read performance of a RAID 5 drive array having ‘n’ number of drives so that the read performance is greater than (n−1) times that of an independent single drive, said method comprising the acts of:receiving formatting information for each of at least three drives; selecting a first parity block size for use with corresponding first zones of said at least three drives; and selecting a second parity block size different than said first parity block size for use with corresponding second zones of said at least three drives, wherein said first and said second parity block sizes are selected to increase the read performance, as compared to at least a first different parity block size, from the drive array based on at least a portion of said formatting information, wherein said second parity block size is equal to an integer multiple of a stripe size associated with at least the second zone of at least one of said three drives, wherein said integer multiple is greater than one.
- 3. A method for improving the read performance of a RAID 5 drive array having ‘n’ number of drives so that the read performance is greater than (n−1) times that of an independent single drive, said method comprising the acts of:receiving formatting information for each of at least three drives; selecting a first parity block size for use with corresponding first zones of said at least three drives; and selecting a second parity block size different than said first parity block size for use with corresponding second zones of said at least three drives, wherein said first and said second parity block sizes are selected to increase the read performance, as compared to at least a first different parity block size, from the drive array based on at least a portion of said formatting information; and rotating the writing of parity blocks from the first zone of a first drive of said three drives to the first zone of a second of said three drives after an integer number of stripes are written to said three drives, wherein said integer multiple is greater than one.
- 4. A method of writing data and parity to a RAID 5 drive array having at least three drives, said method comprising the acts of:selecting a stripe size for a first zone having sectors of a first size; selecting a parity block size for said first zone equal to an integer multiple of said stripe size, said integer multiple greater than one; writing an integer number of data stripes to the first zone of at least at first and a second of said three drives; and writing a parity block corresponding to said data stripes to the first zone of a third of said three drives, said parity block equal in size to said parity block size.
- 5. The method as defined in claim 4, where said block size is equal to one track of one zone on at least one of said three drives.
- 6. The method as defined in claim 4, where said parity block size is equal to a skip size of at least the first zone on at least one of said three drives.
- 7. The method as defined in claim 4, where said stripe size is greater than one track of the first drive in size.
- 8. The method as defined in claim 4, further comprising reading a zone table to determine at least in part where a first parity block is to be written.
- 9. The method as defined in claim 4, further comprising the act of writing the next parity block to said first drive after an integer number of data stripes are written to said first drive and said second drive said next parity block equal in size to said parity block size.
- 10. The method as defined in claim 4, wherein a different parity block size is selected for the first zone of each of said three drives.
- 11. The method as defined in claim 4, said array having an N number of drives, where N is at least 3, wherein parity block size is selected so that the sequential read access transfer rate of the array is greater than (N−1) times sequential read access transfer rate of one of said drives.
- 12. A system for selecting parity block sizes and stripe sizes for a disk array having at least a first drive, a second drive, and a third drive, said system comprising:a circuit configured to select a first stripe size for use with at least of first zone of said first drive, said first stripe size approximately equal to a first skip size associated with said first zone, the first skip size based at least in part on the number of sectors per track in the first zone, said circuit further configured to select a second stripe size for use with at least of second zone of one of said first, second and third drives, said second stripe size approximately equal to a second skip size associated with said second zone, the second skip size based at least in part on the number of sectors per track in the second zone, and said circuit configured to select a third stripe size for use with at least of third zone of one of said first, second and third drives, said third stripe size approximately equal to a third skip size associated with said third zone, the third skip size based at least in part on the number of sectors per track in the third zone; and at least a first conductor coupled to said circuit, said at least first conductor couplable to at least said first, second, and third drive.
- 13. The system as defined in claim 12, further comprising a zone table stored in computer readable memory, said zone table including at least a first parity block size associated with at least a first disk zone.
- 14. The system as defined in claim 12, further comprising a zone table stored in computer readable memory, said zone table including at least a first stripe size associated with at least a first disk zone, and a second stripe size associated with at least a second disk zone.
- 15. The system as defined in claim 12, further comprising an array of disks having a number of disks, including at least said first drive, said second drive, and said third drive, where said first, second, and third drives are coupled to said at least one conductor.
- 16. The system as defined in claim 15, wherein said circuit is configured select said first, second, and third stripe sizes so that the read performance of said array is greater than that provided by the same number of individual disks minus one.
- 17. A system for selecting parity block sizes and stripe sizes for a disk array having at least three drives, said system comprising:a first drive used to store a first set of data; a second drive used to store a second set of data different than said first set; a third drive used to store a third set of data different than said first and said second sets; and a circuit coupled to said first, second, and third drives, said circuit configured to vary the size of parity blocks written to different zones of said three drives based on at least the disk format of at least one of said three drives, wherein the size of the parity blocks is greater than the largest sector in size.
Parent Case Info
The present application claims priority from U.S. Provisional Patent Application No. 60/132,298 filed on May 3, 1999, and from U.S. Provisional Patent Application No. 60/144,573 filed on Jul. 19, 1999. The contents of those applications, in their entirety, are hereby incorporated by reference.
US Referenced Citations (10)
Foreign Referenced Citations (1)
Number |
Date |
Country |
0 520 707 |
Dec 1992 |
EP |
Non-Patent Literature Citations (1)
Entry |
Supplementary Partial European Search Report, Jan. 8, 2003. |
Provisional Applications (2)
|
Number |
Date |
Country |
|
60/132298 |
May 1999 |
US |
|
60/144573 |
Jul 1999 |
US |