Data and parity prefetching for redundant arrays of disk drives
AssigneeDigital Equipment Corporation
InventorsEric S. Noya, Randy M. Arnott, Mitchell N. Rosich
Life of this patent
Estimating the term…
Abstract
A method for prefetching the data and parity blocks for generating parity data of a stripe. The method uses a low and high thresholds marker indicative of a first and second level of fullness of the cache to determine whether or not to prefetch the data and parity blocks. If the cache is filled to a level exceeding the first level of fullness, the data and parity blocks are prefetched for any blocks to be written to the disk drive between the low and high threshold. The data and parity blocks are read from the disk drive at a lower processing priority in anticipation of the writing of the block.
Claims10
An apparatus for prefetching data from a plurality of disk drives, each of the plurality of disk drives organized into a plurality of disk blocks, the plurality of disk blocks further organized into a plurality of stripes, each of the plurality of stripes including at least one disk block from each of the plurality of disk drives, each of the plurality of stripes further including a parity disk block storing parity data generated from the data stored in the other disk blocks of the stripe, the apparatus comprising:
- memory means for storing data, said memory means partitioned into memory blocks compatible with the disk block organization of the plurality of disk drives;
- means for maintaining said memory blocks in a least recently used (LRU) order;
- means for generating a low threshold signal in response to a first predetermined number of said memory blocks being filled with data;
- and
- means, responsive to said low threshold signal, for starting a prefetch procedure to read disk blocks associated with a predetermined stripe, said predetermined stripe including at least one disk block to be overwritten by a LRU memory block.
A method for prefetching data from a plurality of disk drives, each of the plurality of disk drives organized into a plurality of disk blocks, the plurality of disk blocks further organized into a plurality of stripes, each of the plurality of stripes including at least one disk block from each of the plurality of disk drives, each of the plurality of stripes further including a parity disk block storing parity data generated from the data stored in the other disk blocks of the stripe, the method comprising the steps of;
- storing data in a memory means, said memory means partitioned into memory blocks compatible with the disk block organization of the plurality of disk drives;
- maintaining said memory blocks in a least recently used (LRU) order;
- generating a low threshold signal in response to a first predetermined number of said memory blocks being filled with data;
- and
- starting, in response to said low threshold signal, a prefetch procedure to read disk blocks associated with a predetermined stripe, said predetermined stripe including at least one disk block to be overwritten by a LRU memory block.
Dependencies are inferred from the claim text.