IP Library Granted Patent US 10,996,895
Granted Patent B1
US 10,996,895 · App. 16/554,939 · Granted May 4, 2021

Selecting a subset of storage units in a dispersed storage network

Inventor: Jason K. Resch (Chicago, IL)
Assignee: PURE STORAGE, INC.
G06F3/0659G06F3/064G06F3/0619G06F3/0647G06F3/0653G06F3/0689G06F11/1076
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,996,895
App. No.
16/554,939
Granted
May 4, 2021
Kind
B1
Abstract

A method for execution by a computing device of a dispersed storage network includes obtaining resource information for a subset of storage units of a storage unit pool. W available storage units of the storage unit pool are identified in response to receiving a store data request. W choose S combinations of selecting S number of storage units of the W available storage units are identified. A plurality of rating levels is calculated based on the resource information, where each of the plurality of rating levels are assigned to a corresponding combination of the W choose S combinations. One combination of the W choose S combinations is selected based on the plurality of rating levels. Storage of data of the store data request is facilitated utilizing the S number of storage units of the selected one combination.

Claims (46)

1. A method for execution by a computing device that includes a processor, the method comprises:

receiving a store data request;

identifying a set of available storage units of a storage unit pool;

determining a selected subset of the set of available storage units, having a number of storage units, by:

calculating a plurality of rating levels based on resource information corresponding to the set of available storage units, wherein each of the plurality of rating levels are assigned to a corresponding combination of a set of combinations, wherein each combination of the set of combinations includes a subset of set of available storage units that includes the number of storage units; and

selecting one combination of the set of combinations based on the plurality of rating levels as the selected subset of the set of available storage units; and

facilitating storage of data of the store data request utilizing the selected subset of the set of available storage units.

2. The method of claim 1 , wherein the resource information is obtained by interpreting a performance log.

3. The method of claim 1 , wherein identifying the set of available storage units is based on the resource information.

4. The method of claim 1 , wherein calculating the plurality of rating levels is based on access performance metrics and storage availability metrics of the resource information.

5. The method of claim 1 , wherein selecting the one combination includes identifying a highest rated combination of the set of combinations.

6. The method of claim 1 , wherein selecting the one combination includes selecting from a plurality of highest rated combinations utilizing one of: a random selection or a round-robin selection.

7. The method of claim 1 , wherein facilitating storage of the data includes:

dispersed storage error encoding the data to produce at least one set of encoded data slices; and

storing the at least one set of encoded data slices in the selected subset of the set of available storage units.

8. A processing system of a computing device comprises:

processing circuitry configured to execute operational instructions that cause the processing circuitry to perform operations that include:

receiving a store data request;

identifying a set of available storage units of a storage unit pool;

determining a selected subset of the set of available storage units, having a number of storage units, by:

calculating a plurality of rating levels based on resource information corresponding to the set of available storage units, wherein each of the plurality of rating levels are assigned to a corresponding combination of a set of combinations, wherein each combination of the set of combinations includes a subset of set of available storage units that includes the number of storage units; and

selecting one combination of the set of combinations based on the plurality of rating levels as the selected subset of the set of available storage units; and

facilitating storage of data of the store data request utilizing the selected subset of the set of available storage units.

9. The processing system of claim 8 , wherein the resource information is obtained by interpreting a performance log.

10. The processing system of claim 8 , wherein identifying the set of available storage units is based on the resource information.

11. The processing system of claim 8 , wherein calculating the plurality of rating levels is based on access performance metrics and storage availability metrics of the resource information.

12. The processing system of claim 8 , wherein selecting the one combination includes identifying a highest rated combination of the set of combinations.

13. The processing system of claim 8 , wherein selecting the one combination includes selecting from a plurality of highest rated combinations utilizing one of: a random selection or a round-robin selection.

14. The processing system of claim 8 , wherein facilitating storage of the data includes:

dispersed storage error encoding the data to produce at least one set of encoded data slices; and

storing the at least one set of encoded data slices in the selected subset of the set of available storage units.

15. A computer readable storage medium comprises:

at least one memory section that stores operational instructions that, when executed by a processing system of a dispersed storage network (DSN) that includes a processor and a memory, causes the processing system to perform operations that include:

receiving a store data request;

identifying a set of available storage units of a storage unit pool;

determining a selected subset of the set of available storage units, having a number of storage units, by:

calculating a plurality of rating levels based on resource information corresponding to the set of available storage units, wherein each of the plurality of rating levels are assigned to a corresponding combination of a set of combinations, wherein each combination of the set of combinations includes a subset of set of available storage units that includes the number of storage units; and

selecting one combination of the set of combinations based on the plurality of rating levels as the selected subset of the set of available storage units; and

facilitating storage of data of the store data request utilizing the selected subset of the set of available storage units.

16. The computer readable storage medium of claim 15 , wherein identifying the set of available storage units is based on the resource information.

17. The computer readable storage medium of claim 15 , wherein calculating the plurality of rating levels is based on access performance metrics and storage availability metrics of the resource information.

18. The computer readable storage medium of claim 15 , wherein selecting the one combination includes identifying a highest rated combination of the set of combinations.

19. The computer readable storage medium of claim 15 , wherein selecting the one combination includes selecting from a plurality of highest rated combinations utilizing one of: a random selection or a round-robin selection.

20. The computer readable storage medium of claim 15 , wherein facilitating storage of the data includes:

dispersed storage error encoding the data to produce at least one set of encoded data slices; and

storing the at least one set of encoded data slices in the selected subset of the set of available storage units.

Assignments (4)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2019
From: RESCH, JASON K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 050219/0426 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 050236/0079 →