IP Library Granted Patent US 10,241,864
Granted Patent B2
US 10,241,864 · App. 15/282,888 · Granted Mar 26, 2019

Expanding information dispersal algorithm width without rebuilding through imposter slices

Inventors: Andrew D. Baptist (Mt. Pleasant, WI); Greg R. Dhuse (Chicago, IL); Ravi V. Khadiwala (Bartlett, IL); Jason K. Resch (Chicago, IL); Ilya Volvovski (Chicago, IL); Ethan S. Wozniak (Park Ridge, IL)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F11/1092G06F3/064G06F3/0604G06F3/067G06F3/0611G06F3/0619G06F3/0659G06F3/0665G06F3/0689G06F11/2094H03M13/1515H03M13/3761H04L43/0864H04L43/16H04L67/1008H04L67/1097G06F2201/805
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 10,241,864
App. No.
15/282,888
Granted
Mar 26, 2019
Kind
B2
Abstract

A method and system for expanding a set of storage units. Expanding a set of storage units includes facilitating storage of a set of encoded data slices in a set of storage units within a first time frame. When detecting expansion of the set of storage units with new storage units within a second timeframe, primary storage units of the expanded set of storage units based are identified based on a write threshold value associated with the expanded set of storage units. For each new primary storage unit, storage of an imposter encoded data slice sourced from another storage unit that is not a primary storage unit but holds an encoded data slice of the set of encoded data slices is facilitated. The other storage unit then deletes the imposter encoded data slice.

Claims (43)

1. A method of accessing data in a dispersed storage network, the dispersed storage network including an initial set of dispersed storage units comprising:

at a first time, storing in each respective dispersed storage unit of the initial set of dispersed storage units a respective encoded data slice of a set of encoded data slices;

at a second time detecting an expansion of the initial set of dispersed storage units to include new dispersed storage units, the expansion resulting in an expanded set of dispersed storage units, wherein the expansion of the initial set of dispersed storage units is based on increasing an information dispersal algorithm (IDA) width;

identifying primary storage units of the expanded set of dispersed storage units; and

for each respective primary storage unit of the expanded set of dispersed storage units that is one of the new dispersed storage units, storing the respective encoded data slice of one of the respective dispersed storage units of the initial set of dispersed storage units that is not one of the primary storage units.

2. The method of claim 1 , wherein the expansion of the initial set of dispersed storage units is based on increasing a write threshold.

3. The method of claim 1 , wherein the step of identifying primary storage units of the expanded set of dispersed storage units is based on a write threshold associated with the expanded set of dispersed storage units.

4. The method of claim 1 , wherein step of identifying primary storage units of the expanded set of dispersed storage units is based on one or more of interpreting system registration information, a storage unit performance level, an available storage capacity level, a predetermination and a random selection.

5. The method of claim 1 , wherein the step of identifying primary storage units of the expanded set of dispersed storage units is performed by one or more of the respective dispersed storage units of the initial set of dispersed storage units that are not primary storage units.

6. The method of claim 1 , wherein the respective encoded data slice of the respective dispersed storage unit of the initial set of dispersed storage units that is not one of the primary storage units that is stored in the respective primary storage unit of the expanded set of dispersed storage units that is one of the new dispersed storage units is embedded with an IDA index of the respective dispersed storage unit of the initial set of the dispersed storage units that is not one of the primary storage units.

7. The method of claim 6 , wherein the respective encoded data slice stored in the respective primary storage unit of the expanded set of dispersed storage units that is one of the new dispersed storage units includes a slice name associated with the respective primary storage unit of the expanded set of dispersed storage units that is one of the new dispersed storage units.

8. The method of claim 1 , wherein the dispersed storage network is transitioned to a trimmed writes configuration.

9. A dispersed storage processing unit for use in a dispersed storage network, the dispersed storage network including an initial set of dispersed storage units, the dispersed storage processing unit comprising:

a communications interface;

a memory; and

a processor;

wherein the memory includes a set of encoded data slices and wherein the memory further includes instructions for causing the processor to:

at a first time, store in each respective dispersed storage unit of the initial set of dispersed storage units a respective encoded data slice of the set of encoded data slices;

at a second time detect an expansion of the initial set of dispersed storage units to include new dispersed storage units, the expansion resulting in an expanded set of dispersed storage units, wherein the expansion of the initial set of dispersed storage units is based on increasing a write threshold;

identify primary storage units of the expanded set of dispersed storage units; and

for each respective primary storage unit of the expanded set of dispersed storage units that is one of the new dispersed storage units, store the respective encoded data slice of one of the respective dispersed storage units of the initial set of dispersed storage units that is not one of the primary storage units.

10. The dispersed storage processing unit of claim 9 , wherein the expansion of the initial set of dispersed storage units is based on increasing an information dispersal algorithm (IDA) Width.

11. The dispersed storage processing unit of claim 9 , wherein the instructions for causing the processor to identify primary storage units of the expanded set of dispersed storage units are based on a write threshold associated with the expanded set of dispersed storage units.

12. The dispersed storage processing unit of claim 9 , wherein the instructions for causing the processor to identify primary storage units of the expanded set of dispersed storage units are based on one or more of interpreting system registration information, a storage unit performance level, an available storage capacity level, a predetermination and a random selection.

13. The dispersed storage processing unit of claim 9 , wherein the respective encoded data slice of one of the respective dispersed storage units of the initial set of dispersed storage units that is not one of the primary storage units is embedded with an IDA index of the respective dispersed storage unit of the initial set of the dispersed storage units that is not one of the primary storage units.

14. The dispersed storage processing unit of claim 13 , wherein the respective encoded data slice of one of the respective dispersed storage units of the initial set of dispersed storage units that is not one of the primary storage units includes a slice name associated with the respective primary storage unit of the expanded set of dispersed storage units that is one of the new dispersed storage units.

15. The dispersed storage processing unit of claim 9 , wherein the dispersed storage network utilizes a trimmed writes configuration.

16. A dispersed storage network comprising:

an initial set of dispersed storage units; and

a dispersed storage processing unit, the dispersed storage processing unit including:

a first communications interface;

a first memory; and

a first processor;

wherein the first memory includes a set of encoded data slices and wherein the first memory further includes instructions for causing the first processor to:

at a first time, store in each respective dispersed storage unit of the initial set of dispersed storage units a respective encoded data slice of the set of encoded data slices;

at a second time detect an expansion of the initial set of dispersed storage units to include new dispersed storage units, the expansion resulting in an expanded set of dispersed storage units; and

for each respective primary storage unit of the expanded set of dispersed storage units that is one of the new dispersed storage units, store the respective encoded data slice of one of the respective dispersed storage units of the initial set of dispersed storage units that is not one of the primary storage units;

wherein one or more of the dispersed storage units of the initial set of dispersed storage units include:

a second communications interface;

a second memory; and

a second processor; and

wherein the second memory includes instructions for causing the second processor to identify primary storage units of the expanded set of dispersed storage units based on a write threshold associated with the expanded set of dispersed storage units.

17. The dispersed storage network of claim 16 , wherein the dispersed storage network utilizes a trimmed writes configuration.

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 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 Sep 30, 2016
From: BAPTIST, ANDREW D.; DHUSE, GREG R.; KHADIWALA, RAVI V.; RESCH, JASON K.; VOLVOVSKI, ILYA; WOZNIAK, ETHAN S.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 039915/0390 →
Continuity (2)
Provisional Application 62248752 · Oct 30, 2015
Related Publication 20170123697A1 · May 4, 2017