Object storage system for an unreliable storage medium
First Claim
Patent Images
1. A distributed storage system, comprising:
- a plurality of storage elements; and
control circuitry configured to;
receive a data item, via a communication network, from a device that requests storage of the data item;
determine a size of the data item;
in response to determining that the size of the data item is less than a first predetermined threshold;
generate replicas of the data item as redundant data elements in accordance with a spreading parameter;
in response to determining that the size of the data item is greater than or equal to the first predetermined threshold and less than a second predetermined threshold;
divide the data item into data blocks based on the spreading parameter; and
append encoding information to each of the data blocks to generate redundant data elements;
in response to determining that the size of the data item is greater than or equal to the second predetermined threshold;
divide the data item into a plurality of sections of predetermined length;
divide each section into data blocks based on the spreading parameter; and
append encoding information to each of the data blocks of each section to generate redundant data elements; and
store the redundant data elements among the plurality of storage elements.
6 Assignments
0 Petitions
Accused Products
Abstract
A method and computer device for storage and retrieval of a data object on a storage medium. The method includes steps of disassembling the data object into a predetermined number of redundant sub blocks, storing the redundant sub blocks on the storage medium, retrieving at least a predetermined multiple of a minimal spreading requirement of the redundant sub blocks from the storage medium, and assembling the data object from any combination of a particular number of the redundant sub blocks, the particular number corresponding to a predetermined multiple of a minimal spreading requirement. The computer device includes modules for performing the steps.
-
Citations
20 Claims
-
1. A distributed storage system, comprising:
-
a plurality of storage elements; and control circuitry configured to; receive a data item, via a communication network, from a device that requests storage of the data item; determine a size of the data item; in response to determining that the size of the data item is less than a first predetermined threshold; generate replicas of the data item as redundant data elements in accordance with a spreading parameter; in response to determining that the size of the data item is greater than or equal to the first predetermined threshold and less than a second predetermined threshold; divide the data item into data blocks based on the spreading parameter; and append encoding information to each of the data blocks to generate redundant data elements; in response to determining that the size of the data item is greater than or equal to the second predetermined threshold; divide the data item into a plurality of sections of predetermined length; divide each section into data blocks based on the spreading parameter; and append encoding information to each of the data blocks of each section to generate redundant data elements; and store the redundant data elements among the plurality of storage elements. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of storing a data item in a distributed storage system, comprising:
-
receiving, with control circuitry, the data item from a device via a communication network, the device requesting storage of the data item; determining, with the control circuitry, a size of the data item; in response to determining that the size of the data item is less than a first predetermined threshold; generating, with the control circuitry, replicas of the data item as redundant data elements in accordance with a spreading parameter; in response to determining that the size of the data item is greater than or equal to the first predetermined threshold and less than a second predetermined threshold; dividing, by the control circuitry, the data item into data blocks based on the spreading parameter; and appending, by the control circuitry, encoding information to each of the data blocks to generate redundant data elements; in response to determining that the size of the data item is greater than or equal to the second predetermined threshold; dividing, by the control circuitry, the data item into a plurality of sections of predetermined length; dividing, by the control circuitry, each section into data blocks based on the spreading parameter; and appending, by the control circuitry, encoding information to each of the data blocks of each section to generate redundant data elements; and storing, by the control circuitry, the redundant data elements among a plurality of storage elements. - View Dependent Claims (17, 18)
-
-
19. A distributed storage system, comprising:
-
means for receiving a data item, via a communication network, from a device that requests storage of the data item; in response to the size of the data item being less than a first predetermined threshold, means for; generating replicas of the data item as redundant data elements in accordance with a spreading parameter; in response to the size of the data item being greater than or equal to the first predetermined threshold and less than a second predetermined threshold, means for; dividing the data item into data blocks based on the spreading parameter; and appending encoding information to each of the data blocks to generate redundant data elements; in response to the size of the data item being greater than or equal to the second predetermined threshold, means for; dividing the data item into a plurality of sections of predetermined length; dividing each section into data blocks based on the spreading parameter; and appending encoding information to each of the data blocks of each section to generate redundant data elements; and means for storing a plurality of redundant data elements. - View Dependent Claims (20)
-
Specification