Dispersed bloom filter for determining presence of an object
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;
receive a store data object request that includes a data object and an object name of the data object;
facilitate distributed storage of a set of encoded data slices (EDSs) that are based on the data object in a plurality of storage units (SUs) of the DSN based on dispersed error encoding of the data object in accordance with dispersed error encoding parameters;
apply a plurality of unique deterministic functions to the object name to generate a plurality of deterministic values, wherein each of the plurality of deterministic values ranges from 1 to a number of buckets, wherein each SU of the plurality of SUs is associated with a corresponding portion of deterministic range values based on a bucket mapping scheme;
for a deterministic value of the plurality of deterministic values, identify a corresponding SU of the plurality of SUs based on the deterministic value and the bucket mapping scheme; and
transmit an update bucket request to the corresponding SU to be used by the corresponding SU to update a state value of a bucket that is locally stored by the corresponding SU to indicate an active state based on receiving the update bucket request that corresponds to the deterministic value that is associated with the bucket that is locally stored by the corresponding SU, wherein the update bucket request includes the deterministic value.
3 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 receives a store data object request and facilitates distributed storage of the data object in storage units (SUs). the computing device applies unique deterministic functions to the object name to generate deterministic values. For a deterministic value, the computing device identifies a corresponding SU based on the deterministic value and the bucket mapping scheme. The computing device transmits an update bucket request to the corresponding SU to be used by the corresponding SU to update a state value of a bucket that is locally stored by the corresponding SU to indicate an active state.
88 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; receive a store data object request that includes a data object and an object name of the data object; facilitate distributed storage of a set of encoded data slices (EDSs) that are based on the data object in a plurality of storage units (SUs) of the DSN based on dispersed error encoding of the data object in accordance with dispersed error encoding parameters; apply a plurality of unique deterministic functions to the object name to generate a plurality of deterministic values, wherein each of the plurality of deterministic values ranges from 1 to a number of buckets, wherein each SU of the plurality of SUs is associated with a corresponding portion of deterministic range values based on a bucket mapping scheme; for a deterministic value of the plurality of deterministic values, identify a corresponding SU of the plurality of SUs based on the deterministic value and the bucket mapping scheme; and transmit an update bucket request to the corresponding SU to be used by the corresponding SU to update a state value of a bucket that is locally stored by the corresponding SU to indicate an active state based on receiving the update bucket request that corresponds to the deterministic value that is associated with the bucket that is locally stored by the corresponding SU, wherein the update bucket request includes the deterministic value. - 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; receive a store data object request that includes a data object and an object name of the data object; dispersed error encode the data object to generate a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein a 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; facilitate distributed storage of the set of EDSs that are based on the data object in a plurality of storage units (SUs) of the DSN based on dispersed error encoding of the data object in accordance with dispersed error encoding parameters; apply a plurality of unique deterministic functions to the object name to generate a plurality of deterministic values, wherein each of the plurality of deterministic values ranges from 1 to a number of buckets, wherein each SU of the plurality of SUs is associated with a corresponding portion of deterministic range values based on a bucket mapping scheme; for a deterministic value of the plurality of deterministic values, identify a corresponding SU of the plurality of SUs based on the deterministic value and the bucket mapping scheme; transmit an update bucket request to the corresponding SU to be used by the corresponding SU to update a state value of a bucket that is locally stored by the corresponding SU to indicate an active state based on receiving the update bucket request that corresponds to the deterministic value that is associated with the bucket that is locally stored by the corresponding SU, wherein the update bucket request includes the deterministic value; receive a plurality of bucket state responses from at least some of the plurality of SUs; determine that the set of EDSs that are based on the data object are stored in the plurality of SUs based on a number of the plurality of bucket state responses indicating the active state being greater than or equal to a first threshold level; and determine that the set of EDSs that are based on the data object are not stored in the plurality of SUs based on the number of the plurality of bucket state responses indicating an inactive state being greater than or equal to a second threshold level that is lower than the first threshold level. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for execution by a computing device, the method comprising:
-
receiving, via an interface of the computing device configured to interface and communicate with a dispersed or distributed storage network (DSN), a store data object request that includes a data object and an object name of the data object; facilitating distributed storage of a set of encoded data slices (EDSs) that are based on the data object in a plurality of storage units (SUs) of the DSN based on dispersed error encoding of the data object in accordance with dispersed error encoding parameters; applying a plurality of unique deterministic functions to the object name to generate a plurality of deterministic values, wherein each of the plurality of deterministic values ranges from 1 to a number of buckets, wherein each SU of the plurality of SUs is associated with a corresponding portion of deterministic range values based on a bucket mapping scheme; for a deterministic value of the plurality of deterministic values, identifying a corresponding SU of the plurality of SUs based on the deterministic value and the bucket mapping scheme; and transmitting, via the interface, an update bucket request to the corresponding SU to be used by the corresponding SU to update a state value of a bucket that is locally stored by the corresponding SU to indicate an active state based on receiving the update bucket request that corresponds to the deterministic value that is associated with the bucket that is locally stored by the corresponding SU, wherein the update bucket request includes the deterministic value. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification