IP Library Patent Application 15901036
Patent Application
App. No. 15/901,036

EXPANDING A DISPERSED STORAGE NETWORK MEMORY BEYOND TWO LOCATIONS

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/901,036
Abstract

A method for a dispersed storage network includes generating expansion encoded data slices for identified expansion storage units of an expanded set of storage units. The method continues by relocating at least some of the expanded set of storage units to at least one other existing storage site associated with at least one other storage target and at least one new storage site associated with at least one storage target of a desired plurality of storage targets and relocating at least some storage units of the at least one other existing storage site to the existing storage site and to the at least one new storage site, facilitating population of the relocated at least some storage units of the at least one other existing storage site with corresponding encoded data slices and synchronizing, on an ongoing basis, storage of common data in each storage target.

Claims (40)

1 . A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:

generating expansion encoded data slices for identified expansion storage units of an expanded set of storage units, where the expanded set of storage units further includes a set of storage units associated with a first storage target of an existing storage site;

relocating at least some of the expanded set of storage units to at least one other existing storage site associated with at least one other storage target and at least one new storage site associated with at least one storage target of a desired plurality of storage targets;

relocating at least some storage units of the at least one other existing storage site to the existing storage site and to the at least one new storage site;

facilitating population of the relocated at least some storage units of the at least one other existing storage site with corresponding encoded data slices; and

synchronizing, on an ongoing basis, storage of common data in each storage target.

2 . The method of claim 1 , wherein the generating expansion encoded data slices includes: for each set of existing stored encoded data slices, recovering a decode threshold number of encoded data slices, disperse storage error decoding the decode threshold number of encoded data slices to reproduce a data segment, disperse storage error encoding the data segment with an expanded encoding matrix to produce the expansion encoded data slices, and facilitating storage of the expansion encoded data slices in the identified expansion storage units.

3 . The method of claim 1 , wherein the relocating includes selecting at least some of the expanded set of storage units and indicating the selection for relocation.

4 . The method of claim 3 , wherein the relocating includes equally dividing the at least some of the expanded set of storage units selected amongst the desired plurality of storage targets.

5 . The method of claim 1 , wherein the facilitating population of the relocated at least some storage units of the at least one other existing storage site with corresponding encoded data slices includes rebuilding encoded data slices based on decoding at least a decode threshold number of encoded data slices per set of encoded data slices.

6 . The method of claim 5 further includes copying encoded data slices from corresponding storage units of the expanded set of storage units.

7 . The method of claim 1 , wherein synchronizing includes maintaining same revisions of encoded data slices stored in storage units of the storage targets.

8 . A computing device of a group of computing devices of a dispersed storage network (DSN), the computing device comprises:

an interface;

a local memory; and

a processing module operably coupled to the interface and the local memory, wherein the processing module functions to:

generate expansion encoded data slices for identified expansion storage units of an expanded set of storage units, where the expanded set of storage units further includes a set of storage units associated with a first storage target of an existing site;

relocate at least some of the expanded set of storage units to at least one other existing site associated with at least one other storage target and at least one new site associated with at least one storage target of a desired plurality of storage targets;

relocate at least some storage units of the at least one other existing site to the existing site and to the at least one new site;

facilitate population of the relocated at least some storage units of the at least one other existing site with corresponding encoded data slices; and

synchronize, on an ongoing basis, storage of common data in each storage target.

9 . The computing device of claim 8 , wherein the generating expansion encoded data slices includes: for each set of existing stored encoded data slices, recovering a decode threshold number of slices, disperse storage error decoding the recovered slices to reproduce a data segment, disperse storage error encoding the data segment with an expanded encoding matrix to produce the expansion encoded data slices, and facilitating storage of the expansion encoded data slices in the identified expansion storage units.

10 . The computing device of claim 8 , wherein the relocate at least some of the expanded set of storage units includes selecting at least some of the expanded set of storage units and equally dividing amongst each of the desired plurality of storage targets and indicating the selection for relocation keeping stored encoded data slices intact.

11 . The computing device of claim 8 , wherein the relocate at least some storage units of the at least one other existing site includes equally dividing the at least some storage units amongst the desired plurality of storage targets.

12 . The computing device of claim 8 , wherein the facilitate population of the relocated at least some storage units of the at least one other existing site with corresponding encoded data slices includes rebuilding encoded data slices based on decoding at least a decode threshold number of encoded data slices per set of encoded data slices.

13 . The computing device of claim 12 further includes copying encoded data slices from corresponding storage units of the expanded set of storage units.

14 . The computing device of claim 8 , wherein synchronize includes maintaining same revisions of encoded data slices stored in storage units of the storage targets.

15 . A method of migrating dispersed stored data to facilitate expansion of storage targets, the method comprises:

inactivating, at least a second storage target of a plurality of storage targets to be temporarily dormant;

selecting an expanded information dispersal algorithm (IDA) width;

adding new storage units to a first storage target of the plurality of storage targets such that the first storage target temporarily includes the expanded IDA width of a number of storage units;

generating expansion encoded data slices for each set of stored encoded data slices and storing in the new storage units;

redeploying storage units from the first storage target by equally dividing the new storage units at the first storage target amongst the first storage target, the second storage target and one or more expansion storage targets;

redeploying storage units from the second storage target by equally dividing the storage units from the second storage target amongst the first storage target, the second storage target and the one or more expansion storage targets; and

populating the redeployed storage units with encoded data slices copied from corresponding storage units of the storage targets to populate the redeployed storage units with corresponding encoded data slices.

16 . The method of claim 15 further comprises performing eventual consistency synchronization operations to maintain at least a decode threshold number of encoded data slices of the storage targets as a first priority and to maintain further encoded data slices of most recent revisions as a second priority.

17 . The method of claim 15 , wherein the selecting is based on one or more of a predetermination, a desired number of storage units per storage target after expansion of the storage targets, or a number of storage units present prior to the expansion.

18 . The method of claim 15 , wherein the generating expansion encoded data slices includes recovering, for each data segment, at least a decode threshold number of encoded data slices from storage units, dispersed storage error decoding the decode threshold number of encoded data slices to reproduce a data segment, dispersed storage error encoding the data segment using an expanded encoding matrix to produce the expansion encoded data slices for storage in the new storage units.

19 . The method of claim 15 , wherein the redeploying storage units includes physically moving storage units.

20 . The method of claim 19 further comprises, while physically moving the storage units, utilizing the expansion storage targets as a temporary common storage target.

Assignments (5)
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 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 Feb 21, 2018
From: BAPTIST, ANDREW D.; RESCH, JASON K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044986/0980 →