IP Library Granted Patent US 11,099,992
Granted Patent B2
US 11,099,992 · App. 16/681,175 · Granted Aug 24, 2021

Method, device and computer readable storage media for managing storage system

Inventors: Xinlei Xu (Beijing, CN); Ruiyong Jia (Beijing, CN); Liam Xiongcheng Li (Beijing, CN); Lifeng Yang (Beijing, CN); Jian Gao (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F12/0828G06F3/0604G06F3/0611G06F3/0634G06F3/0689G06F12/0811G06F12/0846G06F12/0897
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,099,992
App. No.
16/681,175
Granted
Aug 24, 2021
Kind
B2
Abstract

Embodiments include a method performed by a computing device. The method includes (a) receiving a plurality of access requests to access data of a multilayered storage system; (b) in response to determining that a first access request can be served from a top data layer, executing the first access request by accessing the top data layer; (c) in response to determining that a second access request cannot be served from the top data layer, determining whether a current concurrency number of the top data layer is less than a permitted concurrency number (PCN) of the top data layer; and (d) in response to determining that the current concurrency number of the top data layer is not less than the PCN, waiting until the current concurrency number of the top data layer is less than the PCN and then executing the second access request by accessing another data layer below the top layer.

Claims (40)

1. A method performed by a computing device, the method comprising:

receiving a plurality of access requests to access data of a multilayered storage system;

in response to determining that a first access request of the plurality can be served from a top data layer of the multilayered storage system, executing the first access request by accessing the top data layer;

in response to determining that a second access request of the plurality cannot be served from the top data layer, determining whether a current concurrency number of the top data layer is less than a permitted concurrency number (PCN) of the top data layer; and

in response to determining that the current concurrency number of the top data layer is not less than the PCN of the top data layer, waiting until the current concurrency number of the top data layer is less than the PCN of the top data layer and then executing the second access request by accessing another data layer of the multilayered storage system below the top layer.

2. The method of claim 1 wherein the top data layer is a volatile memory cache and the other data layer is an array of storage disks.

3. The method of claim 1 wherein the top data layer is a top-level volatile memory cache and the other data layer is a lower-level solid-state disk (SSD) cache above an even lower-level array of storage disks.

4. The method of claim 3 wherein executing the second access request by accessing the other data layer includes, in response to determining that the second access request of the plurality can be served from the lower-level SSD cache, executing the second access request by accessing the lower-level SSD cache.

5. The method of claim 3 wherein executing the second access request by accessing the other data layer includes, in response to determining that the second access request of the plurality cannot be served from the lower-level SSD cache, executing the second access request by accessing the array of storage disks.

6. The method of claim 3 wherein executing the second access request by accessing the other data layer includes:

in response to determining that the second access request of the plurality cannot be served from the lower-level SSD cache, executing the second access request by accessing the lower-level SSD cache, determining whether a current concurrency number of the lower-level SSD cache is less than a PCN of the lower-level SSD cache; and

in response to determining that the current concurrency number of the lower-level SSD cache is not less than the PCN of the lower-level SSD cache, waiting until the current concurrency number of the to lower-level SSD cache is less than the PCN of the lower-level SSD cache and then executing the second access request by accessing the array of storage disks.

7. The method of claim 6 wherein the method further comprises:

setting a PCN of the array of storage disks to be equal to a product of:

a number of storage disks in the array;

a fraction of the storage disks used for storing data rather than parity information;

a number of concurrent access requests permitted by a storage disk; and

a health value of the array;

setting the PCN of the lower-level SSD cache to be equal to a fraction of the PCN of the array; and

setting the PCN of the of the top data layer to be equal to the PCN of the array minus the PCN of the lower-level SSD cache.

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

setting a PCN of the array of storage disks to be equal to a product of:

a number of storage disks in the array;

a fraction of the storage disks used for storing data rather than parity information;

a number of concurrent access requests permitted by a storage disk; and

a health value of the array; and

setting the PCN of the of the top data layer to be equal to a fraction of the PCN of the array.

9. The method of claim 1 wherein executing the second access request by accessing another data layer of the multilayered storage system below the top layer includes:

incrementing the current concurrency number of the top data layer upon beginning to access the other data layer; and

decrementing the current concurrency number of the top data layer upon finishing to access the other data layer.

10. An apparatus comprising processing circuitry coupled to memory configured to:

receive a plurality of access requests to access data of a multilayered storage system;

in response to determining that a first access request of the plurality can be served from a top data layer of the multilayered storage system, execute the first access request by accessing the top data layer;

in response to determining that a second access request of the plurality cannot be served from the top data layer, determine whether a current concurrency number of the top data layer is less than a permitted concurrency number (PCN) of the top data layer; and

in response to determining that the current concurrency number of the top data layer is not less than the PCN of the top data layer, wait until the current concurrency number of the top data layer is less than the PCN of the top data layer and then execute the second access request by accessing another data layer of the multilayered storage system below the top layer.

11. A computer program product comprising a non-transitory computer-readable storage medium having computer-readable program instructions thereon, which when executed by processing circuitry, cause the processing circuitry to:

receive a plurality of access requests to access data of a multilayered storage system;

in response to determining that a first access request of the plurality can be served from a top data layer of the multilayered storage system, execute the first access request by accessing the top data layer;

in response to determining that a second access request of the plurality cannot be served from the top data layer, determine whether a current concurrency number of the top data layer is less than a permitted concurrency number (PCN) of the top data layer; and

in response to determining that the current concurrency number of the top data layer is not less than the PCN of the top data layer, wait until the current concurrency number of the top data layer is less than the PCN of the top data layer and then execute the second access request by accessing another data layer of the multilayered storage system below the top layer.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 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
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052216/0758) Recorded Jun 23, 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 060438/0680 →
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 AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2020
From: WOOD, JEFFERY O.
To: WOOD INDUSTRIES INC.
Reel/Frame 052937/0420 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
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 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2020
From: XU, XINLEI; JIA, RUIYONG; LI, LIAM; YANG, LIFENG; GAO, JIAN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051519/0220 →