Method and system for processing data access requests during data transfers
First Claim
1. A method for execution by a storage unit of a dispersed storage network (DSN), the method comprises:
- transitioning storage of one or more groups of encoded data slices from storage based on a previous version of a distributed agreement protocol to storage based on a new version of the distributed agreement protocol, wherein the transitioning includes executing the new version of the distributed agreement protocol to identify the one or more groups of encoded data slices, wherein the distributed agreement protocol includes;
a plurality of functions operable to generate a plurality of scoring values based on a plurality of storage unit identifiers, a plurality of corresponding storage unit weights, and one or more asset identifiers corresponding to the one or more groups of encoded data slices; and
a ranking function that processes the plurality of scoring values to identify at least one another storage unit to which one or more encoded data slices of the one or more groups of encoded data slices are to be transferred; and
while transitioning storage of the one or more groups of encoded data slices;
receiving, from a requesting computing device, a data access request regarding an encoded data slice of the one or more groups of encoded data slices;
determining whether the encoded data slice has been transferred as a result of the transitioning;
when the storage unit is currently storing the encoded data slice, processing the data access request; and
when the storage unit is not currently storing the encoded data slice, functioning as a proxy for the requesting computing device to fulfill the data access request.
4 Assignments
0 Petitions
Accused Products
Abstract
A method for execution by a storage unit of a dispersed storage network, the method comprises transitioning storage of one or more groups of encoded data slices from storage based on a previous version of a distributed agreement protocol to storage based on a new version of the distributed agreement protocol. While transitioning storage of the one or more groups of encoded data slices, receiving, from a requesting computing device, a data access request regarding an encoded data slice of the one or more groups of encoded data slices. Determining whether the encoded data slice has been transferred as a result of the transitioning. When the storage unit is currently storing the encoded data slice, processing the data access request. When the storage unit is not currently storing the encoded data slice, functioning as a proxy for the requesting computing device to fulfill the data access request.
-
Citations
14 Claims
-
1. A method for execution by a storage unit of a dispersed storage network (DSN), the method comprises:
-
transitioning storage of one or more groups of encoded data slices from storage based on a previous version of a distributed agreement protocol to storage based on a new version of the distributed agreement protocol, wherein the transitioning includes executing the new version of the distributed agreement protocol to identify the one or more groups of encoded data slices, wherein the distributed agreement protocol includes;
a plurality of functions operable to generate a plurality of scoring values based on a plurality of storage unit identifiers, a plurality of corresponding storage unit weights, and one or more asset identifiers corresponding to the one or more groups of encoded data slices; and
a ranking function that processes the plurality of scoring values to identify at least one another storage unit to which one or more encoded data slices of the one or more groups of encoded data slices are to be transferred; andwhile transitioning storage of the one or more groups of encoded data slices; receiving, from a requesting computing device, a data access request regarding an encoded data slice of the one or more groups of encoded data slices; determining whether the encoded data slice has been transferred as a result of the transitioning; when the storage unit is currently storing the encoded data slice, processing the data access request; and when the storage unit is not currently storing the encoded data slice, functioning as a proxy for the requesting computing device to fulfill the data access request. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A storage unit comprises:
-
an interface; a memory; and a processing module operable to; transition storage of one or more groups of encoded data slices from storage based on a previous version of a distributed agreement protocol to storage based on a new version of the distributed agreement protocol; and while transitioning storage of the one or more groups of encoded data slices; receive, from a requesting computing device, a data access request regarding an encoded data slice of the one or more groups of encoded data slices; determining whether the encoded data slice has been transferred as a result of the transitioning; when the storage unit is currently storing the encoded data slice, process the data access request; and when the storage unit is not currently storing the encoded data slice, function as a proxy for the requesting computing device to fulfill the data access request, wherein the function as a proxy includes receiving the data access request based on the previous version of the distributed agreement protocol, wherein the encoded data slice is of a first group of encoded data slices and wherein the first group of encoded data slices is stored by another storage unit, forwarding, by the storage unit, the data access request to the other storage unit, receiving, by the storage unit, an access response from the other storage unit, wherein the access response includes the encoded data slice, and sending, by the storage unit, the access response to the requesting computing device. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computer readable memory device comprises:
-
a first memory element that stores operational instructions that, when executed by a storage unit, causes the storage unit to; transition storage of one or more groups of encoded data slices from storage based on a previous version of a distributed agreement protocol to storage based on a new version of the distributed agreement protocol; and a second memory element that stores operational instructions that, when executed by a storage unit, causes the storage unit to; execute the new version of the distributed agreement protocol to identify the one or more groups of encoded data slices, wherein the distributed agreement protocol includes; a plurality of functions operable to generate a plurality of scoring values based on a plurality of storage unit identifiers, a plurality of corresponding storage unit weights, and one or more asset identifiers corresponding to the one or more groups of encoded data slices; and a ranking function that processes the plurality of scoring values to identify at least one another storage unit to which one or more encoded data slices of the one or more groups of encoded data slices are to be transferred; and while transitioning storage of the one or more groups of encoded data slices; receive, from a requesting computing device, a data access request regarding an encoded data slice of the one or more groups of encoded data slices; determine whether the encoded data slice has been transferred as a result of the transitioning; when the storage unit is currently storing the encoded data slice, process the data access request; and when the storage unit is not currently storing the encoded data slice, function as a proxy for the requesting computing device to fulfill the data access request. - View Dependent Claims (12, 13, 14)
-
Specification