METHOD AND APPARATUS FOR ALLOCATING ERASURE CODED DATA TO DISK STORAGE
First Claim
1. Computer-implemented method for locating data on storage comprising computer-executable acts of:
- allocating for storage on the same or different devices in a pool of disk storage devices, a plurality of encoded data objects encoded by the same or different erasure codes;
for each encoded object to be stored on multiple logical storage units, utilizing an allocation bitmask as a single request for available allocation units to store the respective encoded object on the multiple logical storage units, wherein the allocation bitmask spans the multiple logical storage units and includes a gap aligned with a starting partition boundary for the encoded object being stored.
2 Assignments
0 Petitions
Accused Products
Abstract
Allocation process that allows erasure coded data to be stored on any of a plurality of disk drives, in a pool of drives, so that the allocation is not tied to a fixed group of drives. Still further, the encoded data can be generated by any of multiple different erasure coding algorithms, where again storage of the encoded data is not restricted to a single group of drives based on the erasure algorithm being utilized to encode the data. In another embodiment, the encoded data can be “stacked” (aligned) on select drives to reduce the number of head seeks required to access the data. As a result of these improvements, the system can dynamically determine which one of multiple erasure coding algorithms to utilize for a given incoming data block, without being tied to one particular algorithm and one particular group of storage devices as in the prior art.
239 Citations
24 Claims
-
1. Computer-implemented method for locating data on storage comprising computer-executable acts of:
-
allocating for storage on the same or different devices in a pool of disk storage devices, a plurality of encoded data objects encoded by the same or different erasure codes; for each encoded object to be stored on multiple logical storage units, utilizing an allocation bitmask as a single request for available allocation units to store the respective encoded object on the multiple logical storage units, wherein the allocation bitmask spans the multiple logical storage units and includes a gap aligned with a starting partition boundary for the encoded object being stored. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A data storage system comprising:
-
an erasure coding algorithm selection component operable to select, for different incoming data objects, different erasure coding algorithms for generating encoded data objects; and a disk storage allocation component for allocating the encoded data objects encoded by the different algorithms to any available allocation units on the same or different devices in a pool of disk storage devices. - View Dependent Claims (21, 22, 23)
-
-
24. In a computing environment for locating data storage, a data structure comprising an allocation bitmask to request available allocation units for storing encoded objects across one or multiple logical storage units, the encoded data objects being encoded in different erasure codes, the allocation bitmask spanning multiple logical storage units across a plurality of disk drives, and the bitmask including a gap aligned with a starting partition boundary for the encoded object being stored where the available allocation units are requested across multiple logical storage units.
Specification