IP Library Patent Application 15839248
Patent Application
App. No. 15/839,248

MIRRORING A STORAGE VAULT IN A DISPERSED STORAGE NETWORK

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.
15/839,248
Abstract

A method for execution by a computing device includes determining to establish mirror pools for a plurality of storage pools, where each of the plurality of storage pools includes a plurality of existing storage vaults. For each existing storage vault on each of the plurality of storage pools, a new storage vault name is created for an associated new storage vault on every other storage pool of the plurality of storage pools. For each existing storage vault on each storage pool, the each existing storage vault is replicated on the every other storage pool of the plurality of storage pools utilizing the associated new storage vault name. For each existing storage vault on each of the plurality of storage pools, it is indicated that the each existing storage vault and the associated new storage vault on the every other storage pool of the plurality of storage pools are mirrors.

Claims (41)

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

determining to establish mirror pools for a plurality of storage pools, wherein each of the plurality of storage pools includes a plurality of existing storage vaults;

for each existing storage vault on each of the plurality of storage pools, creating a new storage vault name for an associated new storage vault on every other storage pool of the plurality of storage pools;

for each existing storage vault on each storage pool, replicating the each existing storage vault on the every other storage pool of the plurality of storage pools utilizing the associated new storage vault name; and

for each existing storage vault on each of the plurality of storage pools, indicating that the each existing storage vault and the associated new storage vault on the every other storage pool of the plurality of storage pools are mirrors.

2 . The method of claim 1 , wherein the plurality of storage pools established as mirror pools includes exactly two storage pools.

3 . The method of claim 1 , wherein the plurality of storage pools established as mirror pools includes more than two storage pools.

4 . The method of claim 1 , wherein determining to establish the mirror pools includes interpreting a disaster recovery requirement.

5 . The method of claim 1 , wherein determining to establish the mirror pools includes identifying stored data of at least one of the plurality of storage pools as frequently accessed by users of the plurality of storage pools.

6 . The method of claim 1 , wherein creating the new storage vault name for the associated new storage vault on the every other storage pool includes performing a bidirectional deterministic function on a storage vault name for the each existing storage vault to produce the new storage vault name.

7 . The method of claim 1 , wherein the plurality of existing vaults of one of the plurality of storage pools stores a set of encoded data slices associated with a data segment, and wherein the data segment was dispersed storage error encoded to produce the set of encoded data slices for storage in the plurality of existing vaults.

8 . The method of claim 1 , wherein replicating the each existing storage vault on the every other storage pool includes, for each data object of a plurality of data objects of the each existing storage vault:

obtaining at least one of a plurality of sets of encoded data slices associated with the each data object;

reproducing the data object by dispersed storage error decoding the at least one of the plurality of sets of encoded data slices; and

for the every other storage pool, dispersed storage error encoding the data object to produce a new plurality of sets of encoded data slices associated with new storage vault name for transmission to the associated new storage vault of the every other storage pool for storage.

9 . The method of claim 1 , wherein indicating that the each existing storage vault and the associated new storage vault are mirrors includes updating at least one of: a DSN directory or a dispersed hierarchical index to associate a storage vault name of the each existing storage vault and the new storage vault name.

10 . A processing system of a computing device comprises:

at least one processor;

a memory that stores operational instructions, that when executed by the at least one processor cause the processing system to:

determine to establish mirror pools for a plurality of storage pools, wherein each of the plurality of storage pools includes a plurality of existing storage vaults;

for each existing storage vault on each of the plurality of storage pools, create a new storage vault name for an associated new storage vault on every other storage pool of the plurality of storage pools;

for each existing storage vault on each storage pool, replicate the each existing storage vault on the every other storage pool of the plurality of storage pools utilizing the associated new storage vault name; and

for each existing storage vault on each of the plurality of storage pools, indicate that the each existing storage vault and the associated new storage vault on the every other storage pool of the plurality of storage pools are mirrors.

11 . The processing system of claim 10 , wherein the plurality of storage pools established as mirror pools includes exactly two storage pools.

12 . The processing system of claim 10 , wherein the plurality of storage pools established as mirror pools includes more than two storage pools.

13 . The processing system of claim 10 , wherein determining to establish the mirror pools includes interpreting a disaster recovery requirement.

14 . The processing system of claim 10 , wherein determining to establish the mirror pools includes identifying stored data of at least one of the plurality of storage pools as frequently accessed by users of the plurality of storage pools.

15 . The processing system of claim 10 , wherein creating the new storage vault name for the associated new storage vault on the every other storage pool includes performing a bidirectional deterministic function on a storage vault name for the each existing storage vault to produce the new storage vault name.

16 . The processing system of claim 10 , wherein the plurality of existing vaults of one of the plurality of storage pools stores a set of encoded data slices associated with a data segment, and wherein the data segment was dispersed storage error encoded to produce the set of encoded data slices for storage in the plurality of existing vaults.

17 . The processing system of claim 10 , wherein replicating the each existing storage vault on the every other storage pool includes, for each data object of a plurality of data objects of the each existing storage vault:

obtaining at least one of a plurality of sets of encoded data slices associated with the each data object;

reproducing the data object by dispersed storage error decoding the at least one of the plurality of sets of encoded data slices; and

for the every other storage pool, dispersed storage error encoding the data object to produce a new plurality of sets of encoded data slices associated with new storage vault name for transmission to the associated new storage vault of the every other storage pool for storage.

18 . The processing system of claim 10 , wherein indicating that the each existing storage vault and the associated new storage vault are mirrors includes updating at least one of: a DSN directory or a dispersed hierarchical index to associate a storage vault name of the each existing storage vault and the new storage vault name.

19 . 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:

determine to establish mirror pools for a plurality of storage pools, wherein each of the plurality of storage pools includes a plurality of existing storage vaults;

for each existing storage vault on each of the plurality of storage pools, create a new storage vault name for an associated new storage vault on every other storage pool of the plurality of storage pools;

for each existing storage vault on each storage pool, replicate the each existing storage vault on the every other storage pool of the plurality of storage pools utilizing the associated new storage vault name; and

for each existing storage vault on each of the plurality of storage pools, indicate that the each existing storage vault and the associated new storage vault on the every other storage pool of the plurality of storage pools are mirrors.

20 . The computer readable storage medium of claim 19 , wherein creating the new storage vault name for the associated new storage vault on the every other storage pool includes performing a bidirectional deterministic function on a storage vault name for the each existing storage vault to produce the new storage vault name.

Assignments (3)
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 Dec 12, 2017
From: KAZI, ASIMUDDIN; RESCH, JASON K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044374/0178 →