Cloud data backup storage manager
First Claim
Patent Images
1. A method to back up data, comprising:
- identifying a file to be backed up, wherein the file is stored locally on a client computer;
encoding the file into K file segments, wherein K is an integer greater than one;
requesting at least R*K storage blocks on a plurality of peer computers, wherein R is a redundancy factor;
transmitting segments from the client computer to the plurality of peer computers such that each of the K file segments is stored on at least R peer computers; and
querying the plurality of peer computers to determine a number of copies of the K file segments that are stored on the plurality of peer computers, wherein in response to any particular file segment of the K file segments not having R available copies, the method comprises at least one of;
request and reserve space for one or more additional copies of the particular file segment;
orinstruct creation of one or more additional copies of the particular file segment on one or more of the peer computers of the plurality of peer computers such that R copies of the particular file segment are stored at the one or more of the peer computers.
10 Assignments
0 Petitions
Accused Products
Abstract
Techniques for cloud data backup are disclosed. Example methods may store backup data from a client computer on portions of data storage media associated with peer computers. In some example embodiments, a file may be encoded into segments using an error-tolerant encoding scheme, and the segments may be stored on peer computers. In some example embodiments, individual segments may be stored on more than one peer machine and/or an individual peer machine may not receive all of the segments associated with the file.
15 Citations
19 Claims
-
1. A method to back up data, comprising:
-
identifying a file to be backed up, wherein the file is stored locally on a client computer; encoding the file into K file segments, wherein K is an integer greater than one; requesting at least R*K storage blocks on a plurality of peer computers, wherein R is a redundancy factor; transmitting segments from the client computer to the plurality of peer computers such that each of the K file segments is stored on at least R peer computers; and querying the plurality of peer computers to determine a number of copies of the K file segments that are stored on the plurality of peer computers, wherein in response to any particular file segment of the K file segments not having R available copies, the method comprises at least one of; request and reserve space for one or more additional copies of the particular file segment;
orinstruct creation of one or more additional copies of the particular file segment on one or more of the peer computers of the plurality of peer computers such that R copies of the particular file segment are stored at the one or more of the peer computers. - View Dependent Claims (2, 3, 4, 5, 13)
-
-
6. An apparatus for data backup, comprising:
-
a client computer associated with a unique client identifier, the client computer being configured to; identify a file for backup, the file being associated with a unique file identifier; separate the file into K file segments, wherein K is an integer greater than one, wherein individual segments are associated with unique segment identifiers, and wherein a single segment comprises less than an entirety of the file; transmit the segments to a plurality of peer computers such that each single peer computer receives less than all of the K file segments and such that individual segments are received by at least R peer computers, wherein R is a redundancy factor; receive, from the peer computers, at least some of the segments associated with the file; reconstruct the file, based upon at least the unique file identifier and the unique segment identifiers, from the received at least some of the segments; and query the plurality of peer computers to determine a number of copies of the K file segments that are stored on the plurality of peer computers, wherein the client computer is configured to, in response to any particular file segment of the K file segments not having R available copies, perform or control performance of at least one of; request and reserve space for one or more additional copies of the particular file segment;
orinstruct creation of one or more additional copies of the particular file segment on one or more of the peer computers of the plurality of peer computers such that R copies of the particular file segment are stored at the one or more of the peer computers. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
-
14. An apparatus, comprising:
-
a computer configured to identify a file to be backed up and to encode the file into K file segments, wherein K is an integer greater than one, the computer being further configured to request at least R*K storage blocks on a plurality of peer computers, wherein R is a redundancy factor; wherein segments are transmitted from a client computer to the plurality of peer computers such that each of the K file segments is stored on at least R peer computers; the computer further being configured to query the plurality of peer computers to determine a number of copies of the K file segments that are stored on the plurality of peer computers, wherein the computer is configured to, in response to any particular file segment of the K file segments not having R available copies, perform or control performance of least one of; request and reserve space for one or more additional copies of the particular file segment;
orinstruct creation of one or more additional copies of the particular file segment on one or more of the peer computers of the plurality of peer computers such that R copies of the particular file segment are stored at the one or more of the peer computers. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification