IP Library Granted Patent US 11,327,666
Granted Patent B2
US 11,327,666 · App. 17/009,812 · Granted May 10, 2022

RAID member distribution for granular disk array growth

Inventor: Kuolin Hua (Natick, MA)
Assignee: Dell Products L.P.
G06F3/0623G06F3/0644G06F3/0689
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,327,666
App. No.
17/009,812
Granted
May 10, 2022
Kind
B2
Abstract

A subset of drives with protection groups that have D data members and P parity members is scaled in single drive increments. A plurality of indexed partitions equal in size and number are created on (D+P) indexed drives. Protection groups that have D data members and P parity members are created on individual partition indexes of the (D+P) drives. When a new drive is added some of the protection group members located on the (D+P) drives are selected using modulo arithmetic. The selected protection group members are relocated to the new drive and new protection groups are created using the partitions made available due to the relocations. When (D+P) new drives have been added the drive subset may be split into two drive subsets. The modulo arithmetic may include selecting the members of protection group X that are on partition X of drive Y that satisfy the condition (X−Y+N−1) modulo W=0, where N is a count of new drives added to the (D+P) drives and W=(D+P). Alternatively, the modulo arithmetic may include selecting the members of protection group X on partition X of drive Y that satisfy the condition (X+Y−N−1) modulo W=0.

Claims (36)

1. A method, comprising:

creating a plurality of indexed partitions equal in size and number on (D+P) indexed drives;

creating protection groups that have D data members and P parity members on individual partition indexes of the (D+P) drives;

adding a new drive with indexed partitions equal in size and number to the indexed partitions of the (D+P) drives;

selecting protection group members located on the (D+P) drives using modulo arithmetic with protection group number, partition number, drive number, and new drive count as inputs; and

relocating the selected protection group members to the new drive.

2. The method of claim 1 wherein selecting protection group members using modulo arithmetic comprises selecting members of protection group X at partition X of drive Y that satisfy (X−Y+N−1) modulo W=0, where N is a count of new drives added to the (D+P) drives and W=(D+P).

3. The method of claim 1 wherein selecting protection group members using modulo arithmetic comprises selecting members of protection group X at partition X of drive Y that satisfy (X+Y−N−1) modulo W=0, where N is a count of new drives added to the (D+P) drives and W=(D+P).

4. The method of claim 2 wherein creating indexed partitions equal in size and number on the (D+P) indexed drives comprises creating M*W partitions where M is a positive integer.

5. The method of claim 4 wherein relocating the selected protection group members to the new drive comprises relocating the selected protection group members from partition X of one of the (D+P) drives to partition X of the new drive.

6. The method of claim 5 comprising creating M new RAID (D+P) protection groups in partitions made available by on the (D+P) drives by relocating the selected protection group members to the new drive.

7. The method of claim 6 comprising adding more new drives and splitting the (D+P) drives from the new drives when N=(D+P).

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 configured to create a drive subset of (D+P) drives for implementation of protection groups that have D data members and P parity members, each of the selected drives having M*(D+P) sequentially indexed partitions; and

a drive manager responsive to addition of a new drive with indexed partitions equal in size and number to the indexed partitions of the (D+P) drives to select protection group members located on the (D+P) drives using modulo arithmetic with protection group number, partition number, drive number, and new drive count as inputs and relocate the selected protection group members to the new drive.

9. The apparatus of claim 8 wherein the drive manager selects members of protection group X at partition index X of drive Y that satisfy (X−Y+N−1) modulo W=0, where N is a count of new drives added to the (D+P) drives and W=(D+P).

10. The apparatus of claim 8 wherein the drive manager selects members of protection group X at partition index X of drive Y that satisfy (X+Y−N−1) modulo W=0, where N is a count of new drives added to the (D+P) drives and W=(D+P).

11. The apparatus of claim 9 wherein the drive manager creates M*W partitions where M is a positive integer.

12. The apparatus of claim 11 wherein the drive manager relocates the selected protection group members from partition X of one of the (D+P) drives to partition X of the new drive.

13. The apparatus of claim 12 wherein the drive manager creates M new RAID (D+P) protection groups in partitions made available by on the (D+P) drives by relocation of the selected protection group members to the new drive.

14. The apparatus of claim 13 wherein the drive manager splits the (D+P) drives from the new drives when N=(D+P).

15. 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 scale a subset of drives, the method comprising:

creating a plurality of indexed partitions equal in size and number on (D+P) indexed drives;

creating protection groups that have D data members and P parity members on individual partition indexes of the (D+P) drives;

adding a new drive with indexed partitions equal in size and number to the indexed partitions of the (D+P) drives;

selecting protection group members located on the (D+P) drives using modulo arithmetic with protection group number, partition number, drive number, and new drive count as inputs; and

relocating the selected protection group members to the new drive.

16. The computer-readable storage medium of claim 14 wherein the method further comprises selecting members of protection group X at partition X of drive Y that satisfy (X−Y+N−1) modulo W=0, where N is a count of new drives added to the (D+P) drives and W=(D+P).

17. The computer-readable storage medium of claim 14 wherein the method further comprises selecting members of protection group X at partition X of drive Y that satisfy (X+Y−N−1) modulo W=0, where N is a count of new drives added to the (D+P) drives and W=(D+P).

18. The computer-readable storage medium of claim 16 wherein the method further comprises creating M*W partitions where M is a positive integer.

19. The computer-readable storage medium of claim 18 wherein the method further comprises relocating the selected protection group members from partition X of one of the (D+P) drives to partition X of the new drive.

20. The computer-readable storage medium of claim 17 wherein the method further comprises creating M new RAID (D+P) protection groups in partitions made available by on the (D+P) drives by relocating the selected protection group members to the new drive.

21. The computer-readable storage medium of claim 17 wherein the method further comprises adding more new drives.

22. The computer-readable storage medium of claim 19 wherein the method further comprises splitting the (D+P) drives from the new drives when N=(D+P).

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 Sep 2, 2020
From: HUA, KUOLIN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053667/0375 →
Continuity (1)
Related Publication 20220066658A1 · Mar 3, 2022