US2022368757A1PendingUtilityA1

Managing Error Recovery Data in a Dispersed Storage Network

Assignee: PURE STORAGE INCPriority: Apr 1, 2011Filed: Jul 29, 2022Published: Nov 17, 2022
Est. expiryApr 1, 2031(~4.7 yrs left)· nominal 20-yr term from priority
H04L 9/085H04L 67/5681H04L 9/3247G06F 11/1076H04L 9/0894H04L 2209/34H04L 67/1004H04L 9/0891H04N 21/8358H04L 67/1097
63
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method for managing error recovery data in a dispersed storage network begins with a storage network processing module receiving a write request for an encoded data slice of a set of encoded data slices, where data is dispersed in accordance with dispersed error encoding parameters to produce a set of encoded data slices. The method continues with the storage network processing module generating parity data for the encoded data slice and sending the encoded data slice to a first storage unit of a set of storage units. Finally, the method continues with the storage network processing module sending the parity data for the encoded data slice to a second storage unit of a set of storage units.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method comprises:
 receiving, by a storage network processing module, a write request for an encoded data slice of a set of encoded data slices, wherein data is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices;   generating, by the storage network processing module, parity data for the encoded data slice;   sending, by the storage network processing module, the encoded data slice to a first storage unit of a set of storage units; and   sending, by the storage network processing module, the parity data for the encoded data slice to a second storage unit of the set of storage units.   
     
     
         2 . The method of  claim 1 , further comprises:
 receiving, by a storage network processing module, a write update request for the encoded data slice;   updating, by the storage network processing module, the encoded data slice to produce an updated encoded data slice;   generating, by the storage network processing module, parity data for the updated encoded data slice; and   sending, by the storage network processing module, the parity data for the updated encoded data slice to a third storage unit of a set of storage units.   
     
     
         3 . The method of  claim 1 , further comprises:
 receiving, by a storage network processing module, a write update request for the encoded data slice;   updating, by the storage network processing module, the encoded data slice to produce an updated encoded data slice;   generating, by the storage network processing module, delta parity data for the updated encoded data slice; and   sending, by the storage network processing module, the parity data for the updated encoded data slice to a third storage unit of a set of storage units.   
     
     
         4 . The method of  claim 1 , further comprising:
 receiving, by the storage network processing module, a write request for another encoded data slice of the set of encoded data slices;   generating, by the storage network processing module, parity data for the another encoded data slice;   transmitting, by the storage network processing module, the another encoded data slice to a third storage unit of the set of storage units; and   transmitting, by the storage network processing module, the parity data for the another encoded data slice to a fourth storage unit of the set of storage units.   
     
     
         5 . The method of  claim 1 , further comprising:
 updating, by the storage network processing module, parity information of an encoded data slice of at least one other encoded data slice of the set of encoded data slices, wherein the updating is based on a corresponding one parity data to produce an encoded data slice that includes updated parity data.   
     
     
         6 . The method of  claim 1 , wherein data is segmented into a plurality of data segments before the data is dispersed error encoded, wherein each data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices. 
     
     
         7 . The method of  claim 1 , further comprises:
 receiving, by a storage network processing module, delta parity data for the encoded data slice;   retrieving, by the storage network processing module, the parity data for the encoded data slice;   generating, by the storage network processing module, based on the delta parity data and the parity data, updated parity data for the encoded data slice; and   sending, by the storage network processing module, the parity data for the updated encoded data slice to a third storage unit of a set of storage units.   
     
     
         8 . A method comprises:
 receiving, by a storage network processing module, a write request for an encoded data slice of a set of encoded data slices, wherein data is encoded in accordance with a dispersed storage error coding function to produce a set of encoded data slices;   generating, by the storage network processing module, a parity slice for each encoded data slice of the set of encoded data slices to produce a plurality of parity slices;   transmitting, by the storage network processing module, a write threshold number of encoded data slices of the set of encoded data slices to a first set of storage units; and   transmitting, by the storage network processing module, the plurality of parity slices to a second set of storage units.   
     
     
         9 . The method of  claim 8 , further comprises:
 receiving, by the storage network processing module, a write update request for an encoded data slice of the set of encoded data slices;   updating, by the storage network processing module, the encoded data slice to produce an updated encoded data slice;   generating, by the storage network processing module, an parity slice for the updated encoded data slice; and   sending, by the storage network processing module, the parity slice for the updated encoded data slice to a third set of storage units.   
     
     
         10 . The method of  claim 8 , further comprises:
 receiving, by the storage network processing module, a write update request for an encoded data slice of the set of encoded data slices;   updating, by the storage network processing module, the encoded data slice to produce an updated encoded data slice;   generating, by the storage network processing module, a delta parity slice for the updated encoded data slice; and   
       sending, by the storage network processing module, the delta parity slice for the updated encoded data slice to a third set of storage units. 
     
     
         11 . The method of  claim 8 , further comprising:
 updating, by the storage network processing module, a parity slice of an associated encoded data slice of at least one other encoded data slice of the set of encoded data slices, wherein the updating is based on a corresponding one parity slice to produce an encoded data slice that includes updated parity data.   
     
     
         12 . The method of  claim 8 , wherein data is segmented into a plurality of data segments before the data is dispersed error encoded, wherein each data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices. 
     
     
         13 . The method of  claim 8 , further comprises:
 receiving, by a storage network processing module, delta parity data for an encoded data slice of the set of encoded data slices;   retrieving, by the storage network processing module, the parity slice associated with the encoded data slice;   generating, by the storage network processing module, based on the delta parity data and the parity slice, an updated parity slice for the encoded data slice; and   sending, by the storage network processing module, the updated parity slice for the updated encoded data slice to a third set of storage units.   
     
     
         14 . A method comprises:
 receiving, by a storage unit of a storage network, a write request for an parity slice of a plurality of parity slices, wherein data is encoded in accordance with a dispersed storage error coding function to produce a set of encoded data slices, wherein a plurality of parity slices are generated from the set of encoded data slices;   storing, by the storage unit, the parity slice in a memory unit associated with the storage unit;   receiving, by the storage unit, an updated parity slice for the encoded data parity slice; and   replacing, by the storage unit, the parity slice in the memory unit with the updated encoded data parity slice.   
     
     
         15 . The method of  claim 14 , further comprises:
 receiving, by the storage unit, delta parity data for the parity slice   retrieving, by the storage unit, the parity slice;   generating, by the storage unit, based on the delta parity data and the parity slice, an updated parity slice for the encoded data slice; and   storing, by the storage unit, the parity slice in another memory unit associated with the storage unit.   
     
     
         16 . The method of  claim 14 , further comprises:
 receiving, by the storage unit, a write update request for an encoded data slice associated with the parity slice;   generating, by the storage unit, an updated parity slice for the updated encoded data slice; and   storing, by the storage unit, the updated parity slice in another memory unit associated with the storage unit.   
     
     
         17 . The method of  claim 14 , further comprises:
 receiving, by the storage unit, delta parity data for the parity slice;   retrieving the parity slice;
 generating, by the storage unit, based on the delta parity data and the parity slice, an updated parity slice; and 
 storing, by the storage unit, the updated parity slice in another memory unit associated with the storage unit. 
   
     
     
         18 . The method of  claim 14 , wherein data is segmented into a plurality of data segments before the data is dispersed error encoded, wherein each data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices.

Join the waitlist — get patent alerts

Track US2022368757A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.