IP Library Granted Patent US 8,281,182
Granted Patent B2
US 8,281,182 · App. 12/779,658 · Granted Oct 2, 2012

Dispersed storage unit selection

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 8,281,182
App. No.
12/779,658
Granted
Oct 2, 2012
Kind
B2
Abstract

A dispersed storage device for use within a dispersed storage network operates to select a set of dispersed storage units for storage of a data object by slicing an encoded data segment of a data object into error coded data slices, determining slice metadata for the error coded data slices, determining memory characteristics of dispersed storage units capable of storing the error coded data slices and selecting the set of dispersed storage units for storing the error coded data slices based on the slice metadata and the memory characteristics.

Claims (49)

1. A dispersed storage device for use within a dispersed storage network, comprising:

an interface; and

a processing module operable to:

slice an encoded data segment of a data object into error coded data slices;

determine slice metadata for the error coded data slices;

determine memory characteristics of dispersed storage units capable of storing the error coded data slices;

select a set of dispersed storage units for storing the error coded data slices based on the slice metadata and the memory characteristics; and

output, via the interface, the error coded data slices to corresponding ones of the set of dispersed storage units;

wherein the processing module is further operable to determine storage requirements from the slice metadata and to compare the storage requirements to the memory characteristics to select the set of dispersed storage units.

2. The dispersed storage device of claim 1 , wherein the slice metadata comprises one or more of a file type, file size, priority, security index, user group affiliation, estimated storage time and estimated time between retrievals.

3. The dispersed storage device of claim 1 , wherein the memory characteristics comprise one or more of a geographical location, proximity to other dispersed storage units, memory model, memory type, total capacity, available capacity, access speed, error history, estimated mean time between failures, actual mean time between failures and hours of operation.

4. The dispersed storage device of claim 1 , wherein the dispersed storage units are organized into memory systems such that each of the memory systems includes at least one of the dispersed storage units and the memory systems are geographically separated from one another.

5. The dispersed storage device of claim 4 , wherein:

a number of the error coded data slices of the data segment corresponds to a number of pillars for storing the data object; and

the storage requirements comprise a first security restriction that requires the number of pillars stored in a single one of the memory systems compare favorably to a pillar threshold.

6. The dispersed storage device of claim 5 , wherein the storage requirements comprise a second security restriction that requires that a number of the error coded data slices stored in a single one of the dispersed storage units compare favorably with a slice threshold.

7. The dispersed storage device of claim 1 , wherein the storage requirements comprise a fast retrieval characteristic that requires a retrieval time of the error coded data slices from each dispersed storage unit within the set of dispersed storage units compare favorably to a retrieval time threshold.

8. The dispersed storage device of claim 1 , wherein the storage requirements comprise a first reliability characteristic that requires different memory models for at least two of the set of dispersed storage units.

9. The dispersed storage device of claim 1 , wherein the storage requirements comprise a reliability characteristic that requires each dispersed storage unit within the set of dispersed storage units to have an error history that compares favorably to an error threshold.

10. The dispersed storage device of claim 1 , wherein the storage requirements comprise a capacity characteristic that requires each dispersed storage unit within the set of dispersed storage units to have a capacity substantially the same as other dispersed storage units within the set of dispersed storage units.

11. The dispersed storage device of claim 1 , wherein the storage requirements comprise an availability characteristic that requires each dispersed storage unit within the set of dispersed storage units to have an available capacity that compares favorably to a threshold amount.

12. The dispersed storage device of claim 1 , wherein the storage requirements comprise a diversity characteristic that requires the set of dispersed storage units to include dispersed storage units with at least one of diverse memory models, diverse memory types, diverse error histories, diverse mean times between failures or diverse hours of operation.

13. A method for selecting dispersed storage units within a dispersed storage network, comprising:

slicing a data segment of a data object into error coded data slices;

determining slice metadata for the error coded data slices;

determining memory characteristics of dispersed storage units capable of storing the error coded data slices;

selecting a set of dispersed storage units for storing the error coded data slices based on the slice metadata and the memory characteristics, wherein the selecting further comprises:

determining storage requirements from the slice metadata; and

comparing the storage requirements to the memory characteristics to select the set of dispersed storage units; and

outputting, via the interface, the error coded data slices to corresponding ones of the set of dispersed storage units.

14. The method of claim 13 , wherein:

the dispersed storage units are organized into memory systems such that each of the memory systems includes at least one of the dispersed storage units and the memory systems are geographically separated from one another;

a number of the error coded data slices of the data segment corresponds to a number of pillars for storing the data object; and

the determining the storage requirements further comprises:

determining a first security restriction that requires the number of pillars stored in a single one of the memory systems compare favorably to a pillar threshold.

15. The method of claim 14 , wherein the determining the storage requirements further comprises:

determining a second security restriction that requires that a number of the error coded data slices stored in a single one of the dispersed storage units compare favorably with a slice threshold.

16. The method of claim 13 , wherein the determining the storage requirements further comprises:

determining a fast retrieval characteristic that requires a retrieval time of the error coded data slices from each dispersed storage unit within the set of dispersed storage units compare favorably to a retrieval time threshold.

17. The method of claim 13 , wherein the determining the storage requirements comprises:

determining a reliability characteristic that requires different memory models for at least two of the set of dispersed storage units.

18. The method of claim 13 , wherein the determining the storage requirements comprises:

determining a reliability characteristic that requires each dispersed storage unit within the set of dispersed storage units to have an error history that compares favorably to an error threshold.

19. The method of claim 13 , wherein the determining the storage requirements further comprises:

determining a capacity characteristic that requires each dispersed storage unit within the set of dispersed storage units to have a capacity substantially the same as other dispersed storage units within the set of dispersed storage units.

20. The method of claim 13 , wherein the determining the storage requirements further comprises:

determining an availability characteristic that requires each dispersed storage unit within the set of dispersed storage units to have an available capacity that compares favorably to a threshold amount.

21. The method of claim 13 , wherein the determining the storage requirements further comprises:

determining a diversity characteristic that requires the set of dispersed storage units to include dispersed storage units with at least one of diverse memory models, diverse memory types, diverse error histories, diverse mean times between failures or diverse hours of operation.

Assignments (8)
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 13, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038687/0596 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Aug 20, 2013
From: SILICON VALLEY BANK
To: CLEVERSAFE, INC.
Reel/Frame 031058/0255 →
FIRST AMENDMENT TO IPSA Recorded Dec 31, 2012
From: CLEVERSAFE, INC.
To: SILICON VALLEY BANK
Reel/Frame 029555/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2010
From: RESCH, JASON K.; GLADWIN, S. CHRISTOPHER
To: CLEVERSAFE, INC.
Reel/Frame 024383/0314 →