IP Library Granted Patent US 11,709,595
Granted Patent B2
US 11,709,595 · App. 16/993,623 · Granted Jul 25, 2023

Moving data among disk slices located in different disk groups of at least one storage array

Inventors: Yuetao Ma (Beijing, CN); Changrui Shao (Beijing, CN); Haiying Tang (Beijing, CN); Xiaobo Zhang (Beijing, CN); Chun Ma (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0604G06F3/0647G06F3/0689G06F9/542
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,709,595
App. No.
16/993,623
Granted
Jul 25, 2023
Kind
B2
Abstract

A technique for storage management involves: determining multiple source disk slices from a storage array that provides redundant storage, a current disk group where each of the multiple source disk slices is located being different from a target disk group where the source disk slice is specified to be located; determining multiple destination disk slices from the target disk group based on the multiple source disk slices, the multiple destination disk slices being used to replace the multiple source disk slices; and causing data to be moved to the multiple destination disk slices from the multiple source disk slices. Accordingly, such a technique may improve the reliability of a storage system.

Claims (41)

1. A storage management method, comprising:

determining a plurality of source disk slices from a storage array that provides redundant storage, responsive to a determination that a current disk group where each of the plurality of source disk slices is located is different from a target disk group where the source disk slice is specified to be located, wherein the current disk group is a first plurality of disks and the target disk group is a second plurality of disks, wherein at least one of the disks in the first plurality of disks is not in the second plurality of disks, wherein the source disk slices comprise those slices within the storage array that are located on the at least one of the disks in the first plurality of disks that is not in the second plurality of disks, and wherein determining the plurality of source disk slices comprises generating at least one bitmap indicating positions, within the storage array, of those slices within the storage array that are located on the at least one of the disks in the first plurality of disks that is not in the second plurality of disks;

determining a plurality of destination disk slices from the target disk group based on the bitmap, the plurality of destination disk slices being used to replace the plurality of source disk slices; and

causing data to be moved to the plurality of destination disk slices from the plurality of source disk slices.

2. The method according to claim 1 , wherein determining the plurality of source disk slices comprises:

determining the storage array from a storage layer formed by a plurality of storage arrays; and

determining the plurality of source disk slices from the storage array.

3. The method according to claim 2 , wherein determining the plurality of source disk slices from the storage array comprises:

determining a first current disk group where a first disk slice in the storage array is located;

determining, based on attribution information of the first disk slice, a first target disk group where the first disk slice is specified to be located; and

determining, if it is determined that the first current disk group is different from the first target disk group, the first disk slice as one of the plurality of source disk slices.

4. The method according to claim 1 , wherein causing the data to be moved to the plurality of destination disk slices from the plurality of source disk slices comprises:

marking the data of the storage array as data to be moved; and

sending a notification to a mapper for performing the movement of a storage array that there is a storage array to be moved to cause the mapper to move the data to be moved from the plurality of source disk slices in the storage array to the plurality of destination disk slices.

5. The method according to claim 1 , further comprising:

causing, in response to receiving a write request for a source disk slice in the plurality of source disk slices while data in the source disk slice is being moved, data targeted by the write request to be written to both the source disk slice and a destination disk slice in the plurality of destination disk slices.

6. The method according to claim 1 , wherein moving the data to the plurality of destination disk slices from the plurality of source disk slices balances storage resource utilization in the storage array.

7. The method according to claim 6 , wherein at least one of the source disk slices is located on a disk in the current disk group that has a high usage rate; and

wherein the data on the source disk slice located on the disk in the current disk group that has the high usage rate is copied to one of the destination disk slices that is idle and that is located on a disk in the target disk group that has a low usage rate.

8. An electronic device, comprising:

at least one processing unit; and

at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, wherein the instructions, when executed by the at least one processing unit, cause the device to perform actions, the actions comprising:

determining a plurality of source disk slices from a storage array that provides redundant storage, responsive to a determination that a current disk group where each of the plurality of source disk slices is located is different from a target disk group where the source disk slice is specified to be located, wherein the current disk group is a first plurality of disks and the target disk group is a second plurality of disks, wherein at least one of the disks in the first plurality of disks is not in the second plurality of disks, wherein the source disk slices comprise those slices within the storage array that are located on the at least one of the disks in the first plurality of disks that is not in the second plurality of disks, and wherein determining the plurality of source disk slices comprises generating at least one bitmap indicating positions, within the storage array, of those slices within the storage array that are located on the at least one of the disks in the first plurality of disks that is not in the second plurality of disks;

determining a plurality of destination disk slices from the target disk group based on the bitmap, the plurality of destination disk slices being used to replace the plurality of source disk slices; and

causing data to be moved to the plurality of destination disk slices from the plurality of source disk slices.

9. The device according to claim 8 , wherein determining the plurality of source disk slices comprises:

determining the storage array from a storage layer formed by a plurality of storage arrays; and

determining the plurality of source disk slices from the storage array.

10. The device according to claim 9 , wherein determining the plurality of source disk slices from the storage array comprises:

determining a first current disk group where a first disk slice in the storage array is located;

determining, based on attribution information of the first disk slice, a first target disk group where the first disk slice is specified to be located; and

determining, if it is determined that the first current disk group is different from the first target disk group, the first disk slice as one of the plurality of source disk slices.

11. The device according to claim 8 , wherein causing the data to be moved to the plurality of destination disk slices from the plurality of source disk slices comprises:

marking the data of the storage array as data to be moved; and

sending a notification to a mapper for performing the movement of a storage array that there is a storage array to be moved to cause the mapper to move the data to be moved from the plurality of source disk slices in the storage array to the plurality of destination disk slices.

12. The device according to claim 8 , wherein the actions further comprise:

causing, in response to receiving a write request for a source disk slice in the plurality of source disk slices while data in the source disk slice is being moved, data targeted by the write request to be written to both the source disk slice and a destination disk slice in the plurality of destination disk slices.

13. A computer program product having a non-transitory computer readable medium which stores a set of instructions to perform storage management; the set of instructions, when carried out by computerized circuitry, causing the computerized circuitry to perform a method of:

determining a plurality of source disk slices from a storage array that provides redundant storage, responsive to a determination that a current disk group where each of the plurality of source disk slices is located is different from a target disk group where the source disk slice is specified to be located, wherein the current disk group is a first plurality of disks and the target disk group is a second plurality of disks, wherein at least one of the disks in the first plurality of disks is not in the second plurality of disks, wherein the source disk slices comprise those slices within the storage array that are located on the at least one of the disks in the first plurality of disks that is not in the second plurality of disks, and wherein determining the plurality of source disk slices comprises generating at least one bitmap indicating positions, within the storage array, of those slices within the storage array that are located on the at least one of the disks in the first plurality of disks that is not in the second plurality of disks;

determining a plurality of destination disk slices from the target disk group based on the bitmap, the plurality of destination disk slices being used to replace the plurality of source disk slices; and

causing data to be moved to the plurality of destination disk slices from the plurality of source disk slices.

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 9, 2020
From: MA, YUETAO; SHAO, CHANGRUI; TANG, HAIYING; ZHANG, XIAOBO; MA, CHUN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053724/0521 →