Patent ID: 8738855

Claim:
A method of storing a data set in a storage system, wherein the storage system comprises a plurality of storage groups representing different storage media, wherein the method comprises: forming at least one data set block from the data set using a fragmentation entity; encoding the at least one data set block by means of an encoding entity, wherein the encoding entity provides a plurality of encoded blocks based on the at least one data set block at an output of the encoding entity, and wherein the encoding entity uses a rateless erasure encoding algorithm based on rateless codes for encoding the at least one data set block; and distributing the encoded blocks amongst at least two of the storage groups using a distribution entity for storage thereof by the storage groups, wherein the encoded blocks are distributed amongst a number of g storage groups, and wherein n crit is the number of encoding blocks required for decoding the data set with a sufficiently large probability of success, wherein each of the g storage groups receives at least n g encoded blocks, with n g = n crit ( g - s ) ⁢ ⁢ and ⁢ ⁢ n g , n crit , g , s ∈ ℕ ⩓ g > 0 wherein s is the maximum number of storage groups that are allowed or expected to concurrently fail, g>s, and s≧2.