IP Library Granted Patent US 9,304,759
Granted Patent B2
US 9,304,759 · App. 14/792,846 · Granted Apr 5, 2016

Distributed storage network for modification of a data object

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 9,304,759
App. No.
14/792,846
Granted
Apr 5, 2016
Kind
B2
Abstract

A method for updating software in storage units of a dispersed storage network includes determining a software updating sequence pattern, which insures that, for each set of encoded data slices, a decode threshold number of encoded data slices is accessible. The method includes taking a set of the storage units off-line for software updating in accordance with the software updating sequence pattern. The method includes, when the software has been successfully updated in the set of storage units, putting the set of storage units back on-line and taking another set of the storage units off-line in accordance with the software updating sequence pattern. The method includes, when the software has been successfully updated in the other set of storage units, putting the other set of storage units back on-line and taking yet another set of the storage units off-line for software updating in accordance with the software updating sequence pattern.

Claims (42)

1. A method for updating software in storage units of a dispersed storage network (DSN), wherein the storage units stores pluralities of sets of encoded data slices, wherein a data object is dispersed storage error encoded to produce a plurality of sets of encoded data slices, the method is executed by a computing device and comprises:

determining a software updating sequence pattern for the storage units, wherein the software updating sequence pattern insures that, for each set of encoded data slices of the pluralities of sets of encoded data slices, a decode threshold number of encoded data slices is accessible, wherein the decode threshold number of encoded data slices is a minimum number of encoded data slices of the set of encoded data slices needed to recover a data segment of the data object;

taking a set of the storage units off-line for software updating in accordance with the software updating sequence pattern for updating software;

when the software has been successfully updated in the set of the storage units, putting the set of the storage units back on-line and taking another set of the storage units off-line for software updating in accordance with the software updating sequence pattern for updating the software; and

when the software has been successfully updated in the other set of the storage units, putting the other set of the storage units back on-line and taking yet another set of the storage units off-line for software updating in accordance with the software updating sequence pattern for updating the software.

2. The method of claim 1 , wherein the set of the storage units includes one or more storage units.

3. The method of claim 1 , wherein the determining the software updating sequence pattern comprises:

determining vaults supported by the storage units and corresponding dispersed storage error encoding parameters of the vaults;

for each vault, selecting an acceptable storage unit off-line rate to be in a range from one to a pillar width number minus the decode threshold number; and

establishing the set, the other set, and the yet another set of the storage units based on the supported vaults per storage unit and the acceptable storage unit off-line rate per vault.

4. The method of claim 1 , wherein the software comprises one or more of:

a new application;

a new version of an existing application;

a new version of a portion of an existing application;

address information regarding new physical memory;

updated address information regarding existing physical memory;

operational information regarding a new processing module;

updated operational information regarding an existing processing module;

an updated interface protocol; and

a new interface protocol.

5. A non-transitory computer readable memory device comprises:

a first memory section that stores operational instructions that, when read by a computing device, causes the computing device to:

determine a software updating sequence pattern for updating software in storage units of a dispersed storage network (DSN), wherein the storage units stores a pluralities of sets of encoded data slices, wherein a data object is dispersed storage error encoded to produce a plurality of sets of encoded data slices, wherein the software updating sequence pattern insures that, for each set of encoded data slices of the pluralities of sets of encoded data slices, a decode threshold number of encoded data slices is accessible, wherein the decode threshold number of encoded data slices is a minimum number of encoded data slices of the set of encoded data slices needed to recover a data segment of the data object;

a second memory section that stores operational instructions that, when read by the computing device, causes the computing device to:

take a set of the storage units off-line for software updating in accordance with the software updating sequence pattern for updating software;

when the software has been successfully updated in the set of the storage units, put the set of the storage units back on-line and take another set of the storage units off-line for software updating in accordance with the software updating sequence pattern for updating the software; and

when the software has been successfully updated in the other set of the storage units, putt the other set of the storage units back on-line and take yet another set of the storage units off-line for software updating in accordance with the software updating sequence pattern for updating the software.

6. The non-transitory computer readable memory device of claim 5 , wherein the set of the storage units includes one or more storage units.

7. The non-transitory computer readable memory device of claim 5 , wherein the first memory section further stores operational instructions that, when read by the computing device, causes the computing device to determine the software updating sequence pattern by:

determining vaults supported by the storage units and corresponding dispersed storage error encoding parameters of the vaults;

for each vault, selecting an acceptable storage unit off-line rate to be in a range from one to a pillar width number minus the decode threshold number; and

establishing the set, the other set, and the yet another set of the storage units based on the supported vaults per storage unit and the acceptable storage unit off-line rate per vault.

8. The non-transitory computer readable memory device of claim 5 , wherein the software comprises one or more of:

a new application;

a new version of an existing application;

a new version of a portion of an existing application;

address information regarding new physical memory;

updated address information regarding existing physical memory;

operational information regarding a new processing module;

updated operational information regarding an existing processing module;

an updated interface protocol; and

a new interface protocol.

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 May 13, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038687/0596 →