Dynamically scalable disk array
First Claim
1. A dynamically scalable storage system, comprising:
- a first 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 distributed 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;
a processor configured to manage said file system metadata, said processor configured to recognize when a new disk drive is added to said first plurality of disk drives to produce a second plurality of disk drives, said processor further configured to cause one or more existing storage blocks from said first plurality of disk drives to be moved to said new disk drive to balance usage of all drives in said second plurality of disk drives, said processor further configured to update said file system metadata to point to storage blocks moved to said new disk drive.
12 Assignments
0 Petitions
Accused Products
Abstract
A dynamically scalable storage system is described. The system includes a first plurality of disk drives for storing distributed parity groups. Each distributed parity group includes storage blocks arranged as one or more data blocks and a parity block. Each storage block is stored on a separate disk drive such that no two storage blocks from a given distributed parity group reside on the same disk drive. File system metadata is used 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. A processor manages the file system metadata. The processor recognizes when a new disk drive is added to the plurality of disk drives and causes one or more existing storage blocks to be moved to the new disk drive to balance usage of all drives. The processor also updates the file system metadata.
-
Citations
14 Claims
-
1. A dynamically scalable storage system, comprising:
-
a first 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 distributed 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;
a processor configured to manage said file system metadata, said processor configured to recognize when a new disk drive is added to said first plurality of disk drives to produce a second plurality of disk drives, said processor further configured to cause one or more existing storage blocks from said first plurality of disk drives to be moved to said new disk drive to balance usage of all drives in said second plurality of disk drives, said processor further configured to update said file system metadata to point to storage blocks moved to said new disk drive. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. 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;
determining a size of a new parity group, said size describing a number of data blocks in said new parity group;
computing a parity block for said parity group;
storing one of said data blocks of said parity group on said new storage device;
combining a first distributed parity group with a second distributed parity group to produce at least one new parity group; and
storing one data block of said at least one parity group on said new storage device. - View Dependent Claims (11, 12, 13, 14)
-
Specification