IP Library Granted Patent US 8,626,871
Granted Patent B2
US 8,626,871 · App. 13/105,127 · Granted Jan 7, 2014

Accessing a global vault in multiple dispersed storage networks

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,626,871
App. No.
13/105,127
Granted
Jan 7, 2014
Kind
B2
Abstract

A method begins by a processing module receiving a dispersed storage network (DSN) access request and determining whether the DSN access request is associated with a local DSN vault or a global DSN vault, wherein the local DSN vault is contained within a DSN of a plurality of DSNs and the global DSN vault is contained within at least some of the plurality of DSNs. The method continues with the processing module identifying a primary DSN of the plurality of DSNs and facilitating processing of the DSN access request by the primary DSN when the DSN access request is associated with the global DSN vault.

Claims (89)

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

receiving a dispersed storage network (DSN) access request;

determining whether the DSN access request is associated with a local DSN vault or a global DSN vault, wherein the local DSN vault is contained within a DSN of a plurality of DSNs and the global DSN vault is contained within at least some of the plurality of DSNs, wherein each of the plurality of DSNs includes a plurality of storage units, wherein the local DSN vault is a virtual memory space of at least some of the plurality of storage units of the DSN, and wherein the global DSN vault is a virtual memory space of at least some of the plurality of storage units in each of the least some of the plurality of DSNs; and

when the DSN access request is associated with the global DSN vault:

identifying a primary DSN of the plurality of DSNs; and

facilitating processing of the DSN access request by the primary DSN, wherein the DSN access request identifies a set of encoded data slices and wherein a data segment of data is dispersed storage error encoded to produce the set of encoded data slices.

2. The method of claim 1 , wherein the determining whether the DSN access request is associated with the local or global DSN vault comprises at least one of:

interpreting a requester identifier of the DSN access request;

interpreting a vault identifier of the DSN access request;

interpreting a data type of the DSN access request;

accessing a table look-up;

interpreting a local or global DSN identifier within the DSN access request; and

querying a naming authority.

3. The method of claim 1 , wherein the identifying the primary DSN comprises at least one of:

interpreting a requester identifier of the DSN access request;

interpreting a global vault identifier of the DSN access request;

interpreting a data type of the DSN access request;

accessing a table look-up;

interpreting a global DSN identifier within the DSN access request; and

querying a naming authority.

4. The method of claim 1 , wherein the facilitating processing of the DSN access request comprises:

identifying, by a first DSN of the plurality of DSNs, the first DSN as the primary DSN;

processing, by the first DSN, the DSN access request to produce a DSN access response; and

sending the DSN access response to a sender of the DSN access request.

5. The method of claim 1 , wherein the facilitating processing of the DSN access request comprises:

identifying, by a first DSN of the plurality of DSNs, a second DSN of the plurality of DSNs as the primary DSN; and

forwarding the DSN access request to the second DSN.

6. The method of claim 1 further comprises:

when the DSN access request is associated with the local DSN vault:

determining whether the DSN access request includes a vault assignment request; and

when the DSN access request includes the vault assignment request, creating the local vault;

when the DSN access request does not include the vault assignment request:

processing the DSN access request to produce a DSN access response; and

sending the DSN access response to a sender of the DSN access request.

7. The method of claim 1 further comprises:

when the DSN access request is associated with the global DSN vault, determining whether the DSN access request includes a vault assignment request; and

when the DSN access request includes the vault assignment request:

sending the vault assignment request to a naming authority; and

receiving a global vault assignment response that identifies the primary DSN.

8. The method of claim 7 further comprises at least one of:

extracting vault assignment information from the global vault assignment response;

storing the vault assignment information; and

sending the vault assignment information to a sender of the DSN access request.

9. A computer of a dispersed storage system that includes a plurality of dispersed storage networks (DSNs), the computer comprises:

an interface;

a memory; and

a processing module operable to:

receive, via the interface, a dispersed storage network (DSN) access request;

determine whether the DSN access request is associated with a local DSN vault or a global DSN vault, wherein the local DSN vault is contained within a DSN of a plurality of DSNs and the global DSN vault is contained within at least some of the plurality of DSNs, wherein each of the plurality of DSNs includes a plurality of storage units, wherein the local DSN vault is a virtual memory space of at least some of the plurality of storage units of the DSN, and wherein the global DSN vault is a virtual memory space of at least some of the plurality of storage units in each of the least some of the plurality of DSNs; and

when the DSN access request is associated with the global DSN vault:

identify a primary DSN of the plurality of DSNs; and

facilitate processing of the DSN access request by the primary DSN, wherein the DSN access request identifies a set of encoded data slices and wherein a data segment of data is dispersed storage error encoded to produce the set of encoded data slices.

10. The computer of claim 9 , wherein the processing module functions to determine whether the DSN access request is associated with the local or global DSN vault by at least one of:

interpreting a requester identifier of the DSN access request;

interpreting a vault identifier of the DSN access request;

interpreting a data type of the DSN access request;

accessing a table look-up;

interpreting a local or global DSN identifier within the DSN access request; and

querying, via the interface, a naming authority.

11. The computer of claim 9 , wherein the processing module functions to identify the primary DSN by at least one of:

interpreting a requester identifier of the DSN access request;

interpreting a global vault identifier of the DSN access request;

interpreting a data type of the DSN access request;

accessing a table look-up;

interpreting a global DSN identifier within the DSN access request; and

querying, via the interface, a naming authority.

12. The computer of claim 9 , wherein the processing module functions to facilitate processing of the DSN access request by:

identifying, by a first DSN of the plurality of DSNs, the first DSN as the primary DSN;

processing, by the first DSN, the DSN access request to produce a DSN access response; and

sending, via the interface, the DSN access response to a sender of the DSN access request.

13. The computer of claim 9 , wherein the processing module functions to facilitate processing of the DSN access request by:

identifying, by a first DSN of the plurality of DSNs, a second DSN of the plurality of DSNs as the primary DSN; and

forwarding, via the interface, the DSN access request to the second DSN.

14. The computer of claim 9 , wherein the processing module further functions to:

when the DSN access request is associated with the local DSN vault:

determine whether the DSN access request includes a vault assignment request; and

when the DSN access request includes the vault assignment request, create the local vault;

when the DSN access request does not include the vault assignment request:

process the DSN access request to produce a DSN access response; and

send, via the interface, the DSN access response to a sender of the DSN access request.

15. The computer of claim 9 , wherein the processing module further functions to:

when the DSN access request is associated with the global DSN vault, determine whether the DSN access request includes a vault assignment request; and

when the DSN access request includes the vault assignment request:

send, via the interface, the vault assignment request to a naming authority; and

receive, via the interface, a global vault assignment response that identifies the primary DSN.

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

extract vault assignment information from the global vault assignment response;

store, in the memory, the vault assignment information; and

send, via the interface, the vault assignment information to a sender of the DSN access request.

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 May 11, 2011
From: RESCH, JASON K.; GRUBE, GARY W.; MARKISON, TIMOTHY W.
To: CLEVERSAFE, INC.
Reel/Frame 026262/0182 →