IP Library Granted Patent US 11,556,255
Granted Patent B2
US 11,556,255 · App. 16/934,450 · Granted Jan 17, 2023

Method, device and computer program product for storage

Inventors: Rongrong Shang (Beijing, CN); Xiaobo Zhang (Beijing, CN); Haiying Tang (Beijing, CN); Changyu Feng (Beijing, CN); Jian Gao (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0631G06F3/0604G06F3/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,556,255
App. No.
16/934,450
Granted
Jan 17, 2023
Kind
B2
Abstract

Techniques involve determining the number of disks in a Redundant Array of Independent Disks (RAID) storage system, and the storage system comprises multiple types of mixed disks. The techniques further involve determining a target number of RAID sets to be allocated in the storage system according to the number of disks and a predetermined threshold, and then allocating the multiple types of disks to the RAID sets according to the target number and types of disks. Such techniques propose a way to allocate mixed disks to the corresponding RAID sets. When the RAID set grouping is performed to mixed disks of the storage system, the same type of disks are allocated in the same RAID set as much as possible, thereby improving the performance of the storage system.

Claims (97)

1. A method for storage, comprising:

determining a number of disks in a storage system, the storage system being based on Redundant Array of Independent Disks (RAID) and comprising multiple types of disks, the number of disks being less than or equal to a predetermined threshold;

determining, according to the number of disks and the predetermined threshold, a target number of RAID sets to be allocated in the storage system; and

allocating the multiple types of disks to the RAID sets according to the target number and types of disks;

wherein the multiple types of disks comprise a first type of disks and a second type of disks;

wherein determining a target number of RAID sets to be allocated in the storage system comprises:

in response to the determined number of disks being less than or equal to the predetermined threshold, determining that the target number of the RAID sets is a first value; and

wherein allocating the multiple types of disks to the RAID sets comprises:

in response to the determination that the target number of the RAID sets is the first value, determining a particular disk type to move to a RAID set based on whether a total number of the first type of disks is less than a width threshold;

when the total number of the first type of disks is greater than or equal to the width threshold, moving the second type of disks to a RAID set comprising the first type of disks; and

when the total number of the first type of disks is less than the width threshold, moving the first type of disks to a RAID set comprising the second type of disks.

2. The method of claim 1 , further comprising:

in accordance with a determination that a new disk is added into the storage system, determining a new target number of the RAID sets.

3. The method of claim 1 , further comprising:

providing a first storage service using a first RAID set comprising the first type of disks; and

providing a second storage service using a second RAID set comprising the second type of disks, a storage performance of the first storage service being better different than a storage performance of the second storage service.

4. The method according to claim 1 , wherein the first type of disks are non-volatile memory flash (NVME) solid state disks (SSDs), and the second type of disks are serial-attached SCSI (SAS) SSDs.

5. A method for storage, comprising:

determining the number of disks in a storage system, the storage system being based on Redundant Array of Independent Disks (RAID) and comprising multiple types of disks, the number of disks being greater than a predetermined threshold;

determining, according to the number of disks and the predetermined threshold, a target number of RAID sets to be allocated in the storage system; and

allocating the multiple types of disks to the RAID sets according to the target number and types of disks;

wherein the multiple types of disks comprise a first type of disks and a second type of disks;

wherein determining a target number of RAID sets to be allocated in the storage system comprises:

in response to the determined number of disks being greater than the predetermined threshold, determining that the target number of the RAID sets is greater than the first value; wherein allocating the multiple types of disks to the RAID sets comprises:

in response to the determination that the target number of the RAID sets is greater than the first value, determining a first number for allocating the first type of disks and a second number for allocating the second type of disks, a sum of the first number and the second number being equal to the target number; and

allocating the multiple types of disks to multiple RAID sets according to the target number of the RAID sets, the first number, and the second number; and

wherein allocating the multiple types of disks to multiple RAID sets comprises:

in response to the sum of the determined first number and the determined second number being equal to the target number, determining that at least one of a total number of the first type of disks and a total number of the second type of disks is less than a width threshold;

when the total number of the first type of disks is less than the width threshold, moving one or more of the second type of disks to a RAID set comprising the first type of disks; and

when the total number of the second type of disks is less than the width threshold, moving one or more of the first type of disks to a RAID set comprising the second type of disks.

6. The method of claim 5 , further comprising:

in accordance with a determination that a new disk is added into the storage system, determining a new target number of the RAID sets.

7. The method of claim 5 , further comprising:

providing a first storage service using a first RAID set comprising the first type of disks; and

providing a second storage service using a second RAID set comprising the second type of disks, a storage performance of the first storage service being different than a storage performance of the second storage service.

8. The method according to claim 5 , wherein the first type of disks are non-volatile memory flash (NVME) solid state disks (SSDs), and the second type of disks are serial-attached SCSI (SAS) SSDs.

9. An electronic device, comprising:

a processing unit; and

a memory coupled to the processing unit and storing instructions that, when executed by the processing unit, performing acts of:

determining the number of disks in a storage system, the storage system being based on Redundant Array of Independent Disks (RAID) and comprising multiple types of disks;

determining, according to the number of disks and a predetermined threshold, the target number of RAID sets to be allocated in the storage system; and

allocating the multiple types of disks to the RAID sets according to the target number and types of disks;

wherein the multiple types of disks comprise a first type of disks and a second type of disks;

wherein determining a target number of RAID sets to be allocated in the storage system comprises:

in accordance with a determination that the number of disks is less than or equal to the predetermined threshold, determining that the target number of the RAID sets is a first value; and

in accordance with a determination that the number of disks is greater than the predetermined threshold, determining that the target number of the RAID sets is greater than the first value; and

wherein allocating the multiple types of disks to the RAID sets comprises:

in accordance with a determination that the target number of the RAID sets is the first value, determining whether the number of the first type of disks is less than a width threshold;

in accordance with a determination that the number of the first type of disks is greater than or equal to the width threshold, moving the second type of disks to a RAID set comprising the first type of disks; and

in accordance with a determination that the number of the first type of disks is less than the width threshold, moving the first type of disks to a RAID set comprising the second type of disks.

10. The device of claim 9 , wherein the acts further comprise:

in accordance with a determination that a new disk is added into the storage system, determining a new target number of the RAID sets.

11. The device of claim 9 , wherein the acts further comprise:

providing a first storage service using a first RAID set comprising the first type of disks; and

providing a second storage service using a second RAID set comprising the second type of disks, a storage performance of the first storage service being different than a storage performance of the second storage service.

12. The device according to claim 9 , wherein the first type of disks are non-volatile memory flash (NVME) solid state disks (SSDs), and the second type of disks are serial-attached SCSI (SAS) SSDs.

13. An electronic device, comprising:

a processing unit; and

a memory coupled to the processing unit and storing instructions that, when executed by the processing unit, performing acts of:

determining the number of disks in a storage system, the storage system being based on Redundant Array of Independent Disks (RAID) and comprising multiple types of disks;

determining, according to the number of disks and a predetermined threshold, the target number of RAID sets to be allocated in the storage system; and

allocating the multiple types of disks to the RAID sets according to the target number and types of disks;

wherein the multiple types of disks comprise a first type of disks and a second type of disks;

wherein determining a target number of RAID sets to be allocated in the storage system comprises:

in accordance with a determination that the number of disks is less than or equal to the predetermined threshold, determining that the target number of the RAID sets is a first value; and

in accordance with a determination that the number of disks is greater than the predetermined threshold, determining that the target number of the RAID sets is greater than the first value;

wherein allocating the multiple types of disks to the RAID sets comprises:

in accordance with a determination that the target number of the RAID sets is greater than the first value, determining a first number for allocating the first type of disks and a second number for allocating the second type of disks; and

allocating the multiple types of disks to multiple RAID sets according to the target number of the RAID sets, the first number, and the second number; and

wherein allocating the multiple types of disks to multiple RAID sets comprises:

in accordance with a determination that a sum of the first number and the second number is equal to the target number:

in accordance with a determination that the number of the first type of disks is less than a width threshold, moving one or more of the second types of disks to a RAID set comprising the first type of disks; and

in accordance with a determination that the number of the second type of disks is less than the width threshold, moving one or more of the first type of disks to a RAID set comprising the second type of disks.

14. The device of claim 13 , wherein the acts further comprise:

in accordance with a determination that a new disk is added into the storage system, determining a new target number of the RAID sets.

15. The device of claim 13 , wherein the acts further comprise:

providing a first storage service using a first RAID set comprising the first type of disks; and

providing a second storage service using a second RAID set comprising the second type of disks, a storage performance of the first storage service being different than a storage performance of the second storage service.

16. The device according to claim 13 , wherein the first type of disks are non-volatile memory flash (NVME) solid state disks (SSDs), and the second type of disks are serial-attached SCSI (SAS) SSDs.

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

determining the number of disks in a storage system, the storage system being based on Redundant Array of Independent Disks (RAID) and comprising multiple types of disks;

determining, according to the number of disks and a predetermined threshold, a target number of RAID sets to be allocated in the storage system; and

allocating the multiple types of disks to the RAID sets according to the target number and types of disks;

wherein the multiple types of disks comprise a first type of disks and a second type of disks;

wherein determining a target number of RAID sets to be allocated in the storage system comprises:

in accordance with a determination that the number of disks is less than or equal to the predetermined threshold, determining that the target number of the RAID sets is a first value; and

in accordance with a determination that the number of disks is greater than the predetermined threshold, determining that the target number of the RAID sets is greater than the first value; and

wherein allocating the multiple types of disks to the RAID sets comprises:

in accordance with a determination that the target number of the RAID sets is the first value, determining whether the number of the first type of disks is less than a width threshold;

in accordance with a determination that the number of the first type of disks is greater than or equal to the width threshold, moving the second type of disks to a RAID set comprising the first type of disks; and

in accordance with a determination that the number of the first type of disks is less than the width threshold, moving the first type of disks to a RAID set comprising the second type of disks.

18. The computer program product of claim 17 , wherein the method further comprises:

in accordance with a determination that a new disk is added into the storage system, determining a new target number of the RAID sets.

19. The computer program product of claim 17 , wherein the method further comprises:

providing a first storage service using a first RAID set comprising the first type of disks; and

providing a second storage service using a second RAID set comprising the second type of disks, a storage performance of the first storage service being different than a storage performance of the second storage service.

20. The computer program product according to claim 17 , wherein the first type of disks are non-volatile memory flash (NVME) solid state disks (SSDs), and the second type of disks are serial-attached SCSI (SAS) SSDs.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 10, 2020
From: SHANG, RONGRONG; ZHANG, XIAOBO; TANG, HAIYING; FENG, CHANGYU; GAO, JIAN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053442/0140 →