Accessing data in a dispersed storage network during write operations
First Claim
1. A method comprises:
- sending, by a computing device, data access requests to storage units of a dispersed storage network (DSN) regarding a set of encoded data slices, wherein one of the data access requests includes a slice name for a corresponding one of the encoded data slices of the set of encoded data slices, a transaction number, a type of request, and a current revision level of the encoded data slice;
when a transaction is pending for the set of encoded data slices, receiving, by the computing device, proposal records from the storage units, wherein the proposal records include the ordering of visible versions of the set of encoded data slices stored by the storage units;
interpreting, by the computing device, the proposal records to determine the ordering of visible versions of the set of encoded data slices stored by the storage units;
determining, by the computing device, whether a threshold number of encoded data slices of a desired version of the set of encoded data slices is visible and of priority;
when the threshold number of encoded data slices of a desired version of the set of encoded data slices is visible and of priority, determining, by the computing device, whether to proceed with the data access request; and
when the computing device determines to proceed with the data access request, sending, by the computing device, a request to proceed with the data access request to the storage units.
1 Assignment
0 Petitions
Accused Products
Abstract
A method includes sending data access requests to storage units regarding a set of encoded data slices. The method further includes, when a write transaction is pending for the set of encoded data slices, receiving proposal records from the storage units. The method further includes interpreting the proposal records to determine an ordering of visible versions of the set of encoded data slices stored by the storage units. The method further includes determining whether a threshold number of encoded data slices of a desired version of the set of encoded data slices is visible. The method further includes, when the threshold number of encoded data slices is visible, determining whether to proceed with the data access request. The method further includes, when determined to proceed with the data access request, sending a request to proceed with the data access request to the storage units.
101 Citations
20 Claims
-
1. A method comprises:
-
sending, by a computing device, data access requests to storage units of a dispersed storage network (DSN) regarding a set of encoded data slices, wherein one of the data access requests includes a slice name for a corresponding one of the encoded data slices of the set of encoded data slices, a transaction number, a type of request, and a current revision level of the encoded data slice; when a transaction is pending for the set of encoded data slices, receiving, by the computing device, proposal records from the storage units, wherein the proposal records include the ordering of visible versions of the set of encoded data slices stored by the storage units; interpreting, by the computing device, the proposal records to determine the ordering of visible versions of the set of encoded data slices stored by the storage units; determining, by the computing device, whether a threshold number of encoded data slices of a desired version of the set of encoded data slices is visible and of priority; when the threshold number of encoded data slices of a desired version of the set of encoded data slices is visible and of priority, determining, by the computing device, whether to proceed with the data access request; and when the computing device determines to proceed with the data access request, sending, by the computing device, a request to proceed with the data access request to the storage units. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing device comprises:
-
an interface for interfacing with a network; memory; and a processing module operably coupled to the interface and to the memory, wherein the processing module is operable to; send, via the interface, data access requests to storage units of a dispersed storage network (DSN) regarding a set of encoded data slices, wherein one of the data access request includes a slice name for a corresponding one of the encoded data slices of the set of encoded data slices, a transaction number, a type of request, and a current revision level of the encoded data slice; when a transaction is pending for the set of encoded data slices, receive, via the interface, proposal records from the storage units, wherein the proposal records include the ordering of visible versions of the set of encoded data slices stored by the storage units; interpret the proposal records to determine the ordering of visible versions of the set of encoded data slices stored by the storage units; determine whether a threshold number of encoded data slices of a desired version of the set of encoded data slices is visible; when the threshold number of encoded data slices of a desired version of the set of encoded data slices is visible, determine whether to proceed with the data access request; and when the computing device determines to proceed with the data access request, send, via the interface, a request to proceed with the data access request to the storage units. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A computer readable storage device comprises:
-
a first memory element that stores operational instructions that, when executed by a computing device, causes the computing device to; send data access requests to storage units of a dispersed storage network (DSN) regarding a set of encoded data slices, wherein one of the data access request includes a slice name for a corresponding one of the encoded data slices of the set of encoded data slices, a transaction number, a type of request, and a current revision level of the encoded data slice; a second memory element that stores operational instructions that, when executed by the computing device, causes the computing device to; when a transaction is pending for the set of encoded data slices, receive proposal records from the storage units, wherein the proposal records include the ordering of visible versions of the set of encoded data slices stored by the storage units; a third memory element that stores operational instructions that, when executed by the computing device, causes the computing device to; interpret the proposal records to determine the ordering of visible versions of the set of encoded data slices stored by the storage units; determine whether a threshold number of encoded data slices of a desired version of the set of encoded data slices is visible; when the threshold number of encoded data slices of a desired version of the set of encoded data slices is visible, determine whether to proceed with the data access request; and when the computing device determines to proceed with the data access request, send a request to proceed with the data access request to the storage units. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification