IP Library Granted Patent US 9,762,395
Granted Patent B2
US 9,762,395 · App. 14/636,860 · Granted Sep 12, 2017

Adjusting a number of dispersed storage units

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 9,762,395
App. No.
14/636,860
Granted
Sep 12, 2017
Kind
B2
Abstract

A method begins by a processing module of a dispersed storage network (DSN) determining that a set of storage units of the DSN will be substantially used for read operations of dispersed storage error encoded data. For the set of storage units, the method continues with the processing module determining an actual level of reliability in retrieving a decode threshold number of encoded data slices per read request of a plurality of read requests. The method continues with the processing module comparing the actual reliability to a desired level of reliability in retrieving the decode threshold number of encoded data slices per read request of the plurality of read requests. When the actual reliability exceeds the desired reliability by a reconfiguration threshold, the method continues with the processing module removing one or more storage units from the set of storage units.

Claims (97)

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:

determining that a set of storage units of the DSN will be used for read operations of dispersed storage error encoded data; and

for the set of storage units:

determining an actual reliability that indicates a level of reliability in retrieving a decode threshold number of encoded data slices per read request of a plurality of read requests;

comparing the actual reliability to a desired reliability of the set of storage units, wherein the desired reliability indicates a desired level of reliability in retrieving the decode threshold number of encoded data slices per read request of the plurality of read requests; and

when the actual reliability exceeds the desired reliability by a reconfiguration threshold, removing one or more storage units from the set of storage units.

2. The method of claim 1 , wherein the determining that the set of storage units will be used for read operations comprises one or more of:

determining that memory utilization of the set of storage units exceeds a utilization threshold;

receiving a read only command regarding the set of storage units; and

determining a number of read operations for the set of storage units is a multiple of a number of write operations for the set of storage units.

3. The method of claim 1 , wherein the removing the one or more storage units comprises:

determining that the one or more storage units has an unacceptable failure rate; and

when the one or more storage units has the unacceptable failure rate, decommissioning the one or more storage units.

4. The method of claim 1 , wherein the removing the one or more storage units comprises:

redeploying the one or more storage units to another set of storage units.

5. The method of claim 1 , wherein the removing the one or more storage units comprises:

determining a reliability rate for each of the storage units in the set of storage units;

identifying one of the storage units as having a reliability rate below a low reliability threshold and decommissioning the one of the storage units; and

identifying a second one of the storage units as having a reliability rate above a high reliability threshold and redeploying the second one of the storage units.

6. The method of claim 1 further comprises:

updating one or more of: a pillar width number, a write threshold number, or a read threshold number; and

maintaining the decode threshold number.

7. The method of claim 1 further comprises:

adjusting rebuilding parameters for the dispersed storage error encoded data.

8. The method of claim 1 , wherein the determining the actual reliability comprises one of:

establishing the actual reliability as a ratio between an original pillar width number and the decode threshold number; and

establishing the actual reliability as a ratio between an effective pillar width number and the decode threshold number.

9. The method of claim 8 , wherein the removing the one or more storage units comprises:

establishing the desired reliability as a ratio between a read threshold number and the decode threshold number; and

determining a number of storage units of the storage units to remove based on:

a difference between the read threshold number and the original pillar width number; or

a difference between the read threshold number and the effective pillar width number.

10. A non-transitory 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:

determine that a set of storage units of the DSN will be used for read operations of dispersed storage error encoded data; and

for the set of storage units:

determine an actual reliability that indicates a level of reliability in retrieving a decode threshold number of encoded data slices per read request of a plurality of read requests;

compare the actual reliability to a desired reliability of the set of storage units, wherein the desired reliability indicates a desired level of reliability in retrieving the decode threshold number of encoded data slices per read request of the plurality of read requests; and

when the actual reliability exceeds the desired reliability by a reconfiguration threshold, remove one or more storage units from the set of storage units.

11. The non-transitory computer readable storage medium of claim 10 , wherein the one or more processing modules functions to execute the operational instructions stored by the at least one memory section to cause the one or more computing devices of the DSN to determine that the set of storage units will be used for read operations by:

determining that memory utilization of the set of storage units exceeds a utilization threshold;

receiving a read only command regarding the set of storage units; and

determining a number of read operations for the set of storage units is a multiple of a number of write operations for the set of storage units.

12. The non-transitory computer readable storage medium of claim 10 , wherein the one or more processing modules functions to execute the operational instructions stored by the at least one memory section to cause the one or more computing devices of the DSN to remove the one or more storage units by:

determining that the one or more storage units has an unacceptable failure rate; and

when the one or more storage units has the unacceptable failure rate, decommissioning the one or more storage units.

13. The non-transitory computer readable storage medium of claim 10 , wherein the one or more processing modules functions to execute the operational instructions stored by the at least one memory section to cause the one or more computing devices of the DSN to remove the one or more storage units by:

redeploying the one or more storage units to another set of storage units.

14. The non-transitory computer readable storage medium of claim 10 , wherein the one or more processing modules functions to execute the operational instructions stored by the at least one memory section to cause the one or more computing devices of the DSN to remove the one or more storage units by:

determining a reliability rate for each of the storage units in the set of storage units;

identifying one of the storage units as having a reliability rate below a low reliability threshold and decommissioning the one of the storage units; and

identifying a second one of the storage units as having a reliability rate above a high reliability threshold and redeploying the second one of the storage units.

15. The non-transitory computer readable storage medium of claim 10 further comprises:

the at least one memory section stores further operational instructions that, when executed by the one or more processing modules, causes the one or more computing devices of the DSN to:

update one or more of: a pillar width number, a write threshold number, or a read threshold number; and

maintain the decode threshold number.

16. The non-transitory computer readable storage medium of claim 10 further comprises:

the at least one memory section stores further operational instructions that, when executed by the one or more processing modules, causes the one or more computing devices of the DSN to:

adjust rebuilding parameters for the dispersed storage error encoded data.

17. The non-transitory computer readable storage medium of claim 10 , wherein the one or more processing modules functions to execute the operational instructions stored by the at least one memory section to cause the one or more computing devices of the DSN to determine the actual reliability by one of:

establishing the actual reliability as a ratio between an original pillar width number and the decode threshold number; and

establishing the actual reliability as a ratio between an effective pillar width number and the decode threshold number.

18. The non-transitory computer readable storage medium of claim 17 , wherein the one or more processing modules functions to execute the operational instructions stored by the at least one memory section to cause the one or more computing devices of the DSN to remove the one or more storage units by:

establishing the desired reliability as a ratio between a read threshold number and the decode threshold number; and

determining a number of storage units of the storage units to remove based on:

a difference between the read threshold number and the original pillar width number; or

a difference between the read threshold number and the effective pillar width number.

19. A computing device of a group of computing devices of a dispersed storage network (DSN), the computing device comprises:

an interface;

a local memory; and

a processing module including a processor operably coupled to the interface and the local memory, wherein the processor functions to:

determine that a set of storage units of the DSN will be used for read operations of dispersed storage error encoded data; and

for the set of storage units:

determine an actual reliability that indicates a level of reliability in retrieving a decode threshold number of encoded data slices per read request of a plurality of read requests;

compare the actual reliability to a desired reliability of the set of storage units, wherein the desired reliability indicates a desired level of reliability in retrieving the decode threshold number of encoded data slices per read request of the plurality of read requests; and

when the actual reliability exceeds the desired reliability by a reconfiguration threshold, remove one or more storage units from the set of storage units.

20. The computing device of claim 19 , wherein the processing module functions to determine that the set of storage units will be used for the read operations by:

determining that memory utilization of the set of storage units exceeds a utilization threshold;

receiving, via the interface, a read only command regarding the set of storage units; and

determining a number of read operations for the set of storage units is a multiple of a number of write operations for the set of storage units.

21. The computing device of claim 19 , wherein the processing module functions to remove the one or more storage units by:

determining that the one or more storage units has an unacceptable failure rate; and

when the one or more storage units has the unacceptable failure rate, decommissioning the one or more storage units.

22. The computing device of claim 19 , wherein the processing module functions to remove the one or more storage units by:

redeploying the one or more storage units to another set of storage units.

23. The computing device of claim 19 , wherein the processing module functions to remove the one or more storage units by:

determining a reliability rate for each of the storage units in the set of storage units;

identifying one of the storage units as having a reliability rate below a low reliability threshold and decommissioning the one of the storage units; and

identifying a second one of the storage units as having a reliability rate above a high reliability threshold and redeploying the second one of the storage units.

24. The computing device of claim 19 , wherein the processing module further functions to:

update one or more of: a pillar width number, a write threshold number, or a read threshold number; and

maintain the decode threshold number.

25. The computing device of claim 19 , wherein the processing module further functions to:

adjust rebuilding parameters for the dispersed storage error encoded data.

26. The computing device of claim 19 , wherein the processing module functions to determine the actual reliability by one of:

establishing the actual reliability as a ratio between an original pillar width number and the decode threshold number; and

establishing the actual reliability as a ratio between an effective pillar width number and the decode threshold number.

Assignments (6)
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 9992063 AND 10334045 LISTED IN ERROR PREVIOUSLY RECORDED ON REEL 049556 FRAME 0012. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052205/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0012 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038629/0015 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2015
From: KAZI, ASIMUDDIN; RESCH, JASON K.
To: CLEVERSAFE, INC.
Reel/Frame 035529/0654 →