IP Library Granted Patent US 10,846,094
Granted Patent B2
US 10,846,094 · App. 15/712,324 · Granted Nov 24, 2020

Method and system for managing data access in storage system

Inventors: LIfeng Yang (Beijing, CN); Xinlei Xu (Beijing, CN); Jian Gao (Beijing, CN); Ruiyong Jia (Beijing, CN); Yousheng Liu (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F9/3836G06F3/0689G06F12/0238G06F12/0888G06Q40/025G06F2212/604
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,846,094
App. No.
15/712,324
Granted
Nov 24, 2020
Kind
B2
Abstract

Embodiments of the present invention relate to a method and system for managing data access in a storage system. A method for managing data access in a storage system, the method comprising: obtaining state information about available resources in a storage control node in the storage system; determining, based on the state information, a credit score descriptive of processing capacity of the storage control node for data access; and publishing the credit score so as to notify a host of the processing capacity of the storage control node for the data access.

Claims (65)

1. A method of managing data access in a storage system, comprising:

obtaining, by a storage control node in the storage system, state information about available resources in the storage system;

determining, by the storage control node based on the state information, a credit score descriptive of processing capacity of the storage control node for input/output (IO) access;

publishing, by the storage control node, the credit score so as to notify a host of the processing capacity of the storage control node for the IO access, a processing capacity demand associated with an IO request being determined by the host;

in response to the processing capacity demand being higher than the credit score, delaying receiving, at the storage control node, the IO request from the host; and

in response to the processing capacity demand being lower than or equal to the credit score, receiving, at the storage control node, the IO request from the host,

wherein the obtaining state information about available resources in the storage system comprises:

obtaining at least one of a performance of computing resources and a performance of cache resources in the storage control node; and

wherein the determining, based on the state information, a credit score descriptive of processing capacity of the storage control node for IO access comprises:

setting the credit score to be in direct proportion to the at least one of the performance of computing resources and the performance of cache resources.

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

in response to receiving, at the storage control node, the IO request from the host, scheduling the IO request for execution.

3. The method according to claim 1 , wherein the state information of available resources comprises a performance of cache resources, and the obtaining the performance of the cache resources in the storage control node comprises:

obtaining a recycling time for recycling occupied cache resources in the storage control node; and

setting the performance of the cache resources to be in inverse proportion to the recycling time.

4. The method according to claim 3 , wherein the obtaining a recycling time for recycling occupied cache resources in the storage control node comprises:

calculating the recycling time based on at least one of a potential residing time of a dirty data block in a cache in the storage system and a potential flushing time for flushing a dirty data block to a storage device in the storage system.

5. The method according to claim 4 , wherein the obtaining a recycling time for recycling occupied cache resources in the storage control node further comprises:

calculating the recycling time based on the number of dirty data blocks in the storage system.

6. The method according to claim 4 , wherein the obtaining a recycling time for recycling occupied cache resources in the storage control node further comprises:

calculating the recycling time based on the number of dirty data blocks associated with synchronization between the storage control node and another storage control node in the storage system.

7. The method according to claim 1 , wherein the state information about available resources comprises a performance of cache resources, and the obtaining the performance of the cache resources in the storage control node comprises:

calculating the performance of the cache resources based on a recycling plan for recycling occupied cache resources in the storage control node.

8. The method according to claim 7 , wherein the calculating the performance of the cache resources based on a recycling plan for recycling occupied cache resources in the storage control node comprises:

obtaining a length of at least one queue, indicative of dirty data blocks in the occupied cache which wait to be flushed to a storage device in the storage system; and

setting the performance of the cache resources to be in direct proportion to the length of at least one queue.

9. A system for managing data access in a storage system, the system comprising:

one or more processors;

a memory coupled to at least one processor of the one or more processors; and

computer program instructions stored in the memory which, when executed by the at least one processor, cause the system to execute a method of managing input/output (IO) access in a storage system, the method comprising:

obtaining state information about available resources in the storage system;

determining, based on the state information, a credit score descriptive of processing capacity of the storage control node for the IO access;

publishing the credit score so as to notify a host of the processing capacity of the storage control node for the IO access, a processing capacity demand associated with an IO request being determined by the host;

in response to the processing capacity demand being higher than the credit score, delaying receiving the IO request from the host; and

in response to the processing capacity demand being lower than or equal to the credit score, receiving the IO request from the host,

wherein the computer program instructions further cause the system to:

obtain at least one of a performance of computing resources and a performance of cache resources in the storage control node; and

set the credit score to be in direct proportion to the at least one of the performance of computing resources and the performance of cache resources.

10. The system according to claim 9 , wherein the computer program instructions further cause the system to:

in response to receiving the IO request from the host, schedule the IO request for execution.

11. The system according to claim 9 , wherein the computer program instructions further cause the system to:

obtain a recycling time for recycling occupied cache resources in the storage control node; and

set the performance of the cache resources to be in inverse proportion to the recycling time.

12. The system according to claim 11 , wherein the computer program instructions further cause the system to:

calculate the recycling time based on at least one of a potential residing time of a dirty data block in a cache in the storage system and a potential flushing time for flushing a dirty data block to a storage device in the storage system.

13. The system according to claim 12 , wherein the computer program instructions further cause the system to:

calculate the recycling time based on the number of dirty data blocks in the storage system.

14. The system according to claim 12 , wherein the computer program instructions further cause the system to:

calculate the recycling time based on the number of dirty data blocks associated with synchronization between the storage control node and another storage control node in the storage system.

15. The system according to claim 9 , wherein the computer program instructions further cause the system to:

calculate the performance of the cache resources based on a recycling plan for recycling occupied cache resources in the storage control node.

16. The system according to claim 15 , wherein the computer program instructions further cause the system to:

obtain a length of at least one queue, indicative of dirty data blocks in the occupied cache which wait to be flushed to a storage device in the storage system; and

set the performance of the cache resources to be in direct proportion to the length of at least one queue.

17. A method of managing data access in a storage system, comprising:

obtaining, by a storage control node in the storage system, state information about available resources in the storage system;

determining, by the storage control node based on the state information, a credit score descriptive of processing capacity of the storage control node for input/output (IO) access;

receiving, at the storage control node, an IO request from a host;

having received the IO request from the host, determining, by the storage control node, a processing capacity demand associated with the IO request;

in response to the processing capacity demand being higher than the credit score, delaying, by the storage processing node, execution of the IO request; and

in response to the processing capacity demand being lower than or equal to the credit score, executing, by the storage control node, the IO request,

wherein the obtaining state information about available resources in the storage system comprises:

obtaining at least one of a performance of computing resources and a performance of cache resources in the storage control node; and

wherein the determining, based on the state information, a credit score descriptive of processing capacity of the storage control node for IO access comprises:

setting the credit score to be in direct proportion to the at least one of the performance of computing resources and the performance of cache resources.

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 (044535/0109) Recorded May 20, 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; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0414 →
RELEASE OF SECURITY INTEREST AT REEL 044535 FRAME 0001 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058298/0475 →
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 AGREEMENT (CREDIT) Recorded Nov 29, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 044535/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Nov 29, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 044535/0109 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2017
From: YANG, LIFENG; XU, XINLEI; GAO, JIAN; JIA, RUIYONG; LIU, YOUSHENG
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 043898/0351 →
Priority Claims (1)
CN 2016 1 0848292 · Sep 23, 2016 · national
Continuity (1)
Related Publication 20180088955A1 · Mar 29, 2018