IP Library Granted Patent US 8,707,091
Granted Patent B2
US 8,707,091 · App. 13/021,657 · Granted Apr 22, 2014

Failsafe directory file system in a dispersed storage network

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,707,091
App. No.
13/021,657
Granted
Apr 22, 2014
Kind
B2
Abstract

A file directory system comprises a directory file, a directory address for the directory file, and a directory address failsafe mechanism. The directory file includes one or more directory entries and one or more corresponding addresses for the one or more directory entries. The directory address failsafe mechanism functions to dispersed storage error encode the directory address to produce a plurality of encoded components of the directory address and transmit the plurality of encoded components of the directory address to a plurality of agent modules.

Claims (96)

1. A file directory system comprises:

memory for storing:

a directory file including:

one or more directory entries;

one or more corresponding addresses for the one or more directory entries;

a directory address for the directory file; and

one or more processing devices configured to function as a directory address failsafe mechanism operable to:

dispersed storage error encode the directory address to produce a plurality of encoded components of the directory address; and

transmit the plurality of encoded components of the directory address to a plurality of agent modules.

2. The file directory system of claim 1 , wherein the directory entry comprises at least one of:

a directory path name; and

a file name.

3. The file directory system of claim 1 further comprises:

the directory address including a dispersed storage network (DSN) address; and

each of the one or more corresponding addresses including a DSN directory entry address.

4. The file directory system of claim 1 further comprises:

the directory file constituting a root directory file; and

the directory address constituting a root directory address.

5. The file directory system of claim 4 further comprises:

an intermediate directory file including:

one or more intermediate directory entries;

one or more corresponding intermediate directory entry addresses for the one or more intermediate directory entries;

an intermediate directory address for the intermediate directory file; and

an intermediate directory address failsafe mechanism operable to:

dispersed storage error encode the intermediate directory address to produce a plurality of encoded components of the intermediate directory address; and

transmit the plurality of encoded components of the intermediate directory address to a plurality of intermediate directory agent modules.

6. The file directory system of claim 1 further comprises:

a file-level directory file including:

one or more file-level directory entries;

one or more corresponding file-level directory entry addresses for the one or more file-level directory entries;

a file-level directory address for the file-level directory file; and

a file-level directory address failsafe mechanism operable to:

dispersed storage error encode the file-level directory address to produce a plurality of encoded components of the file-level directory address; and

transmit the plurality of encoded components of the file-level directory address to a plurality of file-level directory agent modules.

7. The file directory system of claim 1 , wherein the directory file further comprises:

one or more redundant directory entries; and

one or more corresponding redundant directory entry addresses for the one or more redundant directory entries.

8. The file directory system of claim 1 further comprises:

an intermediate directory file corresponding to one of the one or more directory entries, wherein

the intermediate directory file includes:

one or more intermediate directory entries;

one or more corresponding intermediate directory entry addresses for the one or more intermediate directory entries;

an intermediate directory address for the intermediate directory file, wherein the corresponding address of the one of the one or more directory entries constitutes the intermediate directory address; and

the directory address failsafe mechanism operable to:

dispersed storage error encode the intermediate directory address to produce a plurality of encoded components of the intermediate directory address; and

transmit the plurality of encoded components of the intermediate directory address to a plurality of agent modules.

9. The file directory system of claim 1 further comprises:

a decoding module operable to:

retrieve a threshold number of the encoded components of the directory address from at least some of the plurality of agent modules; and

reconstruct the directory address from the threshold number of encoded components.

10. A method for accessing a file system, the method comprises:

receiving a file access request;

identifying a directory file path based on the file access request;

determining that a directory address of a directory file of the directory file path is not available;

when the directory address is not available, determining whether to reconstruct the directory address or to use a redundant directory file path; and

when reconstructing the directory address:

retrieving encoded components of the directory address from a plurality of agent modules; and

when at least a threshold number of the encoded components of the directory address have been received, reconstructing the directory address from the at least a threshold number of the encoded components of the directory address.

11. The method of claim 10 further comprises:

when using the redundant directory file path, determining one or more directory addresses for one or more redundant directory files in the redundant directory file path; and

accessing a file via the one or more directory addresses of the redundant directory file path.

12. The method of claim 10 , wherein the directory address comprises:

a dispersed storage network (DSN) directory address.

13. The method of claim 10 , wherein the directory file comprises at least one of:

a root directory file;

an intermediate directory file; and

a file-level directory file.

14. The method of claim 10 , wherein the identifying the directory file path when the file access request is a write data request comprises:

determining whether the directory file path exists;

when the directory file path does not exist, creating the directory file path;

determining whether to create a redundant directory file path; and

when it is determined to create the redundant directory file path, creating the redundant directory file path.

15. A computer device comprises:

an interface;

a processing module operable to:

receive, via the interface, a file access request;

identify a directory file path based on the file access request;

determine that a directory address of a directory file of the directory file path is not available;

when the directory address is not available, determine whether to reconstruct the directory address or to use a redundant directory file path; and

when reconstructing the directory address:

retrieve, via the interface, encoded components of the directory address from a plurality of agent modules; and

when at least a threshold number of the encoded components of the directory address have been received, reconstruct the directory address from the at least a threshold number of the encoded components of the directory address.

16. The computer of claim 15 , wherein the processing module for the functions to:

when using the redundant directory file path, determine one or more directory addresses for one or more redundant directory files in the redundant directory file path; and

access, via the interface, a file via the one or more directory addresses of the redundant directory file path.

17. The computer of claim 15 , wherein the directory address comprises:

a dispersed storage network (DSN) directory address.

18. The computer of claim 15 , wherein the directory file comprises at least one of:

a root directory file;

an intermediate directory file; and

a file-level directory file.

19. The computer of claim 15 , wherein the processing module functions to identify the directory file path when the file access request is a write data request by:

determining whether the directory file path exists;

when the directory file path does not exist, creating the directory file path;

determining whether to create a redundant directory file path; and

when it is determined to create the redundant directory file path, creating the redundant directory file path.

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 13, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038687/0596 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2011
From: GLADWIN, S. CHRISTOPHER; GRUBE, GARY W.; RESCH, JASON K.; MARKISON, TIMOTHY W.
To: CLEVERSAFE, INC.
Reel/Frame 025750/0870 →