IP Library Granted Patent US 10,152,254
Granted Patent B1
US 10,152,254 · App. 15/581,935 · Granted Dec 11, 2018

Distributing mapped raid disk extents when proactively copying from an EOL disk

Inventors: Jamin Kang (Beijing, CN); Lili Chen (Hopkinton, MA); Jian Gao (Beijing, CN); Hongpo Gao (Beijing, CN); Geng Han (Beijing, CN); Jibing Dong (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0619G06F3/065G06F3/0683
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,152,254
App. No.
15/581,935
Granted
Dec 11, 2018
Kind
B1
Abstract

A method performed in a Mapped RAID system includes: (a) in response to a source disk (SD) reaching EOL status: (1) copying a first source disk extent (DE) (belonging to a first RAID extent) from the SD to a first spare DE on a first destination disk and (2) copying a second source DE from the SD to a second spare DE (belonging to a second RAID extent) on a second destination disk, (b) in response to completely copying the first source DE from the SD to the first spare DE, mapping the first spare DE to belong to the first RAID extent in place of the first source DE, and (c) in response to completely copying the second source DE from the SD to the second spare DE, mapping the second spare DE to belong to the second RAID extent in place of the second source DE.

Claims (89)

1. A method performed by a data storage system apparatus of proactively responding to an imminent failure within a set of disks arranged in a Mapped RAID (Redundant Array of Independent Disks) configuration, the method comprising:

in response to receiving a notification that a source disk of the set of disks has reached an end-of-life (EOL) status, the EOL status indicating that the source disk is still functional but is likely to fail imminently:

copying a first source disk extent from the source disk to a first spare disk extent on a first destination disk, the first source disk extent belonging to a first RAID extent; and

copying a second source disk extent from the source disk to a second spare disk extent on a second destination disk, the second source disk extent belonging to a second RAID extent distinct from the first RAID extent, wherein:

the first source disk extent is distinct from the second source disk extent, and

the source disk, the first destination disk, and the second destination disk are distinct members of the set of disks;

in response to completely copying the first source disk extent from the source disk to the first spare disk extent, mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent; and

in response to completely copying the second source disk extent from the source disk to the second spare disk extent, mapping the second spare disk extent on the second destination disk to belong to the second RAID extent in place of the second source disk extent.

2. The method of claim 1 wherein copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk is performed in parallel with copying the second source disk extent from the source disk to the second spare disk extent on the second destination disk.

3. The method of claim 1 wherein the method further comprises, while copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk:

receiving a write command directed at an address of the first RAID extent currently mapped to the first source disk extent; and

in response to receiving the write command, performing the write command on both the first source disk extent on the source disk and the first spare disk extent on the first destination disk.

4. The method of claim 3 wherein the method further comprises, while copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk:

receiving a read command directed at another address of the first RAID extent currently mapped to the first source disk extent; and

in response to receiving the read command, performing the read command on only the first source disk extent on the source disk.

5. The method of claim 3 wherein the method further comprises, after mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent:

receiving a data storage command directed at an address of the first RAID extent which was previously mapped to the first source disk extent; and

in response to receiving the data storage command, performing the data storage command on only the first spare disk extent on the first destination disk.

6. The method of claim 1 wherein the method further comprises, in response to receiving the notification that the source disk has reached the EOL status, selecting, as the first destination disk, a disk of the set of disks which is currently experiencing a below average volume of storage commands.

7. The method of claim 1 wherein the method further comprises, after mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent:

beginning to copy a third source disk extent from the source disk to a third spare disk extent on a third destination disk, the third source disk extent belonging to a third RAID extent;

while copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk, detecting that a response time for data storage commands directed at the third source disk extent has exceeded a threshold;

in response to detecting that the response time for data storage commands directed at the third source disk extent has exceeded the threshold:

terminating copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk;

marking the third source disk extent as having failed;

using data from other disk extents mapped to the third RAID extent, rebuilding data of the third source disk extent onto the third spare disk extent on the third destination disk; and

in response to completely rebuilding the data of the third source disk extent onto the third spare disk extent on the third destination disk, mapping the third spare disk extent on the third destination disk to belong to the third RAID extent in place of the third source disk extent.

8. The method of claim 1 wherein the method further comprises, after mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent:

beginning to copy a third source disk extent from the source disk to a third spare disk extent on a third destination disk, the third source disk extent belonging to a third RAID extent;

while copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk, detecting that an error count for data storage commands directed at the third source disk extent has exceeded a threshold;

in response to detecting that the error count for data storage commands directed at the third source disk extent has exceeded the threshold:

terminating copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk;

marking the third source disk extent as having failed;

using data from other disk extents mapped to the third RAID extent, rebuilding data of the third source disk extent onto the third spare disk extent on the third destination disk; and

in response to completely rebuilding the data of the third source disk extent onto the third spare disk extent on the third destination disk, mapping the third spare disk extent on the third destination disk to belong to the third RAID extent in place of the third source disk extent.

9. An apparatus comprising:

a set of disks arranged in a Mapped RAID (Redundant Array of Independent Disks) configuration; and

processing circuitry coupled to memory configured to proactively respond to an imminent failure within the set of disks by:

in response to receiving a notification that a source disk of the set of disks has reached an end-of-life (EOL) status, the EOL status indicating that the source disk is still functional but is likely to fail imminently:

copying a first source disk extent from the source disk to a first spare disk extent on a first destination disk, the first source disk extent belonging to a first RAID extent; and

copying a second source disk extent from the source disk to a second spare disk extent on a second destination disk, the second source disk extent belonging to a second RAID extent distinct from the first RAID extent, wherein:

the first source disk extent is distinct from the second source disk extent, and

the source disk, the first destination disk, and the second destination disk are distinct members of the set of disks;

in response to completely copying the first source disk extent from the source disk to the first spare disk extent, mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent; and

in response to completely copying the second source disk extent from the source disk to the second spare disk extent, mapping the second spare disk extent on the second destination disk to belong to the second RAID extent in place of the second source disk extent.

10. A computer program product comprising a non-transitory computer-readable storage medium storing a set of instructions, which, when executed by a data storage system (DSS) computing device, causes the DSS computing device to proactively respond to an imminent failure within a set of disks arranged in a Mapped RAID (Redundant Array of Independent Disks) configuration by:

in response to receiving a notification that a source disk of the set of disks has reached an end-of-life (EOL) status, the EOL status indicating that the source disk is still functional but is likely to fail imminently:

copying a first source disk extent from the source disk to a first spare disk extent on a first destination disk, the first source disk extent belonging to a first RAID extent; and

copying a second source disk extent from the source disk to a second spare disk extent on a second destination disk, the second source disk extent belonging to a second RAID extent distinct from the first RAID extent, wherein:

the first source disk extent is distinct from the second source disk extent, and

the source disk, the first destination disk, and the second destination disk are distinct members of the set of disks;

in response to completely copying the first source disk extent from the source disk to the first spare disk extent, mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent; and

in response to completely copying the second source disk extent from the source disk to the second spare disk extent, mapping the second spare disk extent on the second destination disk to belong to the second RAID extent in place of the second source disk extent.

11. The computer program product of claim 10 wherein copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk is performed in parallel with copying the second source disk extent from the source disk to the second spare disk extent on the second destination disk.

12. The computer program product of claim 10 wherein the set of instructions, when executed by the DSS computing device, further cause the DSS computing device to, while copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk:

receive a write command directed at an address of the first RAID extent currently mapped to the first source disk extent; and

in response to receiving the write command, perform the write command on both the first source disk extent on the source disk and the first spare disk extent on the first destination disk.

13. The computer program product of claim 12 wherein the set of instructions, when executed by the DSS computing device, further cause the DSS computing device to, while copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk:

receive a read command directed at another address of the first RAID extent currently mapped to the first source disk extent; and

in response to receiving the read command, perform the read command on only the first source disk extent on the source disk.

14. The computer program product of claim 12 wherein the set of instructions, when executed by the DSS computing device, further cause the DSS computing device to, after mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent:

receive a data storage command directed at an address of the first RAID extent which was previously mapped to the first source disk extent; and

in response to receiving the data storage command, perform the data storage command on only the first spare disk extent on the first destination disk.

15. The computer program product of claim 10 wherein the set of instructions, when executed by the DSS computing device, further cause the DSS computing device to, in response to receiving the notification that the source disk has reached the EOL status, select, as the first destination disk, a disk of the set of disks which is currently experiencing a below average volume of storage commands.

16. The computer program product of claim 10 wherein the set of instructions, when executed by the DSS computing device, further cause the DSS computing device to, after mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent:

begin to copy a third source disk extent from the source disk to a third spare disk extent on a third destination disk, the third source disk extent belonging to a third RAID extent;

while copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk, detect that a response time for data storage commands directed at the third source disk extent has exceeded a threshold;

in response to detecting that the response time for data storage commands directed at the third source disk extent has exceeded the threshold:

terminate copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk;

mark the third source disk extent as having failed;

using data from other disk extents mapped to the third RAID extent, rebuild data of the third source disk extent onto the third spare disk extent on the third destination disk; and

in response to completely rebuilding the data of the third source disk extent onto the third spare disk extent on the third destination disk, map the third spare disk extent on the third destination disk to belong to the third RAID extent in place of the third source disk extent.

17. The computer program product of claim 10 wherein the set of instructions, when executed by the DSS computing device, further cause the DSS computing device to, after mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent:

begin to copy a third source disk extent from the source disk to a third spare disk extent on a third destination disk, the third source disk extent belonging to a third RAID extent;

while copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk, detect that an error count for data storage commands directed at the third source disk extent has exceeded a threshold;

in response to detecting that the error count for data storage commands directed at the third source disk extent has exceeded the threshold:

terminate copying the third source disk extent from the source disk to the third spare disk extent on the third destination disk;

mark the third source disk extent as having failed;

using data from other disk extents mapped to the third RAID extent, rebuild data of the third source disk extent onto the third spare disk extent on the third destination disk; and

in response to completely rebuilding the data of the third source disk extent onto the third spare disk extent on the third destination disk, map the third spare disk extent on the third destination disk to belong to the third RAID extent in place of the third source disk extent.

18. The method of claim 1 wherein:

the first RAID extent is initially configured according to a first RAID level; and

in response to mapping the first spare disk extent on the first destination disk to belong to the first RAID extent in place of the first source disk extent, the first RAID extent remains configured according to the first RAID level.

19. The method of claim 1 wherein:

copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk is performed to the exclusion of copying the first source disk extent to any other disk of the set of disks aside from the first destination disk; and

copying the second source disk extent from the source disk to the second spare disk extent on the second destination disk is performed to the exclusion of copying the second source disk extent to any other disk of the set of disks aside from the second destination disk.

20. The method of claim 1 wherein the method further comprises:

selecting the first destination disk by choosing, as the first destination disk, a disk of the set of disks that does not already contain a disk extent belonging to the first RAID extent prior to copying the first source disk extent from the source disk to the first spare disk extent on the first destination disk; and

selecting the second destination disk by choosing, as the second destination disk, a disk of the set of disks that does not already contain a disk extent belonging to the second RAID extent prior to copying the second source disk extent from the source disk to the second spare disk extent on the second destination disk.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (042769/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2017
From: KANG, JAMIN; CHEN, LILI; GAO, JIAN; GAO, HONGPO; HAN, GENG; DONG, JIBING
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 042476/0799 →