IP Library Granted Patent US 8,656,253
Granted Patent B2
US 8,656,253 · App. 13/464,048 · Granted Feb 18, 2014

Storing portions of data in a dispersed storage network

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 8,656,253
App. No.
13/464,048
Granted
Feb 18, 2014
Kind
B2
Abstract

A method begins by a dispersed storage (DS) processing module generating preliminary dispersed storage network (DSN) storage information for data to be stored in a DSN. The method continues with the DS processing module accessing DSN storage information regarding other data stored in the DSN and comparing the preliminary DSN storage information for the data with the DSN storage information regarding the other data. When at least a portion of the data has compatible preliminary DSN storage information with DSN storage information of at least a portion of the other data, the method continues with the DS processing module generating DSN storage information for remaining portions of the data to produce remaining portions DSN storage information and generating DSN storage information for the data based on the DSN storage information of the at least the portion of the other data and the remaining portions DSN storage information.

Claims (52)

1. A computing device implemented method comprises:

generating preliminary dispersed storage network (DSN) storage information for data to be stored in a DSN;

accessing DSN storage information regarding other data stored in the DSN;

comparing the preliminary DSN storage information for the data with the DSN storage information regarding the other data; and

when at least a portion of the data has compatible preliminary DSN storage information with DSN storage information of at least a portion of the other data:

generating DSN storage information for remaining portions of the data to produce remaining portions DSN storage information; and

generating DSN storage information for the data based on the DSN storage information of the at least the portion of the other data and the remaining portions DSN storage information.

2. The method of claim 1 further comprises:

dispersed storage error encoding the remaining portions of the data to produce dispersed storage error encoded data; and

storing the dispersed storage error encoded data in accordance with the remaining portions DSN storage information.

3. The method of claim 1 , wherein the accessing DSN storage information of the other data comprises:

accessing one or more segment allocation tables for the other data, wherein a segment allocation table of the one or more segment allocation tables includes data portioning information for portions of the other data and deterministic function representations of the portions of the other data.

4. The method of claim 3 , wherein the comparing further comprises:

generating deterministic function representations of the data; and

comparing the deterministic function representations of the data with the deterministic function representations of the portions of the other data.

5. The method of claim 1 , wherein the accessing DSN storage information of the other data further comprises:

identifying a relationship between the data and the other data; and

accessing the DSN storage information of the other data based on the relationship.

6. The method of claim 1 further comprises:

the data being segmented into a plurality of segments, wherein the at least the portion of the data includes one or more of the plurality of segments.

7. The method of claim 1 , wherein generating the DSN storage information for the data further comprises:

associating the at least the portion of the data with the DSN storage information of the at least the portion of the other data.

8. The method of claim 1 , wherein the generating the DSN storage information for the data further comprises:

creating a segment allocation table that includes data portioning information for the portions of the data and deterministic function representations of the portions of the data, wherein the portions of the data include the at least the portion of the data and the remaining portions of the data.

9. A dispersed storage (DS) module comprises:

a first module, when operable within a computing device, causes the computing device to:

generate preliminary dispersed storage network (DSN) storage information for data to be stored in a DSN;

a second module, when operable within the computing device, causes the computing device to:

access DSN storage information regarding other data stored in the DSN;

a third module, when operable within the computing device, causes the computing device to:

compare the preliminary DSN storage information for the data with the DSN storage information regarding the other data; and

a fourth module, when operable within the computing device, causes the computing device to, when at least a portion of the data has compatible preliminary DSN storage information with DSN storage information of at least a portion of the other data:

generate DSN storage information for remaining portions of the data to produce remaining portions DSN storage information; and

generate DSN storage information for the data based on the DSN storage information of the at least the portion of the other data and the remaining portions DSN storage information.

10. The DS module of claim 9 further comprises:

a fifth module, when operable within the computing device, causes the computing device to:

dispersed storage error encode the remaining portions of the data to produce dispersed storage error encoded data; and

store the dispersed storage error encoded data in accordance with the remaining portions DSN storage information.

11. The DS module of claim 9 , wherein the second module is operable to access the DSN storage information of the other data by:

accessing one or more segment allocation tables for the other data, wherein a segment allocation table of the one or more segment allocation tables includes data portioning information for portions of the other data and deterministic function representations of the portions of the other data.

12. The DS module of claim 11 , wherein the third module is further operable to compare by:

generating deterministic function representations of the data; and

comparing the deterministic function representations of the data with the deterministic function representations of the portions of the other data.

13. The DS module of claim 9 , wherein the second module is further operable to access the DSN storage information of the other data by:

identifying a relationship between the data and the other data; and

accessing the DSN storage information of the other data based on the relationship.

14. The DS module of claim 9 , wherein the first module is further operable to:

segment the data into a plurality of segments, wherein the at least the portion of the data includes one or more of the plurality of segments.

15. The DS module of claim 9 , wherein the fourth module is further operable to generate the DSN storage information for the data by:

associating the at least the portion of the data with the DSN storage information of the at least the portion of the other data.

16. The DS module of claim 9 , wherein the fourth module is further operable to generate the DSN storage information for the data by:

creating a segment allocation table that includes data portioning information for the portions of the data and deterministic function representations of the portions of the data, wherein the portions of the data include the at least the portion of the data and the remaining portions of the data.

Assignments (6)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 8, 2012
From: LEGGETTE, WESLEY; RESCH, JASON K.
To: CLEVERSAFE, INC.
Reel/Frame 028171/0330 →