Patent classifications
H03M13/3761
Storage Modification Process for a Set of Encoded Data Slices
A method includes determining a storage modification process for a set of encoded data slices based on a change to the storage parameters associated with storage of data objects in a storage network, where a data segment of the data objects is dispersed storage error encoded into the set of encoded data slices in accordance with dispersed storage error encoding parameters, and where the set of encoded data slices is stored in the storage network. The method also includes executing the storage modification process such that the set of encoded data slices are stored in the storage network in accordance with the changed storage parameters.
ERROR CORRECTION CIRCUIT, MEMORY SYSTEM, AND ERROR CORRECTION METHOD
An error correction circuit, including an error correction code (ECC) encoder configured to generate parity data corresponding to main data based on a parity generation matrix, and to output a codeword including the main data and the parity data to a plurality of memory devices; and an ECC decoder configured to: read the codeword from the plurality of memory devices, generate a syndrome corresponding to the codeword based on a parity check matrix, detect an error pattern based on the syndrome, generate a plurality of estimation syndromes corresponding to the error pattern using a plurality of partial sub-matrices included in the parity check matrix, and correct an error included in the read codeword based on a result of a comparison between the syndrome and the plurality of estimation syndromes.
Failure abatement approach for a failed storage unit
A method for execution by a vault management device of a storage network includes determining a failure impact level to vaults of the storage network based on a failed storage unit within the vaults, where the vaults include a first vault that is associated with a first set of storage units and a first decode threshold number, and a second vault that is associated with a second set of storage units and a second decode threshold number, and where the failure impact level is based on the number of non-failed storage units within each of the vaults. The method continues with determining a failure abatement approach based on the failure impact level. The method continues by with facilitating the failure abatement approach.
Customized hash algorithms
A storage system determines source addresses, and destination addresses in a storage system, for network traffic. The storage system determines a hash algorithm, from a plurality of hash algorithms. The hash algorithm is to be used across the source addresses for load-balancing the network traffic to the destination addresses. The storage system determines that the hash algorithm more closely meets one or more load-balancing criteria than at least one other hash algorithm, of the plurality of hash algorithms. The storage system distributes the network traffic from the source addresses to the destination addresses in the storage system, with load-balancing according to the determined hash algorithm.
RELIABILITY CODING WITH REDUCED NETWORK TRAFFIC
This disclosure describes techniques that include implementing network-efficient data durability or data reliability coding on a network. In one example, this disclosure describes a method that includes generating a plurality of data fragments from data to enable reconstruction of the data from a subset of the plurality of data fragments; storing, across a plurality of nodes in a network, the plurality of data fragments, wherein storing the plurality of data fragments includes storing the first fragment at a first node and the second fragment at a second node; and generating, by the first node, a plurality of secondary fragments derived from the first fragment to enable reconstruction of the first fragment from a subset of the plurality of secondary fragments; and storing the plurality of secondary fragments from the first fragment across a plurality of storage devices included within the first node.
Testing A Storage Unit In A Storage Network
A method for execution by one or more computing devices of a storage network includes identifying a storage unit of a set of storage units for testing, where a data segment of data is error encoded into a set of encoded data slices that is stored in the set of storage units. The method further includes determining whether a threshold number of favorably performing other storage units of the set of storage units will be available during the testing. When the threshold number of favorably performing other storage units will be available, the method further includes initiating the testing of the storage unit and setting a status of the storage unit to unavailable. When the testing has been completed, the method further includes updating the status of the storage unit to available. The method further includes generating a testing report regarding the testing of the storage unit.
NETWORK ENCODING METHOD AND APPARATUS
Embodiments of this application provide a network encoding method and apparatus, to resolve a problem of poor data transmission performance. In embodiments of this application, a transmit end may send a packet encoded in a finite field with a low order, a finite field with an intermediate order, or a finite field with a high order. An intermediate node may determine a finite field for recoding based on an encoding computing power of the intermediate node, a finite field corresponding to an encoding coefficient carried in a received packet, network load, or the like, without depending on an encoding computing power of a transmit/receive end and a network configuration.
Optimizing routing of data across a communications network
A method begins by a first computing device determining a routing plan to route a set of encoded data slices from the first computing device to a second computing device via a plurality of network paths of a communications network. The method continues with the second computing device receiving encoded data slices via one or more network paths. When the second computing device receives a decode threshold number of encoded data slices, the method continues with the second computing device sending a message to the communications network indicating receipt of the decode threshold number of encoded data slices. The method continues with a relay unit determining whether the relay unit is in possession of a not-yet delivered encoded data slice. When the relay unit is in possession of the not-yet delivered encoded data slice, the method continues with the relay unit ceasing forwarding of the not-yet delivered encoded data slice.
Write lock conflicts in a storage network
A storage unit operates by: receiving a write slice request, wherein the write slice request includes a plurality of encoded data slices and wherein the write slice request corresponds to a range; determining whether a write lock conflict exists based on the range; issuing an unfavorable write slice response when the write lock conflict is determined to exist; and when the write lock conflict is determined to not exist: initiating local storage of the plurality of encoded data slices; and issuing a favorable write slice response.
ERASURE CODING AND REPLICATION IN STORAGE CLUSTERS
A cluster receives a request to store an object using replication or erasure coding. The cluster writes the object using erasure coding. A manifest is written that includes an indication of erasure coding and a unique identifier for each segment. The cluster returns a unique identifier of the manifest. The cluster receives a request from a client that includes a unique identifier. The cluster determines whether the object has been stored using replication or erasure coding. If using erasure coding, the method reads a manifest. The method identifies segments within the cluster using unique segment identifiers of the manifest. Using these unique segment identifiers, the method reconstructs the object. A persistent storage area of another disk is scanned to find a unique identifier of a failed disk. If using erasure coding, a missing segment previously stored on the disk is identified. The method locates other segments. Missing segments are regenerated.