IP Library Granted Patent US 8,694,545
Granted Patent B2
US 8,694,545 · App. 13/527,778 · Granted Apr 8, 2014

Storing data and metadata in a distributed 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,694,545
App. No.
13/527,778
Granted
Apr 8, 2014
Kind
B2
Abstract

A method begins by a dispersed storage (DS) processing module generating a set of encoded data slices based on a data segment of data and dispersed storage network (DSN) addressing information regarding metadata of the data. The method continues with the DS processing module generating a set of encoded metadata slices based on the metadata and DSN addressing information regarding the data. The method continues with the DS processing module generating a set of metadata write commands regarding storing the set of encoded metadata in a first set of DS units of DSN memory. The method continues with the DS processing module generating a set of data segment write commands regarding storing the set of encoded data slices in a second set of DS units of the DSN memory.

Claims (79)

1. A method for execution by one or more processing units of one or more computing devices, the method comprises:

generating, by the one or more processing units of the one or more computing devices, a set of encoded data slices based on a data segment of data and dispersed storage network (DSN) addressing information regarding metadata of the data;

generating a set of encoded metadata slices based on the metadata and DSN addressing information regarding the data;

generating a set of metadata write commands regarding storing the set of encoded metadata slices in a first set of dispersed storage (DS) units of DSN memory; and

generating a set of data segment write commands regarding storing the set of encoded data slices in a second set of DS units of the DSN memory.

2. The method of claim 1 further comprises:

the DSN addressing information regarding the metadata including a metadata source name; and

the DSN addressing information regarding the data including a data source name.

3. The method of claim 1 , wherein the generating the set of encoded data slices comprises:

combining the DSN addressing information regarding metadata with the data segment to produce an amended data segment; and

dispersed storage error encoding the amended data segment to produce the set of encoded data slices.

4. The method of claim 1 , wherein the generating the set of encoded data slices comprises:

dispersed storage error encoding the data segment to produce a preliminary set of encoded data slices; and

appending the DSN addressing information regarding the metadata with at least some of the encoded data slices of the preliminary set of encoded data slices to produce the set of encoded data slices.

5. The method of claim 1 , wherein the generating the set of encoded metadata slices comprises:

combining the DSN addressing information regarding the data with the metadata to produce amended metadata; and

dispersed storage error encoding the amended metadata to produce the set of encoded metadata slices.

6. The method of claim 1 , wherein the generating the set of encoded metadata slices comprises:

dispersed storage error encoding the metadata to produce a preliminary set of encoded metadata slices; and

appending the DSN addressing information regarding the data with at least some of the encoded metadata slices of the preliminary set of encoded metadata slices to produce the set of encoded metadata slices.

7. The method of claim 1 further comprises:

generating a database entry to include one or more of a data name of the data, the metadata, the DSN addressing information regarding the metadata, and DSN addressing information regarding the data; and

updating a database to include the database entry.

8. A method for execution by one or more processing units of one or more computing devices, the method comprises:

combining, by the one or more processing units of the one or more computing devices, dispersed storage network (DSN) addressing information regarding metadata with a data segment of data to produce an amended data segment, wherein the metadata is regarding the data;

combining DSN addressing information regarding the data with the metadata to produce amended metadata;

dispersed storage error encoding the amended data segment to produce a set of encoded data slices;

dispersed storage error encoding the amended metadata to produce a set of encoded metadata slices; and

outputting the set of encoded data slices and the set of encoded metadata slices for storage in a dispersed storage network.

9. The method of claim 8 further comprises:

the DSN addressing information regarding the metadata including a metadata source name; and

the DSN addressing information regarding the data including a data source name.

10. The method of claim 8 further comprises:

generating a database entry to include one or more of a data name of the data, the metadata, the DSN addressing information regarding the metadata, and DSN addressing information regarding the data; and

updating a database to include the database entry.

11. A computing device comprises:

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

generate a set of encoded data slices based on a data segment of data and dispersed storage network (DSN) addressing information regarding metadata of the data;

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

generate a set of encoded metadata slices based on the metadata and DSN addressing information regarding the data;

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

generate a set of metadata write commands regarding storing the set of encoded metadata slices in a first set of dispersed storage (DS) units of DSN memory; and

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

generate a set of data segment write commands regarding storing the set of encoded data slices in a second set of DS units of the DSN memory.

12. The computing device of claim 11 further comprises:

the DSN addressing information regarding the metadata includes a metadata source name; and

the DSN addressing information regarding the data includes a data source name.

13. The computing device of claim 11 , wherein the first module is operable to generate the set of encoded data slices by:

combining the DSN addressing information regarding metadata with the data segment to produce an amended data segment; and

dispersed storage error encoding the amended data segment to produce the set of encoded data slices.

14. The computing device of claim 11 , wherein the first module is operable to generate the set of encoded data slices by:

dispersed storage error encoding the data segment to produce a preliminary set of encoded data slices; and

appending the DSN addressing information regarding the metadata with at least some of the encoded data slices of the preliminary set of encoded data slices to produce the set of encoded data slices.

15. The computing device of claim 11 , wherein the second module is operable to generate the set of encoded metadata slices by:

combining the DSN addressing information regarding the data with the metadata to produce amended metadata; and

dispersed storage error encoding the amended metadata to produce the set of encoded metadata slices.

16. The computing device of claim 11 , wherein the second module is operable to generate the set of encoded metadata slices by:

dispersed storage error encoding the metadata to produce a preliminary set of encoded metadata slices; and

appending the DSN addressing information regarding the data with at least some of the encoded metadata slices of the preliminary set of encoded metadata slices to produce the set of encoded metadata slices.

17. The computing device of claim 11 further comprises:

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

generate a database entry to include one or more of a data name of the data, the metadata, the DSN addressing information regarding the metadata, and DSN addressing information regarding the data; and

update a database to include the database entry.

18. A computing device comprises:

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

combine dispersed storage network (DSN) addressing information regarding metadata with a data segment of data to produce an amended data segment, wherein the metadata is regarding the data; and

combine DSN addressing information regarding the data with the metadata to produce amended metadata;

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

dispersed storage error encode the amended data segment to produce a set of encoded data slices; and

dispersed storage error encode the amended metadata to produce a set of encoded metadata slices; and

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

output the set of encoded data slices and the set of encoded metadata slices for storage in a dispersed storage network.

19. The computing device of claim 18 further comprises:

the DSN addressing information regarding the metadata including a metadata source name; and

the DSN addressing information regarding the data including a data source name.

20. The computing device of claim 18 further comprises:

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

generate a database entry to include one or more of a data name of the data, the metadata, the DSN addressing information regarding the metadata, and DSN addressing information regarding the data; and

update a database to include the database entry.

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 Aug 13, 2012
From: LEGGETTE, WESLEY
To: CLEVERSAFE, INC.
Reel/Frame 028777/0940 →