IP Library Patent Application 12942721
Patent Application
App. No. 12/942,721

SELECTING STORAGE FACILITIES IN A PLURALITY OF DISPERSED STORAGE NETWORKS

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 None
App. No.
12/942,721
Abstract

A method begins by a processing module receiving a data storage request and accessing a file directory to identify dispersed storage network (DSN) systems. The method continues with the processing module identifying dispersed storage (DS) units to produce identified DS units for each of the DSN systems and selecting one of the DSN systems to produce a selected DSN system. The method continues with the processing module selecting a set of DS units from the identified DS units of the selected DSN system to produce selected DS units, wherein the selected DS units store a set of encoded data slices. The method continues with the processing module updating the file directory to include an identity of the selected DS units and an identity of the set of encoded data slices.

Claims (110)

1 . A method comprises:

receiving a data storage request;

accessing a file directory to identify dispersed storage network (DSN) systems;

for each of the DSN systems, identifying dispersed storage (DS) units based on a desired dispersed error coding performance level to produce identified DS units;

selecting one of the DSN systems based on a collective dispersed error coding performance level of the identified DS units of the one of the DSN systems to produce a selected DSN system;

selecting a set of DS units from the identified DS units of the selected DSN system based on the desired dispersed error coding performance level to produce selected DS units, wherein the selected DS units store a set of encoded data slices; and

updating the file directory to include an identity of the selected DS units and an identity of the set of encoded data slices.

2 . The method of claim 1 , wherein the file directory comprises:

a listing of DSN systems;

a root file directory identifier;

one or more intermediate file directory identifiers;

a file name or data block identifier;

a DSN system identifier;

DS unit identifiers; and

slice names.

3 . The method of claim 1 , wherein the updating the file directory comprises:

creating a file name associated with the set of encoded data slices;

linking the file name to one or more intermediate file directory folders;

linking the one or more intermediate file directories folders to a root directory folder;

linking the file name to a DSN identifier of the selected DSN system;

linking the file name to slice names of the set of encoded data slices; and

linking the slice names to DS unit identifiers of the selected DS units.

4 . The method of claim 3 further comprises:

creating at least one of the one or more intermediate file directory folders.

5 . The method of claim 1 , wherein the desired dispersed error coding performance level comprises at least one of:

an indication of dispersed error coding storage requirements;

an indication of historical dispersed error coding storage performance;

an indication of available storage;

an indication of processing capabilities;

an indication of latency performance; and

an indication of bandwidth performance.

6 . A method comprises:

receiving a data storage request for a particular type of data storage;

identifying a dispersed storage network (DSN) system from a plurality of DSN systems based on the particular type of data storage to produce an identified DSN system;

identifying dispersed storage (DS) units within the identified DSN system based on the particular type of data storage to produce identified DS units;

selecting a set of DS units from the identified DS units of the identified DSN system based on the particular type of data storage to produce selected DS units, wherein the selected DS units store a set of encoded data slices; and

updating the file directory to include an identity of the selected DS units and an identity of the set of encoded data slices.

7 . The method of claim 6 , wherein the particular type of data storage comprises at least one of:

a data type indication;

a weighted storage requirement;

a data retrieval latency indication;

a data bandwidth indication;

dispersed error coding storage function parameters; and

a date usage indication.

8 . The method of claim 6 , wherein the updating the file directory comprises:

creating a file name associated with the set of encoded data slices;

linking the file name to one or more intermediate file directory folders;

linking the one or more intermediate file directories folders to a root directory folder;

linking the file name to a DSN identifier of the identified DSN system;

linking the file name to slice names of the set of encoded data slices; and

linking the slice names to DS unit identifiers of the selected DS units.

9 . The method of claim 8 further comprises:

creating at least one of the one or more intermediate file directory folders.

10 . A computer comprises:

an interface; and

a processing module operable to:

receive, via the interface, a data storage request;

access a file directory to identify dispersed storage network (DSN) systems;

identify dispersed storage (DS) units based on a desired dispersed error coding performance level to produce identified DS units for each of the DSN systems;

select one of the DSN systems based on a collective dispersed error coding performance level of the identified DS units of the one of the DSN systems to produce a selected DSN system;

select a set of DS units from the identified DS units of the selected DSN system based on the desired dispersed error coding performance level to produce selected DS units, wherein the selected DS units store a set of encoded data slices; and

update the file directory to include an identity of the selected DS units and an identity of the set of encoded data slices.

11 . The computer of claim 10 , wherein the file directory comprises:

a listing of DSN systems;

a root file directory identifier;

one or more intermediate file directory identifiers;

a file name or data block identifier;

a DSN system identifier;

DS unit identifiers; and

slice names.

12 . The computer of claim 10 , wherein the processing module further functions to update the file directory by:

creating a file name associated with the set of encoded data slices;

linking the file name to one or more intermediate file directory folders;

linking the one or more intermediate file directories folders to a root directory folder;

linking the file name to a DSN identifier of the selected DSN system;

linking the file name to slice names of the set of encoded data slices; and

linking the slice names to DS unit identifiers of the selected DS units.

13 . The computer of claim 12 , wherein the processing module further functions to:

create at least one of the one or more intermediate file directory folders.

14 . The computer of claim 10 , wherein the desired dispersed error coding performance level comprises at least one of:

an indication of dispersed error coding storage requirements;

an indication of historical dispersed error coding storage performance;

an indication of available storage;

an indication of processing capabilities;

an indication of latency performance; and

an indication of bandwidth performance.

15 . A computer comprises:

an interface; and

a processing module operable to:

receive, via the interface, a data storage request for a particular type of data storage;

identify a dispersed storage network (DSN) system from a plurality of DSN systems based on the particular type of data storage to produce an identified DSN system;

identify dispersed storage (DS) units within the identified DSN system based on the particular type of data storage to produce identified DS units;

select a set of DS units from the identified DS units of the identified DSN system based on the particular type of data storage to produce selected DS units, wherein the selected DS units store a set of encoded data slices; and

update the file directory to include an identity of the selected DS units and an identity of the set of encoded data slices.

16 . The computer of claim 15 , wherein the particular type of data storage comprises at least one of:

a data type indication;

a weighted storage requirement;

a data retrieval latency indication;

a data bandwidth indication;

dispersed error coding storage function parameters; and

a date usage indication.

17 . The computer of claim 15 , wherein the processing module further functions to update the file directory by:

creating a file name associated with the set of encoded data slices;

linking the file name to one or more intermediate file directory folders;

linking the one or more intermediate file directories folders to a root directory folder;

linking the file name to a DSN identifier of the identified DSN system;

linking the file name to slice names of the set of encoded data slices; and

linking the slice names to DS unit identifiers of the selected DS units.

18 . The computer of claim 17 , wherein the processing module further functions to:

create at least one of the one or more intermediate file directory folders.

Assignments (4)
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 May 6, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038629/0015 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2010
From: GRUBE, GARY W.; MARKISON, TIMOTHY W.
To: CLEVERSAFE, INC.
Reel/Frame 025337/0817 →