摘要 |
A method for storing data across a plurality of N storage devices S<SUB>1 </SUB>. . . S<SUB>N</SUB>, wherein at least one of the storage devices has a storage capacity that not equal to a storage capacity of others of the storage devices involves identifying a storage device S<SUB>MAX </SUB>having a largest capacity of the plurality of storage devices S<SUB>1 </SUB>. . . S<SUB>N</SUB>; encoding the data with a erasure encoder to produce F erasure codewords, where F= <maths id="MATH-US-00001" num="1"> <MATH OVERFLOW="SCROLL"> <MROW> <MUNDEROVER> <MO>∑</MO> <MROW> <MI>K</MI> <MO>=</MO> <MN>1</MN> </MROW> <MI>N</MI> </MUNDEROVER> <MO></MO> <MSUB> <MI>F</MI> <MI>K</MI> </MSUB> </MROW> </MATH> </MATHS> with K being a counting integer; and distributing the erasure codewords among the N storage devices S<SUB>1 </SUB>. . . S<SUB>N </SUB>in approximate proportion to the storage capacity C<SUB>K </SUB>of each of the N storage devices S<SUB>1 </SUB>. . . S<SUB>N </SUB>subject to the constraint that enough erasure codewords are stored in each of the N storage devices to assure that if any one of the storage devices become unavailable, all of the data stored in the systems can be restored using the fountain codewords stored in the remaining storage devices S<SUB>1 </SUB>. . . S<SUB>N</SUB>. In accordance with certain embodiments consistent with the present invention, the erasure codewords are fountain codewords. This abstract is not to be considered limiting, since other embodiments may deviate from the features described in this abstract.
|