Consistency based access of data in a dispersed storage network
First Claim
1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN) that stores a set of encoded data slices, wherein a data segment is dispersed storage error encoded into the set of encoded data slices in accordance with a plurality of error encoding parameters that includes a width number and a decode threshold number, wherein the set of encoded data slices includes a width number of encoded data slices in accordance with the width number of the plurality of error encoding parameters, and wherein the data segment is recoverable from a decode threshold number of encoded data slices of the set of encoded data slices in accordance with the decode threshold number of the plurality of error encoding parameters, the method comprises:
- sending, by a requesting entity, a normal data segment access request to first and second groups of storage units of the DSN, wherein each of the first and second groups of storage units includes a processor and a memory and is allocated a unique subset of encoded data slices of the set of encoded data slices, wherein each unique subset of encoded data slices includes at least the decode threshold number of encoded data slices, and wherein the normal data segment access request is regarding a first number of encoded data slices of the set of encoded data slices that exceeds the at least the decode threshold number of encoded data slices in each of the unique subsets of encoded data slices;
detecting that the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available;
sending, by the requesting entity, a group failure data segment access request to the first group of storage units in response to detecting that the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available, wherein the group failure data segment access request is regarding a second number of encoded data slices of the set of encoded data slices that is equal to or less than the at least the decode threshold number of encoded data slices in each of the unique subsets of encoded data slices and is equal to or greater than the decode threshold number;
detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available;
sending, by the requesting entity, a re-integration data segment write request to the first and second groups of storage units in response to detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available, wherein the re-integration data segment write request is regarding the at least the decode threshold number of encoded data slices; and
sending, by the requesting entity, a re-integration data segment read request to the first group of storage units in response to detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available, wherein the re-integration data segment read request is regarding the second number of encoded data slices.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a requesting entity sending a normal data segment access request to first and second groups of storage units of a dispersed storage network. The method continues with the requesting entity sending a group failure data segment access request to the first group of storage units when the second group of storage units has less than a decode threshold number of encoded data slices of a set of encoded data slices available. When the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices is available, the method continues with the requesting entity sending a re-integration data segment write request to the first and second groups of storage units and sending a re-integration data segment read request to the first group of storage units.
-
Citations
14 Claims
-
1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN) that stores a set of encoded data slices, wherein a data segment is dispersed storage error encoded into the set of encoded data slices in accordance with a plurality of error encoding parameters that includes a width number and a decode threshold number, wherein the set of encoded data slices includes a width number of encoded data slices in accordance with the width number of the plurality of error encoding parameters, and wherein the data segment is recoverable from a decode threshold number of encoded data slices of the set of encoded data slices in accordance with the decode threshold number of the plurality of error encoding parameters, the method comprises:
-
sending, by a requesting entity, a normal data segment access request to first and second groups of storage units of the DSN, wherein each of the first and second groups of storage units includes a processor and a memory and is allocated a unique subset of encoded data slices of the set of encoded data slices, wherein each unique subset of encoded data slices includes at least the decode threshold number of encoded data slices, and wherein the normal data segment access request is regarding a first number of encoded data slices of the set of encoded data slices that exceeds the at least the decode threshold number of encoded data slices in each of the unique subsets of encoded data slices; detecting that the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available; sending, by the requesting entity, a group failure data segment access request to the first group of storage units in response to detecting that the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available, wherein the group failure data segment access request is regarding a second number of encoded data slices of the set of encoded data slices that is equal to or less than the at least the decode threshold number of encoded data slices in each of the unique subsets of encoded data slices and is equal to or greater than the decode threshold number; detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available; sending, by the requesting entity, a re-integration data segment write request to the first and second groups of storage units in response to detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available, wherein the re-integration data segment write request is regarding the at least the decode threshold number of encoded data slices; and sending, by the requesting entity, a re-integration data segment read request to the first group of storage units in response to detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available, wherein the re-integration data segment read request is regarding the second number of encoded data slices. - View Dependent Claims (2, 3, 4, 5, 6, 7)
determining, by the requesting entity, data consistency of the first and second encoded data slices.
-
-
4. The method of claim 1 further comprises:
when the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available and the group failure data segment access request is a read request, establishing the second number as a read threshold number.
-
5. The method of claim 1 further comprises:
when the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available and the group failure data segment access request is a write request, establishing the second number as a write threshold number.
-
6. The method of claim 1 further comprises:
-
when the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available, determining whether at least one encoded data slice of the corresponding unique subset of encoded data slices requires rebuilding; when the at least one encoded data slice of the corresponding unique subset of encoded data slices requires rebuilding, rebuilding the at least one encoded data slice; and returning to use of the normal data segment access request.
-
-
7. The method of claim 1 further comprises:
storing, by a plurality of groups of storage units, the set of encoded data slices, wherein the width number is equal to or greater than n times the number of groups in the plurality of groups, wherein the plurality of groups of storage units includes the first and second groups of storage units, wherein each of the plurality of groups of storage units is allocated a unique subset of encoded data slices of the set of encoded data slices.
-
8. A non-transitory computer readable storage medium comprises:
-
at least one memory section that stores operational instructions that, when executed by one or more processing modules of one or more computing devices of a dispersed storage network (DSN) that stores a set of encoded data slices, wherein a data segment is dispersed storage error encoded into the set of encoded data slices in accordance with a plurality of error encoding parameters that includes a width number and a decode threshold number, wherein the set of encoded data slices includes a width number of encoded data slices in accordance with the width number of the plurality of error encoding parameters, and wherein the data segment is recoverable from a decode threshold number of encoded data slices of the set of encoded data slices in accordance with the decode threshold number of the plurality of error encoding parameters, causes the one or more computing devices to; send, by a requesting entity, a normal data segment access request to first and second groups of storage units of the DSN, wherein each of the first and second groups of storage units includes a processor and a memory and is allocated a unique subset of encoded data slices of the set of encoded data slices, wherein each unique subset of encoded data slices includes at least the decode threshold number of encoded data slices, and wherein the normal data segment access request is regarding a first number of encoded data slices of the set of encoded data slices that exceeds the at least the decode threshold number of encoded data slices in each of the unique subsets of encoded data slices; detect that the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available; send, by the requesting entity, a group failure data segment access request to the first group of storage units in response to detecting that the second group of storage units has less than the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices available, wherein the group failure data segment access request is regarding a second number of encoded data slices of the set of encoded data slices that is equal to or less than the at least the decode threshold number of encoded data slices in each of the unique subsets of encoded data slices and is equal to or greater than the decode threshold number; detect that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available; send, by the requesting entity, a re-integration data segment write request to the first and second groups of storage units in response to detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available, wherein the re-integration data segment write request is regarding the at least the decode threshold number of encoded data slices; and send, by the requesting entity, a re-integration data segment read request to the first group of storage units in response to detecting that the second group of storage units has reestablished that the at least the decode threshold number of encoded data slices of the corresponding unique subset of encoded data slices is available, wherein the re-integration data segment read request is regarding the second number of encoded data slices. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification