Optimistic checked writes
First Claim
1. A computing device comprising:
- an interface configured to interface and communicate with a dispersed or distributed storage network (DSN);
memory that stores operational instructions; and
processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to;
dispersed error encode a data segment associated with a data object to produce a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein the data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein the set of EDSs to be distributedly stored among a plurality of storage units (SUs) within the DSN;
select a subset of a set of SUs, wherein the subset of the set of SUs having a most favorable reliability level among the set of SUs;
transmit list slice requests to the subset of the set of SUs;
receive list slice responses from at least some of the set of SUs;
determine a highest current revision level based on list slice responses;
select a revision level for the set of EDSs;
generate a set of checked revision slice requests that includes the highest current revision level based on list slice responses and the revision level for the set of EDSs; and
transmit the set of checked revision slice requests to the set of SUs.
4 Assignments
0 Petitions
Accused Products
Abstract
A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry operably coupled to the interface and to the memory. The processing circuitry is configured to execute the operational instructions to perform various operations and functions. The computing device dispersed error encodes a data segment to produce a set of encoded data slices (EDSs) and selects a subset of a set of storage units (SUs). Then, the computing device transmits list slice requests to the subset of the set of SUs and receive list slice responses from at least some of them. The computing device determines a highest current revision level based on list slice responses and select a revision level for the set of EDSs. The computing device generates a set of checked revision slice requests and transmit them to the set of SUs.
78 Citations
20 Claims
-
1. A computing device comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; and processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to; dispersed error encode a data segment associated with a data object to produce a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein the data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein the set of EDSs to be distributedly stored among a plurality of storage units (SUs) within the DSN; select a subset of a set of SUs, wherein the subset of the set of SUs having a most favorable reliability level among the set of SUs; transmit list slice requests to the subset of the set of SUs; receive list slice responses from at least some of the set of SUs; determine a highest current revision level based on list slice responses; select a revision level for the set of EDSs; generate a set of checked revision slice requests that includes the highest current revision level based on list slice responses and the revision level for the set of EDSs; and transmit the set of checked revision slice requests to the set of SUs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing device comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; and processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to; dispersed error encode a data segment associated with a data object to produce a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein the data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein the set of EDSs to be distributedly stored among a plurality of storage units (SUs) within the DSN; select a subset of a set of SUs, wherein the subset of the set of SUs having a most favorable reliability level among the set of SUs; generate list slice requests to include slice names associated with corresponding EDSs of the set of EDS; transmit the list slice requests to the subset of the set of SUs; receive list slice responses from at least some of the set of SUs; determine a highest current revision level based on list slice responses; select a revision level for the set of EDSs; generate a set of checked revision slice requests that includes the highest current revision level based on list slice responses and the revision level for the set of EDSs including to generate a checked revision write slice request of the set of checked revision slice requests to include at least one of a transaction number, an EDS of the set of EDSs a slice name associated with the EDS of the set of EDSs, the highest current revision level, or the revision level; and transmit the set of checked revision slice requests to the set of SUs. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for execution by a computing device, the method comprising:
-
dispersed error encoding a data segment associated with a data object to produce a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein the data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs, wherein the set of EDSs to be distributedly stored among a plurality of storage units (SUs) within the dispersed or distributed storage network (DSN); selecting a subset of a set of SUs, wherein the subset of the set of SUs having a most favorable reliability level among the set of SUs; transmitting, via an interface of the computing device that is configured to interface and communicate with the DSN, list slice requests to the subset of the set of SUs; receiving, via the interface, list slice responses from at least some of the set of SUs; determining a highest current revision level based on list slice responses; selecting a revision level for the set of EDSs; generating a set of checked revision slice requests that includes the highest current revision level based on list slice responses and the revision level for the set of EDSs; and transmitting, via the interface, the set of checked revision slice requests to the set of SUs. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification