Random linear coding approach to distributed data storage
First Claim
1. A method comprising:
- at a downloader computer, retrieving a file that has been stored as network coded parts comprising code vectors that are distributed among a plurality of storage peers of a distributed storage system by;
collecting ones of the code vectors associated with the file from ones of the storage peers;
generating a matrix of the collected ones of the code vectors, the matrix having a dimension; and
recovering the file using the collected ones of the code vectors when the dimension of the matrix is equal to a number of code vectors that are distributed among a plurality of storage peers.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and computer program product for providing a random linear coding approach to distributed data storage is presented. A file is broken into a plurality of pieces. For every peer (peer means storage-location with limited storage space), the number of coded-pieces the peer can store is determined. Each of the coded-piece is determined by taking random linear combination of all the pieces of the entire file. The associate code-vector is stored for every coded-piece. The file is retrieved by collecting code-vectors and the coded-pieces from the peers and viewing the collected code-vectors as a matrix. When a dimension of the matrix is equal to the number of pieces of the file, the file is recovered using the collection of code vectors in the matrix.
16 Citations
15 Claims
-
1. A method comprising:
-
at a downloader computer, retrieving a file that has been stored as network coded parts comprising code vectors that are distributed among a plurality of storage peers of a distributed storage system by; collecting ones of the code vectors associated with the file from ones of the storage peers; generating a matrix of the collected ones of the code vectors, the matrix having a dimension; and recovering the file using the collected ones of the code vectors when the dimension of the matrix is equal to a number of code vectors that are distributed among a plurality of storage peers. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A non-transitory computer readable medium having computer readable code thereon, the medium comprising instructions for:
-
retrieving, at a downloader computer, a file that has been stored as network coded parts comprising code vectors that are distributed among a plurality of storage peers of a distributed storage system by; collecting ones of the code vectors associated with the file from ones of the storage peers; generating a matrix of the collected ones of the code vectors, the matrix having a dimension; and recovering the file using the collected ones of the code vectors when the dimension of the matrix is equal to a number of code vectors that are distributed among a plurality of storage peers. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A downloader comprising:
-
a memory; a processor; a communications interface; an interconnection mechanism coupling the memory, the processor and the communications interface; and wherein the memory is encoded with an application that retrieves a file that has been stored as network coded parts comprising code vectors that are distributed among a plurality of storage peers of a distributed storage system by; collecting ones of the code vectors associated with the file from ones of the storage peers; generating a matrix of the collected ones of the code vectors, the matrix having a dimension; and recovering the file using the collected ones of the code vectors when the dimension of the matrix is equal to a number of code vectors that are distributed among a plurality of storage peers. - View Dependent Claims (12, 13, 14, 15)
-
Specification