Distributing data across multiple data storage devices in a data storage system
First Claim
Patent Images
1. A method for managing a storage system having a plurality of data storage devices comprising:
- spreading data evenly across a first set of data locations within a first plurality of data storage devices in the storage system;
reconfiguring the storage system to establish a second plurality of data storage devices, the second plurality of data storage devices having a different combination of storage devices than the fist plurality of data storage devices; and
dynamically moving the data in response to a change in the configuration of the storage system to reestablish an even spread of the data across the second plurality of data storage devices, the amount of data moved being approximately proportional to the change in storage capacity of the storage system as a result of the change in configuration, wherein dynamically moving the data changes at least part of the first set of data locations to form a second set of data locations for the data within the second plurality of data storage devices.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for managing storage from multiple data storage devices are disclosed. The system and method provide improved load balancing, reduction or elimination of fragmentation, and efficient changes in hardware configurations. I/O load and data are spread relatively evenly across many data storage devices in the storage system. Dynamic reorganization can be performed for the data stored on the data storage devices.
-
Citations
41 Claims
-
1. A method for managing a storage system having a plurality of data storage devices comprising:
-
spreading data evenly across a first set of data locations within a first plurality of data storage devices in the storage system;
reconfiguring the storage system to establish a second plurality of data storage devices, the second plurality of data storage devices having a different combination of storage devices than the fist plurality of data storage devices; and
dynamically moving the data in response to a change in the configuration of the storage system to reestablish an even spread of the data across the second plurality of data storage devices, the amount of data moved being approximately proportional to the change in storage capacity of the storage system as a result of the change in configuration, wherein dynamically moving the data changes at least part of the first set of data locations to form a second set of data locations for the data within the second plurality of data storage devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
locking a piece of data to be moved;
reading information from the piece of data to be moved; and
writing the information to a new piece of data.
-
-
10. A computer program product that includes a computer-usable medium having a sequence of instructions which, when executed by a processor, causes said processor to execute a process for managing a storage system having a plurality of data storage devices, said process comprising:
-
spreading data evenly across a first set of data locations within a first plurality of data storage devices in the storage system;
reconfiguring the storage system to establish a second plurality of data storage devices, the second plurality of data storage devices having a different combination of storage devices than the first plurality of data storage devices; and
dynamically moving the data in response to a change in the configuration of the storage system to reestablish an even spread of the data across the second plurality of data storage devices, the amount of data moved being approximately proportional to the change in storage capacity of the storage system as a result of the change in configuration, wherein dynamically moving the data changes at least part of the first set of data locations to form a second set of data locations for the data within the second plurality of data storage devices. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
locking a piece of data to be moved;
reading information from the piece of data to be moved; and
writing the information to a new piece of data.
-
-
19. A system for managing a storage system having a plurality of data storage devices, comprising:
-
means for spreading data evenly across a first set of data locations within a first plurality of data storage devices in the storage system;
means for reconfiguring the storage system to establish a second plurality of data storage devices, the second plurality of data storage devices having a different combination of storage devices than the first plurality of data storage devices; and
means for dynamically moving the data in response to a change in the configuration of the storage system to reestablish an even spread of the data across the second plurality of data storage devices, the amount of data moved being approximately proportional to the change in storage capacity of the storage system as a result of the change in configuration, wherein dynamically moving the data changes at least part of the first set of data locations to form a second set of data locations for the data within the second plurality of data storage devices. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
means for locking a piece of data to be moved;
means for reading information from the piece of data to be moved; and
means for writing the information to a new piece of data.
-
-
28. A method for managing a storage system having a plurality of data storage devices, comprising:
-
spreading data evenly across a first set of data locations within a first plurality of data storage devices in the storage system, in which pieces of the data are mapped to specific locations in the first plurality of data storage devices using a set of pointers;
reconfiguring the storage system to establish a second plurality of data storage devices, the second plurality of data storage devices having a different combination of storage devices than the first plurality of data storage devices;
dynamically moving the data in response to a change in the configuration of the storage system to reestablish an even spread of the data across the second plurality of data storage devices, the amount of data moved being approximately proportional to the change in storage capacity of the storage system as a result of the change in configuration, wherein dynamically moving the data changes at least part of the first set of data locations to form a second set of data locations for the data within the second plurality of data storage devices; and
remapping the set of pointers to correspond to the pieces of the data that are dynamically moved among the second pluralize of data storage devices. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
locking a piece of data to be moved;
reading information from the piece of data to be moved; and
writing the information to a new piece of data.
-
Specification