IP Library Granted Patent US 10,417,253
Granted Patent B2
US 10,417,253 · App. 15/982,279 · Granted Sep 17, 2019

Multi-level data storage in a dispersed storage network

Inventors: Asimuddin Kazi (Naperville, IL); Jason K. Resch (Chicago, IL)
Assignee: PURE STORAGE, INC.
G06F16/27G06F3/067G06F3/0619G06F3/0659G06F3/0689G06F16/178H04L1/00H04L67/1097
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,417,253
App. No.
15/982,279
Granted
Sep 17, 2019
Kind
B2
Abstract

A method includes encoding, via the processing system, data using first level dispersal parameters to produce a set of first level encoded data slices, wherein the first level dispersal parameters includes a first level write threshold; outputting the set of first level encoded data slices to a set of distributed storage and task (DST) processing units, wherein each DST processing unit of the set of DST processing units encodes a corresponding one of the set of first level encoded data slices using second level dispersal parameters to produce a set of second level encoded data slices; determining, via the processing system, when a first level write threshold number of favorable storage responses is received from a subset of the set of DST processing units; and generating and outputting, via the processing system, a cancellation message to other DST processing units of the set of DST processing units.

Claims (39)

1. A method for execution by a processing system of a dispersed storage and task (DST) network that includes a processor, the method comprises:

receiving, via the processing system, a request to store data;

encoding, via the processing system, the data using a dispersed storage error coding function and first level dispersal parameters to produce a set of first level encoded data slices, wherein the first level dispersal parameters includes a first level write threshold;

outputting, via the processing system, the set of first level encoded data slices to a set of distributed storage and task (DST) processing units, wherein each DST processing unit of the set of DST processing units encodes one of the set of first level encoded data slices using the dispersed storage error coding function and second level dispersal parameters to produce a set of second level encoded data slices;

determining, via the processing system, when a first level write threshold number of favorable storage responses is received from a subset of the set of DST processing units;

generating and outputting, via the processing system, a cancellation message to other DST processing units of the set of DST processing units not included in the subset of the set of DST processing units; and

updating, via the processing system, a directory to include an association between a data identifier of the data, identifiers of the subset of the set of DST processing units, and identifiers of a first level write threshold number of the set of first level encoded data slices stored via the subset of the set of DST processing units.

2. The method of claim 1 , wherein the request to store data includes the data and the data identifier associated with the data.

3. The method of claim 1 , wherein the second level dispersal parameters include a second level write threshold.

4. The method of claim 3 , wherein the first level write threshold differs from the second level write threshold.

5. The method of claim 1 , wherein each DST processing unit of the set of DST processing units, generates and outputs an unfavorable storage response or a favorable storage response.

6. The method of claim 1 , wherein the second level dispersal parameters includes a second level write threshold and wherein the favorable storage response indicates that a second level write threshold number of the set of second level encoded data slices have been successfully stored.

7. The method of claim 1 , wherein the cancellation message includes a deletion request.

8. The method of claim 1 , wherein the cancellation message includes a rollback request.

9. A processing system of a dispersed storage and task (DST) network 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 perform operations including:

receiving, via the processing system, a request to store data;

encoding, via the processing system, the data using a dispersed storage error coding function and first level dispersal parameters to produce a set of first level encoded data slices, wherein the first level dispersal parameters includes a first level write threshold; outputting, via the processing system, the set of first level encoded data slices to a set of distributed storage and task (DST) processing units, wherein each DST processing unit of the set of DST processing units encodes one of the set of first level encoded data slices using the dispersed storage error coding function and second level dispersal parameters to produce a set of second level encoded data slices;

determining, via the processing system, when a first level write threshold number of favorable storage responses is received from a subset of the set of DST processing units;

generating and outputting, via the processing system, a cancellation message to other DST processing units of the set of DST processing units not included in the subset of the set of DST processing units; and

updating, via the processing system, a directory to include an association between a data identifier of the data, identifiers of the subset of the set of DST processing units, and identifiers of a first level write threshold number of the set of first level encoded data slices stored via the subset of the set of DST processing units.

10. The processing system of claim 9 , wherein the request to store data includes the data and the data identifier associated with the data.

11. The processing system of claim 9 , wherein the second level dispersal parameters include a second level write threshold.

12. The processing system of claim 9 , wherein the first level write threshold differs from the second level write threshold.

13. The processing system of claim 9 , wherein each DST processing unit of the set of DST processing units, generates and outputs an unfavorable storage response or a favorable storage response.

14. The processing system of claim 9 , wherein the second level dispersal parameters includes a second level write threshold and wherein the favorable storage response indicates that a second level write threshold number of the set of second level encoded data slices have been successfully stored.

15. The processing system of claim 9 , wherein the cancellation message includes a deletion request.

16. The processing system of claim 9 , wherein the cancellation message includes a rollback request.

17. 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 perform operations including:

receiving, via the processing system, a request to store data;

encoding, via the processing system, the data using a dispersed storage error coding function and first level dispersal parameters to produce a set of first level encoded data slices, wherein the first level dispersal parameters includes a first level write threshold; outputting, via the processing system, the set of first level encoded data slices to a set of distributed storage and task (DST) processing units, wherein each DST processing unit of the set of DST processing units encodes one of the set of first level encoded data slices using the dispersed storage error coding function and second level dispersal parameters to produce a set of second level encoded data slices;

determining, via the processing system, when a first level write threshold number of favorable storage responses is received from a subset of the set of DST processing units;

generating and outputting, via the processing system, a cancellation message to other DST processing units of the set of DST processing units not included in the subset of the set of DST processing units; and

updating, via the processing system, a directory to include an association between a data identifier of the data, identifiers of the subset of the set of DST processing units, and identifiers of a first level write threshold number of the set of first level encoded data slices stored via the subset of the set of DST processing units.

18. The computer readable storage medium of claim 17 , wherein each DST processing unit of the set of DST processing units, generates and outputs an unfavorable storage response or a favorable storage response.

19. The computer readable storage medium of claim 17 , wherein the second level dispersal parameters includes a second level write threshold and wherein the favorable storage response indicates that a second level write threshold number of the set of second level encoded data slices have been successfully stored.

20. The computer readable storage medium of claim 17 , wherein the cancellation message includes a deletion request or a rollback request.

Assignments (4)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0288 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 17, 2018
From: KAZI, ASIMUDDIN; RESCH, JASON K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 045834/0156 →