Reliability based data allocation and recovery in a storage system
US-9477553-B1 · Oct 25, 2016 · US
US10409492B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10409492-B2 |
| Application number | US-201816139057-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 23, 2018 |
| Priority date | Feb 9, 2017 |
| Publication date | Sep 10, 2019 |
| Grant date | Sep 10, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method begins by a storage unit of a dispersed storage network (DSN) receiving a lock request from a distributed storage (DS) processing unit associated with the DSN for an encoded data slice (EDS) of a set of encoded data slices (EDSs). The method continues with the storage unit determining whether a lock request has previously been granted for the EDS and when a lock request has not been previously granted for a slice name associated with the EDS, transmitting, by the storage unit, a favorable lock request response to the DS processing unit and locking the slice name associated with the EDS. The method continues with storage unit receiving a persist message indicating that the DS processing unit has received a write threshold number of favorable lock request responses for the set of EDSs.
Opening claim text (preview).
What is claimed is: 1. A storage unit (SU) 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 lock request from a distributed storage (DS) processing unit associated with the DSN, wherein the lock request is for an encoded data slice (EDS) of a set of encoded data slices (EDSs) and wherein the EDS is to be updated; determine whether a lock request has previously been granted for the EDS; in response to a determination that a lock request has not been previously granted for a slice name associated with the EDS, transmit a favorable lock request response to the DS processing unit, wherein a favorable lock request response is a lock request response indicating that a lock request has not been previously granted; lock the slice name associated with the EDS, and receive a persist message from the DS processing unit, wherein the persist message includes information sufficient to determine that the DS processing unit has received a write threshold number of favorable lock request responses from storage units in the DSN for the set of EDSs. 2. The storage unit of claim 1 , wherein the lock request includes the slice name for the EDS. 3. The storage unit of claim 1 , wherein the lock request includes a transaction identifier. 4. The storage unit of claim 3 , wherein the transaction identifier is common to all EDSs of the set of EDSs. 5. The storage unit of claim 1 , wherein the processing circuitry is further configured to execute the operational instructions to: receive a rollback message from the DS processing unit; and in response to the rollback message, determine to unlock the slice name for the EDS. 6. The storage unit of claim 1 , wherein the processing circuitry is further configured to execute the operational instructions to: update the EDS; and transmit a persist message response to the DS processing unit, wherein the persist message includes information sufficient to indicate that the EDS has been successfully updated. 7. The storage unit of claim 1 , wherein the processing circuitry is further configured to execute the operational instructions to: determine whether to one or more other storage units storing one or more other EDSs of the set of EDSs has previously granted a lock request for the slice name associated with the EDS; in response to a determination that one or more other storage units storing one or more other EDSs of the set of EDSs has previously granted a lock request for slice name associated with the EDS, transmit a message to the DS processing unit, wherein the message to the DS processing unit includes information sufficient to indicate that one or more other storage units storing one or more other EDSs of the set of EDSs has previously granted a lock request for slice name associated with the EDS to the DS processing unit. 8. The storage unit of claim 1 , wherein the processing circuitry is further configured to execute the operational instructions to: receive a message from the distributed processing unit that a lock request that has previously been granted should be released, wherein the message that the distributed processing unit that the lock request that has previously been granted should be released is based on the distributed processing unit not being granted a lock request by a write threshold number of distributed storage units. 9. A method for execution by a storage unit of a dispersed storage network (DSN), the method comprises: receiving, by the storage unit, a lock request from a distributed storage (DS) processing unit associated with the DSN, wherein the lock request is for an encoded data slice (EDS) of a set of encoded data slices (EDSs) and wherein the EDS is to be updated; determining, by the storage unit, whether a lock request has previously been granted for the EDS; in response to a determination that a lock request has not been previously granted for a slice name associated with the EDS, transmitting, by the storage unit, a favorable lock request response to the DS processing unit, wherein a favorable lock request response is a lock request response indicating that a lock request has not been previously granted; locking the slice name associated with the EDS; and receiving, by the storage unit, a persist message from the DS processing unit, wherein the persist message includes the EDS, wherein the persist information includes information sufficient to determine that the DS processing unit has received a write threshold number of favorable lock request responses from storage units in the DSN for the set of EDSs. 10. The method of claim 9 , wherein the lock request includes the slice name for the EDS. 11. The method of claim 9 , wherein the lock request includes a transaction identifier. 12. The method of claim 11 , wherein the transaction identifier is common to all EDSs of the set of EDSs. 13. The method of claim 9 , further comprising: receiving a rollback message from the DS processing unit; and in response to the rollback message, determining to unlock the slice name for the EDS. 14. The method of claim 9 , further comprising: updating the EDS; and transmitting, by the storage unit, a persist message response to the DS processing unit, wherein the persist message includes information sufficient to indicate that the EDS has been successfully updated. 15. The method of claim 9 , further comprising: determining, by the storage unit, whether one or more other storage units storing one or more other EDSs of the set of EDSs has previously granted a lock request for the slice name associated with the EDS; in response to a determination that one or more other storage units storing one or more other EDSs of the set of EDSs has previously granted a lock request for slice name associated with the EDS, transmitting a message to the DS processing unit, wherein the message to the DS processing unit includes information sufficient to indicate that one or more other storage units storing one or more other EDSs of the set of EDSs has previously granted a lock request for slice name associated with the EDS to the DS processing unit. 16. The method of claim 9 , further comprising: receiving, by the storage unit, a message from the distributed processing unit that a lock request that has previously been granted should be released, wherein the message that the distributed processing unit that the lock request that has previously been granted should be released is based on the distributed processing unit not being granted a lock request by a write threshold number of distributed storage units. 17. A computer readable memory comprises: a memory element that stores operational instructions that, when executed by a computing device of a dispersed storage network (DSN), causes the computing device to: receive a lock request from a distributed storage (DS) processing unit associated with the DSN, wherein the lock request is for an encoded data slice (EDS) of a set of encoded data slices (EDSs) and wherein the EDS is to be updated; determine whether a lock request has previously been granted for the EDS; in response to a determination that a lock request has not been previously granted for a slice name associated with the EDS, transmit a favorable lock request response to the DS processing unit, wherein a favorable lock request
Reed-Solomon codes · CPC title
using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
in relation to access · CPC title
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.