Allocation and redistribution of data among storage devices
First Claim
Patent Images
1. A method of allocating a set of data records among a plurality of data storage devices in a data storage system, the method comprising:
- defining a series of group values based on the number of devices;
assigning each group value to a substantially equal number of the data records;
assigning each group value to one of the devices in the system;
storing each of the data records on the device having a group value corresponding to the group value of the data record; and
when the number of storage devices changes, re-allocating some of the records among storage devices based on the group values.
1 Assignment
0 Petitions
Accused Products
Abstract
Distributing and redistributing records among a changing set of storage devices is accomplished by grouping the records based on the starting and ending numbers of storage devices.
37 Citations
29 Claims
-
1. A method of allocating a set of data records among a plurality of data storage devices in a data storage system, the method comprising:
-
defining a series of group values based on the number of devices; assigning each group value to a substantially equal number of the data records; assigning each group value to one of the devices in the system; storing each of the data records on the device having a group value corresponding to the group value of the data record; and when the number of storage devices changes, re-allocating some of the records among storage devices based on the group values. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method of allocating a set of data records among a plurality of data storage devices in a data storage system, the method comprising:
-
defining a series of group values based on the number of devices; assigning each group value to a substantially equal number of the data records; assigning each group value to one of the devices in the system; and storing each of the data records on the device having a group value corresponding to the group value of the data record, wherein the group values are defined as a vector of integers each corresponding to one of the storage devices, the number of integers in the vector exceeding the number of storage devices. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A system for allocating data records among a plurality of data storage devices in a data storage system, the system comprising:
-
an interface to the data storage devices; and a data allocation module configured (i) to define a series of group values based on the number of devices, (ii) to assign each group value to a substantially equal number of the data records, (iii) to assign one or more group values to each of the devices, (iv) to cause, via the interface, each of the data records to be stored on the device having a group value corresponding to the group value of the data record, and (v) when the number of storage devices changes, to re-allocate some of the records among storage devices based on the group values. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
-
26. A system for allocating data records among a plurality of data storage devices in a data storage system, the system comprising:
-
an interface to the data storage devices; and a data allocation module configured (i) to define a series of group values based on the number of devices, (ii) to assign each group value to a substantially equal number of the data records, (iii) to assign one or more group values to each of the devices, and (iv) to cause, via the interface, each of the data records to be stored on the device having a group value corresponding to the group value of the data record, wherein the group values are defined as a vector of integers each corresponding to one of the storage devices, the number of integers in the vector exceeding the number of storage devices. - View Dependent Claims (27)
-
-
28. An article of manufacture having computer-readable program portions embodied thereon, the article comprising computer-readable instructions for allocating a set of data records among a plurality of data storage devices in a data storage system by:
-
defining a series of group values based on the number of devices; assigning each group value to a substantially equal number of the data records; assigning one or more group values to each of the devices in the system; storing each of the data records on the device having a group value corresponding to the group value of the data record; and when the number of storage devices changes, re-allocating some of the records among storage devices based on the group values.
-
-
29. An article of manufacture having computer-readable program portions embodied thereon, the article comprising computer-readable instructions for allocating a set of data records among a plurality of data storage devices in a data storage system by:
-
defining a series of group values based on the number of devices; assigning each group value to a substantially equal number of the data records; assigning one or more group values to each of the devices in the system; storing each of the data records on the device having a group value corresponding to the group value of the data record, wherein the group values are defined as a vector of integers each corresponding to one of the storage devices, the number of integers in the vector exceeding the number of storage devices.
-
Specification