IP Library Granted Patent US 10,530,862
Granted Patent B2
US 10,530,862 · App. 15/848,196 · Granted Jan 7, 2020

Determining slices to rebuild from low-level failures

Inventors: Michael Christian Isely (Batavia, IL); Jason K. Resch (Chicago, IL)
Assignee: PURE STORAGE, INC.
H04L67/1097H03M13/09H03M13/1515H03M13/3761
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,530,862
App. No.
15/848,196
Granted
Jan 7, 2020
Kind
B2
Abstract

A distributed storage network (DSN) includes multiple distributed storage task execution (DST EX) units, each employing multiple memory portions to store encoded data slices. A DST EX unit detects a physical storage failure associated with an affected memory portion of a storage unit included in the DST EX unit. A memory portion identifier of the affected memory portion is used to identify a range of impacted encoded data slices associated with the affected memory portion, and in some cases specific encoded data slices within that range. The DST Ex unit issues rebuilding information to the DSN. The rebuilding information includes at least one identifier associated with at least one impacted encoded data slice included in the range of impacted encoded data slices.

Claims (63)

1. A method for use in a distributed storage network (DSN) including a plurality of distributed storage task execution (DST EX) units, each of the plurality of DST EX units employing a plurality of memory portions to store encoded data slices, the method comprising:

detecting, by a DST EX unit, a physical storage failure associated with an affected memory portion of a storage unit included in the DST EX unit;

determining, by the DST EX unit, a memory portion identifier of the affected memory portion;

identifying, by the DST EX unit, at least a range of impacted encoded data slices associated with the affected memory portion; and

issuing, by the DST EX unit, rebuilding information to the DSN, the rebuilding information includes at least one identifier associated with at least one impacted encoded data slice included in the at least a range of impacted encoded data slices.

2. The method of claim 1 , further comprising:

identifying slice names of specific impacted encoded data slices associated with the affected memory portion.

3. The method of claim 1 , further comprising:

facilitating performance of an integrity check, the integrity check verifying that at least one impacted encoded data slice included in the at least a range of impacted encoded data slices is actually corrupted.

4. The method of claim 1 , wherein identifying at least a range of impacted encoded data slices includes:

accessing a physical location to slice name table utilizing the memory portion identifier.

5. The method of claim 1 , further comprising:

generating the rebuilding information to include slice names of each impacted encoded data slices.

6. The method of claim 1 , further comprising:

rebuilding the at least one impacted encoded data slice to generate a rebuilt encoded data slice; and

storing the rebuilt encoded data slice in another memory portion of the DST EX unit.

7. The method of claim 1 , further comprising:

issuing the rebuilding information to at least one of a rebuilding module, an integrity processing unit, another DST EX unit, or a DST processing unit.

8. A distributed storage task execution (DST EX) unit for use in a distributed storage network (DSN), the DST EX unit comprising:

a processor and associated memory;

one or more distributed storage (DS) memories coupled to the processor and associated memory, the one or more DS memories including a plurality of memory portions used by the processor and associated memory to store encoded data slices;

the processor and associated memory configured to:

detect a physical storage failure associated with an affected memory portion of the one or more DS memories;

determine a memory portion identifier of the affected memory portion;

identify at least a range of impacted encoded data slices associated with the affected memory portion; and

issue rebuilding information to the DSN, the rebuilding information includes at least one identifier associated with at least one impacted encoded data slice included in the at least a range of impacted encoded data slices.

9. The distributed storage task execution (DST EX) unit of claim 8 , the processor and associated memory further configured to:

identify slice names of specific impacted encoded data slices associated with the affected memory portion.

10. The distributed storage task execution (DST EX) unit of claim 8 , the processor and associated memory further configured to:

facilitate performance of an integrity check, the integrity check verifying that at least one impacted encoded data slice included in the at least a range of impacted encoded data slices is actually corrupted.

11. The distributed storage task execution (DST EX) unit of claim 8 , the processor and associated memory further configured to:

identify at least a range of impacted encoded data slices by accessing a physical location to slice name table utilizing the memory portion identifier.

12. The distributed storage task execution (DST EX) unit of claim 8 , the processor and associated memory further configured to:

generate the rebuilding information to include slice names of each impacted encoded data slices.

13. The distributed storage task execution (DST EX) unit of claim 8 , the processor and associated memory further configured to:

rebuild the at least one impacted encoded data slice to generate a rebuilt encoded data slice; and

store the rebuilt encoded data slice in another memory portion.

14. The distributed storage task execution (DST EX) unit of claim 8 , the processor and associated memory further configured to:

issue the rebuilding information to at least one of a rebuilding module, an integrity processing unit, another DST EX unit, or a DST processing unit.

15. A distributed storage network (DSN) comprising:

a set of distributed storage task execution (DST EX) units, at least one DST EX unit included in the set of DST EX units including:

a processor and associated memory;

one or more distributed storage (DS) memories coupled to the processor and associated memory, the one or more DS memories including a plurality of memory portions used by the processor and associated memory to store encoded data slices;

the processor and associated memory configured to:

detect a physical storage failure associated with an affected memory portion of the one or more DS memories;

determine a memory portion identifier of the affected memory portion;

identify at least a range of impacted encoded data slices associated with the affected memory portion; and

issue rebuilding information to the DSN, the rebuilding information includes at least one identifier associated with at least one impacted encoded data slice included in the at least a range of impacted encoded data slices.

16. The distributed storage network (DSN) of claim 15 , the processor and associated memory further configured to:

identify slice names of specific impacted encoded data slices associated with the affected memory portion.

17. The distributed storage network (DSN) of claim 15 , the DSN further including:

an integrity processing unit coupled to the at least one DST EX unit; and

the DST EX unit configured to verify that at least one impacted encoded data slice included in the at least a range of impacted encoded data slices is actually corrupted by requesting the integrity processing unit to perform an integrity check.

18. The distributed storage network (DSN) of claim 15 , the processor and associated memory further configured to:

identify at least a range of impacted encoded data slices by accessing a physical location to slice name table utilizing the memory portion identifier.

19. The distributed storage network (DSN) of claim 15 , the processor and associated memory further configured to:

generate the rebuilding information to include slice names of each impacted encoded data slices.

20. The distributed storage network (DSN) of claim 15 , DSN further including:

a rebuilding module coupled to the at least one DST EX unit, the rebuilding module configured to rebuild encoded data slices on behalf of the at least one DST EX unit;

the at least one DST EX unit configured to:

issue the rebuilding information to the rebuilding module;

receive a rebuilt encoded data slice from the rebuilding module; and

store the rebuilt encoded data slice in another memory portion.

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 DELETE 15/174/279 AND 15/174/596 PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 49555 FRAME: 530. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 7, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 051495/0831 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049555/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2017
From: ISELY, MICHAEL CHRISTIAN; RESCH, JASON K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044454/0068 →
Cited By (5)
US 12,204,403 US 12,242,337 US 12,346,561 US 12,405,857 US 12,417,176