IP Library Granted Patent US 11,314,608
Granted Patent B1
US 11,314,608 · App. 17/061,922 · Granted Apr 26, 2022

Creating and distributing spare capacity of a disk array

Inventors: Kuolin Hua (Natick, MA); Kunxiu Gao (Boxborough, MA)
Assignee: DELL PRODUCTS L.P.
G06F11/2094G06F3/0619G06F3/0631G06F3/0689G06F2201/85
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 11,314,608
App. No.
17/061,922
Granted
Apr 26, 2022
Kind
B1
Abstract

A subset of drives with protection groups that have D data members and P parity members is created with (W+1) drives each having W partitions where W=(D+P). A single partition protection group is created in the lowest numbered partition of the W lowest numbered drives. Spares are created at drive X partition Y that satisfy X+Y=W+2. Members of additional protection groups with W members are symmetrically distributed on remaining partitions such that the protection group member at drive X partition index Y belongs to protection group N: if (X+Y)<(W+2), then N=(X+Y−2); and if (X+Y)>(W+2), then N=(X+Y−W−2). The spares are used to rebuild partitions in the event of drive failure. When a new drive is added the first W protection group members in the lowest numbered unrotated partition are rotated onto the new drive. The single partition protection group is excluded from rotation. Partitions vacated by rotated protection group members and a rotated spare are used to create a new protection group. The drive subset is split after enough new drives have been added.

Claims (38)

1. A method of creating and distributing spare capacity on a scalable drive subset on which protection groups are maintained, comprising:

creating W=(D+P) partitions that are equal in size and number on (W+1) drives, wherein the partitions are sequentially ordered, and the drives are sequentially ordered;

creating a first vertical protection group that has D data members and P parity members in one partition of W of the drives;

creating spares at drive X partition Y that satisfy X+Y=W+2; and

symmetrically distributing members of additional protection groups with W members on remaining partitions;

whereby the spares are distributed such that all protection group members on a failed one of the drives can be relocated to ones of the spares such that no more than one member of any of the protection groups is located on a single one of the drives.

2. The method of claim 1 comprising symmetrically distributing members of additional protection groups such that the protection group member at drive X partition index Y belongs to protection group N, where if (X+Y)<(W+2), then N=(X+Y−2).

3. The method of claim 1 comprising symmetrically distributing members of additional protection groups such that the protection group member at drive X partition index Y belongs to protection group N, where if (X+Y)>(W+2), then N=(X+Y−W−2).

4. The method of claim 1 comprising creating the first protection group in a lowest numbered partition of the W lowest numbered drives.

5. The method of claim 1 comprising scaling the drive subset by adding new drives in single drive increments.

6. The method of claim 5 comprising, responsive to addition of a new drive, rotating the first W protection group members in the lowest numbered unrotated partition, excluding members of the vertical protection group, onto the new drive.

7. The method of claim 6 comprising utilizing partitions vacated by rotated protection group members and a rotated spare to create a new protection group.

8. An apparatus, comprising:

a plurality of non-volatile drives;

a plurality of interconnected compute nodes that manage access to the drives; and

a drive manager comprising program code on a non-transitory, computer-readable medium, the drive manager configured to:

create W=(D+P) partitions that are equal in size and number on (W+1) drives, wherein the partitions are sequentially ordered, and the drives are sequentially ordered;

create a first vertical protection group that has D data members and P parity members in one partition of W of the drives;

create spares at drive X partition Y that satisfy X+Y=W+2; and

symmetrically distribute members of additional protection groups with W members on remaining partitions;

whereby the spares are distributed such that all protection group members on a failed one of the drives can be relocated to ones of the spares such that no more than one member of any of the protection groups is located on a single one of the drives.

9. The apparatus of claim 8 wherein the drive manager distributes members of additional protection groups such that the protection group member at drive X partition index Y belongs to protection group N, where if (X+Y)<(W+2), then N=(X+Y−2).

10. The apparatus of claim 8 wherein the drive manager symmetrically distributes members of additional protection groups such that the protection group member at drive X partition index Y belongs to protection group N, where if (X+Y)>(W+2), then N=(X+Y−W−2).

11. The apparatus of claim 8 wherein the drive manager creates the first protection group in a lowest numbered partition of the W lowest numbered drives.

12. The apparatus of claim 8 wherein the drive subset is scaled by adding new drives in single drive increments and wherein the drive manager is configured to rotate the first W protection group members in the lowest numbered unrotated partition, excluding members of the vertical protection group, onto a new drive.

13. The apparatus of claim 12 wherein the drive manager is configured to utilize partitions vacated by rotated protection group members and a rotated spare to create a new protection group.

14. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for using a computer system to create and distribute spare capacity on a scalable drive subset on which protection groups are maintained, the method comprising:

creating W=(D+P) partitions that are equal in size and number on (W+1) drives, wherein the partitions are sequentially ordered, and the drives are sequentially ordered;

creating a first vertical protection group that has D data members and P parity members in one partition of W of the drives;

creating spares at drive X partition Y that satisfy X+Y=W+2; and

symmetrically distributing members of additional protection groups with W members on remaining partitions;

whereby the spares are distributed such that all protection group members on a failed one of the drives can be relocated to ones of the spares such that no more than one member of any of the protection groups is located on a single one of the drives.

15. The non-transitory computer-readable storage medium of claim 14 wherein the method further comprises symmetrically distributing members of additional protection groups such that the protection group member at drive X partition index Y belongs to protection group N, where if (X+Y)<(W+2), then N=(X+Y−2).

16. The non-transitory computer-readable storage medium of claim 14 wherein the method further comprises symmetrically distributing members of additional protection groups such that the protection group member at drive X partition index Y belongs to protection group N, where if (X+Y)>(W+2), then N=(X+Y−W−2).

17. The non-transitory computer-readable storage medium of claim 14 wherein the method further comprises creating the first protection group in a lowest numbered partition of the W lowest numbered drives.

18. The non-transitory computer-readable storage medium of claim 14 wherein the method further comprises scaling the drive subset by adding new drives in single drive increments.

19. The non-transitory computer-readable storage medium of claim 18 wherein the method further comprises, responsive to addition of a new drive, rotating the first W protection group members in the lowest numbered unrotated partition, excluding members of the vertical protection group, onto the new drive.

20. The non-transitory computer-readable storage medium of claim 19 wherein the method further comprises utilizing partitions vacated by rotated protection group members and a rotated spare to create a new protection group.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2020
From: HUA, KUOLIN; GAO, KUNXIU
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053960/0695 →
Cited By (2)
US 12,353,302 US 12,468,601