IP Library Granted Patent US 10,601,918
Granted Patent B2
US 10,601,918 · App. 15/820,102 · Granted Mar 24, 2020

Rotating inactive storage units in a distributed storage network

Inventors: Jason K. Resch (Chicago, IL); Andrew G. Peake (Chicago, IL)
Assignee: PURE STORAGE, INC.
H04L67/1097G06F3/067G06F3/0608G06F3/0614G06F3/0616G06F3/0625G06F3/0634G06F3/0641G06F3/0644G06F16/2365G06F16/27G06F2003/0695Y02D10/154
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,601,918
App. No.
15/820,102
Granted
Mar 24, 2020
Kind
B2
Abstract

A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) obtaining status information from a set of distributed storage units (SUs) and determining that a plurality of the SUs are currently inactive. The method continues with the DS processing module selecting one or more inactive SUs for reactivation and issuing a request to change activation status to each. When a favorable response is received from the one more SUs, the method continues with the DDS processing module determining that encoded data slices (EDSs) stored in a first SU include errors and determining to rebuild the EDSs stored in the first SU that include one or more errors by issuing a request to change activation status to second SU that is currently inactive. Upon receiving a favorable response from the second SU, the EDSs with errors are rebuilt using EDSs from the second SU.

Claims (125)

1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:

obtaining status information from a set of distributed storage units;

determining that a plurality of distributed storage units of the set of distributed storage units are associated with an inactive status;

selecting a first distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation;

issuing a request to change activation status to the first distributed storage unit;

receiving a favorable response to the request to change activation status from the first distributed storage unit;

determining that the favorable response from the first distributed storage unit includes an indication that one or more dispersal storage encoded data slices stored in the first distributed storage unit include one or more errors;

determining to facilitate rebuilding the one or more dispersal storage encoded data slices stored in the first distributed storage unit that include one or more errors;

selecting a second distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation, wherein the second distributed storage unit includes dispersal storage encoded data slices required to rebuild the dispersal storage encoded data slices stored in the first distributed storage unit that include one or more errors;

issuing a request to change activation status to the second distributed storage unit;

receiving a favorable response to the request to change activation status;

rebuilding one or more dispersal storage encoded data slices stored in the first distributed storage unit using dispersal storage encoded data slices from the second distributed storage unit;

obtaining updated status information from the set of distributed storage units; and

based on the updated status information, determining to transition one or more distributed storage units of the set of distributed storage units to inactive status.

2. The method of claim 1 , wherein the status information includes at least one of:

an availability indicator;

an activity indicator;

a required for a rebuilding indicator;

a requiring rebuilding indicator;

one or more identifiers of DST execution units required for rebuilding;

a number of pending data access requests;

a number of pending processing requests; or

information sufficient to determine a power utilization level.

3. The method of claim 1 , wherein obtaining status information from the set of distributed storage units includes at least one of issuing a query, receiving a query response, receiving an error message, receiving an activation chain status response, and accessing a historical record.

4. The method of claim 1 , wherein the selecting a first distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation is based at least partially on a rotation scheme.

5. The method of claim 4 , wherein the rotation scheme includes at least one of a round-robin scheme, a predetermined amount of downtime and a predetermined amount of uptime.

6. The method of claim 1 , wherein the request to change activation status includes at least one of a distributed storage execution unit identifier, a requested activity status and a status transition approach.

7. The method of claim 1 , wherein the determining to transition one or more distributed storage units of the set of distributed storage units to inactive status is further based on a transition approach, wherein the transition approach is at least one of transitioning after pending tasks have been processed, transitioning immediately after rebuilding the one or more dispersal storage encoded data slices stored in the first distributed storage unit and transitioning according to a rotation scheme.

8. The method of claim 1 , wherein the determining to transition one or more distributed storage units of the set of distributed storage units to inactive status includes:

selecting the one or more distributed storage units of the set of distributed storage units to transition to inactive status based on at least one of:

a power utilization level;

a desired power utilization level;

a number of desired active units;

a desired reliability level;

a desired availability level;

distributed storage unit capabilities; or

identifying a distributed storage unit associated with a number of pending tasks that is less than a low pending tasks threshold level.

9. A dispersed storage and task (DST) processing unit comprises:

at least one module, when operable within a computing device, that causes the computing device to:

obtain status information from a set of distributed storage units;

determine that a plurality of distributed storage units of the set of distributed storage units are associated with an inactive status;

select a first distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation;

issue a request to change activation status to the first distributed storage unit;

receive a favorable response to the request to change activation status from the first distributed storage unit;

determine that the favorable response from the first distributed storage unit includes an indication that one or more dispersal storage encoded data slices stored in the first distributed storage unit include one or more errors;

determine to facilitate rebuilding the one or more dispersal storage encoded data slices stored in the first distributed storage unit that include one or more errors;

select a second distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation, wherein the second distributed storage unit includes dispersal storage encoded data slices required to rebuild the dispersal storage encoded data slices stored in the first distributed storage unit that include one or more errors;

issue a request to change activation status to the second distributed storage unit;

receive a favorable response to the request to change activation status;

rebuild one or more dispersal storage encoded data slices stored in the first distributed storage unit using dispersal storage encoded data slices from the second distributed storage unit;

obtain updated status information from the set of distributed storage units; and

based on the updated status information, determine to transition one or more distributed storage units of the set of distributed storage units to inactive status.

10. The DST processing unit of claim 9 , wherein the status information comprises at least one of:

an availability indicator;

an activity indicator;

a required for a rebuilding indicator;

a requiring rebuilding indicator;

one or more identifiers of DST execution units required for rebuilding;

a number of pending data access requests;

a number of pending processing requests; and

information sufficient to determine a power utilization level.

11. The DST processing unit of claim 9 , wherein the at least one module, when operable within a computing device, further causes the computing device to:

obtain status information from the set of distributed storage units based on at least one of:

issuing a query;

receiving a query response;

receiving an error message;

receiving an activation chain status response; and

accessing a historical record.

12. The DST processing unit of claim 9 , wherein the at least one module, when operable within a computing device, further causes the computing device to:

select a first distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation based at least partially on a rotation scheme.

13. The DST processing unit of claim 9 , wherein the at least one module, when operable within a computing device, further causes the computing device to:

determine to transition one or more distributed storage units of the set of distributed storage units to inactive status based on a transition approach, wherein the transition approach is at least one of transitioning after pending tasks have been processed, transitioning immediately after rebuilding the one or more dispersal storage encoded data slices stored in the first distributed storage unit and transitioning according to a rotation scheme.

14. The DST processing unit of claim 9 , wherein the at least one module, when operable within a computing device, further causes the computing device to:

determine to transition one or more distributed storage units of the set of distributed storage units to inactive status based on a transition approach, wherein the transition approach is at least one of transitioning after pending tasks have been processed, transitioning immediately after rebuilding the one or more dispersal storage encoded data slices stored in the first distributed storage unit and transitioning according to a rotation scheme.

15. The DST processing unit of claim 9 , wherein the at least one module, when operable within a computing device, further causes the computing device to:

select the one or more distributed storage units of the set of distributed storage units to transition to inactive status based on at least one of:

a power utilization level;

a desired power utilization level;

a number of desired active units;

a desired reliability level;

a desired availability level;

distributed storage unit capabilities; or

identifying a distributed storage unit associated with a number of pending tasks that is less than a low pending tasks threshold level.

16. A 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), causes the one or more computing devices to:

obtain status information from a set of distributed storage units;

determine that a plurality of distributed storage units of the set of distributed storage units are associated with an inactive status;

select a first distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation;

issue a request to change activation status to the first distributed storage unit;

receive a favorable response to the request to change activation status from the first distributed storage unit;

determine that the favorable response from the first distributed storage unit includes an indication that one or more dispersal storage encoded data slices stored in the first distributed storage unit include one or more errors;

determine to facilitate rebuilding the one or more dispersal storage encoded data slices stored in the first distributed storage unit that include one or more errors;

select a second distributed storage unit of the plurality of distributed storage associated with an inactive status for reactivation, wherein the second distributed storage unit includes dispersal storage encoded data slices required to rebuild the dispersal storage encoded data slices stored in the first distributed storage unit that include one or more errors;

issue a request to change activation status to the second distributed storage unit;

receive a favorable response to the request to change activation status;

rebuild one or more dispersal storage encoded data slices stored in the first distributed storage unit using dispersal storage encoded data slices from the second distributed storage unit;

obtain updated status information from the set of distributed storage units; and

based on the updated status information, determine to transition one or more distributed storage units of the set of distributed storage units to inactive status.

17. The computer readable storage medium of claim 16 , status information comprises at least one of:

an availability indicator;

an activity indicator;

a required for a rebuilding indicator;

a requiring rebuilding indicator;

one or more identifiers of DST execution units required for rebuilding;

a number of pending data access requests;

a number of pending processing requests; and

information sufficient to determine a power utilization level.

18. The computer readable storage medium of claim 16 , wherein the at least one memory section further causes the one or more computing devices to:

obtain status information from the set of distributed storage units based on at least one of:

issuing a query;

receiving a query response;

receiving an error message;

receiving an activation chain status response; and

accessing a historical record.

19. The computer readable storage medium of claim 16 , wherein the at least one memory section further causes the one or more computing devices to:

determine to transition one or more distributed storage units of the set of distributed storage units to inactive status based on a transition approach, wherein the transition approach is at least one of transitioning after pending tasks have been processed, transitioning immediately after rebuilding the one or more dispersal storage encoded data slices stored in the first distributed storage unit and transitioning according to a rotation scheme.

20. The computer readable storage medium of claim 16 , wherein the at least one memory section further causes the one or more computing devices to:

select the one or more distributed storage units of the set of distributed storage units to transition to inactive status based on at least one of:

a power utilization level;

a desired power utilization level;

a number of desired active units;

a desired reliability level;

a desired availability level;

distributed storage unit capabilities; or

identifying a distributed storage unit associated with a number of pending tasks that is less than a low pending tasks threshold level.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
CORRECTIVE ASSIGNMENT TO CORRECT THE DELETE 15/174/279 AND 15/174/596 PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 49555 FRAME: 530. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 7, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 051495/0831 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049555/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2017
From: RESCH, JASON K.; PEAKE, ANDREW G.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044200/0274 →