Enhanced disk array
First Claim
1. A computer storage system, comprising:
- a plurality of disk drives for storing distributed parity groups, each distributed parity group comprising storage blocks, said storage blocks comprising one or more data blocks and a parity block, each of said storage blocks stored on a separate disk drive such that no two storage blocks from a given parity group reside on the same disk drive;
file system metadata to describe a location of each of said storage blocks by specifying a disk identifier and a logical block identifier of a first logical block of each storage block; and
an allocation module configured to allocate space for a new distributed parity group on two or more disk drives in said plurality of disk drives, said allocation module allocating space for each storage block of said new distributed parity group from free space on each of said two or more disk drives.
12 Assignments
0 Petitions
Accused Products
Abstract
An enhanced disk array is described. The enhanced disk includes a plurality of disk drives for storing distributed parity groups. Each distributed parity group has a number of storage blocks including one or more data blocks and a parity block. Each of the storage blocks is stored on a separate disk drive such that no two storage blocks from a given parity group reside on the same disk drive. File system metadata describes a location of each storage block by specifying a disk identifier and a logical block identifier of a first logical block of each storage block. An allocation module allocates space for a new distributed parity group on two or more disk drives by allocating space for each storage block of the new distributed parity group from free space on each of the disk drives.
157 Citations
16 Claims
-
1. A computer storage system, comprising:
-
a plurality of disk drives for storing distributed parity groups, each distributed parity group comprising storage blocks, said storage blocks comprising one or more data blocks and a parity block, each of said storage blocks stored on a separate disk drive such that no two storage blocks from a given parity group reside on the same disk drive;
file system metadata to describe a location of each of said storage blocks by specifying a disk identifier and a logical block identifier of a first logical block of each storage block; and
an allocation module configured to allocate space for a new distributed parity group on two or more disk drives in said plurality of disk drives, said allocation module allocating space for each storage block of said new distributed parity group from free space on each of said two or more disk drives. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16)
-
-
13. A method for managing a storage array, comprising:
-
recognizing a new storage device;
adding said new storage device to a list of previously-available storage devices to produce a list of currently-available storage devices;
moving a selected storage block from a selected parity group to said new storage device;
updating file system metadata to reflect the new location of said selected storage device such that clients accessing a file containing said selected storage block can continue to access data in said selected storage block.
-
Specification