DISTRIBUTED STORAGE TIMESTAMPED REVISIONS
First Claim
1. A method for use in a distributed storage unit configured to store data slices, the data slices encoded to prevent recovery of a data object using a single encoded data slice, but allow recovery of the data object using at least a threshold number of differently encoded data slices, the method comprising:
- storing a plurality of encoded data slices having a common slice name, but different revision numbers;
receiving a read command indicating the common slice name and a requested timeframe;
identifying a selected one of the plurality of encoded data slices having a revision number most nearly correlated to the requested timeframe; and
transmitting a response to the read command including the selected one of the plurality of encoded data slices.
5 Assignments
0 Petitions
Accused Products
Abstract
Various revisions of encoded data slices stored in a distributed storage system can be time stamped to assist in retrieving desired data revisions. Each of the multiple revisions of the encoded data slices may have the same name, but different revision numbers. An encoded data slice, which is received at a distributed storage unit along with a write command, slice name, and the revision number, is time stamped. The timestamp and revision number are stored in conjunction with the data slice. A desired encoded data slice can be retrieved by sending a read command, slice name, and timeframe to the distributed storage unit. The appropriate encoded data slice can be retrieved by determining which revision number has a timestamp most closely matching the requested timeframe.
128 Citations
20 Claims
-
1. A method for use in a distributed storage unit configured to store data slices, the data slices encoded to prevent recovery of a data object using a single encoded data slice, but allow recovery of the data object using at least a threshold number of differently encoded data slices, the method comprising:
-
storing a plurality of encoded data slices having a common slice name, but different revision numbers; receiving a read command indicating the common slice name and a requested timeframe; identifying a selected one of the plurality of encoded data slices having a revision number most nearly correlated to the requested timeframe; and transmitting a response to the read command including the selected one of the plurality of encoded data slices. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
receiving a first encoded data slice having a slice name and a first revision number, the first encoded data slice representing one of a first plurality of differently encoded data slices generated from a first revision of a data portion, the first plurality of differently encoded data slices encoded to prevent recovery of the first revision of the data portion using a single encoded data slice, and to permit recovery of the first revision of the data portion using at least a threshold number of the first plurality of differently encoded data slices; determining a first time stamp associated with the first encoded data slice; storing the first encoded data slice and the first time stamp; receiving a second encoded data slice having the same slice name as the first encoded data slice and a second revision number, the second encoded data slice representing one of a second plurality of differently encoded data slices generated from a second revision of a data portion, the second plurality of differently encoded data slices encoded to prevent recovery of the second revision of the data portion using a single encoded data slice, and to permit recovery of the second revision of the data portion using at least a threshold number of the second plurality of differently encoded data slices; determining a second time stamp associated with the second encoded data slice; storing the second encoded data slice and the second time stamp. - View Dependent Claims (8, 9, 10)
-
-
11. A distributed storage unit comprising:
-
at least one memory to store a plurality of encoded data slices having a common slice name, but different revision numbers, the data slices encoded to prevent recovery of a data object using a single encoded data slice, but allow recovery of the data object using at least a threshold number of differently encoded data slices; an interface to receive a read command indicating the common slice name and a requested timeframe; a processor to identify a selected one of the plurality of encoded data slices having a revision number most nearly correlated to the requested timeframe; and the interface further to transmit a response to the read command including the selected one of the plurality of encoded data slices. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A distributed storage unit comprising:
-
an interface to receive a first encoded data slice having a slice name and a first revision number, the first encoded data slice representing one of a first plurality of differently encoded data slices generated from a first revision of a data portion, the first plurality of differently encoded data slices encoded to prevent recovery of the first revision of the data portion using a single encoded data slice, and to permit recovery of the first revision of the data portion using at least a threshold number of the first plurality of differently encoded data slices; a processor to determine a first time stamp associated with the first encoded data slice; a memory to store the first encoded data slice and the first time stamp; the interface further to receive a second encoded data slice having the same slice name as the first encoded data slice and a second revision number, the second encoded data slice representing one of a second plurality of differently encoded data slices generated from a second revision of a data portion, the second plurality of differently encoded data slices encoded to prevent recovery of the second revision of the data portion using a single encoded data slice, and to permit recovery of the second revision of the data portion using at least a threshold number of the second plurality of differently encoded data slices; the processor further to determine a second time stamp associated with the second encoded data slice; the memory further to store the second encoded data slice and the second time stamp. - View Dependent Claims (18, 19, 20)
-
Specification