IP Library Granted Patent US 11,586,388
Granted Patent B2
US 11,586,388 · App. 17/352,458 · Granted Feb 21, 2023

Method, device, and computer program product for managing storage system

Inventors: Willa Lang Yuan (Shanghai, CN); Chark Wenshuai Yu (Shanghai, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0659G06F3/0604G06F3/065G06F3/068G06F3/0644G06F3/0653
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,586,388
App. No.
17/352,458
Granted
Feb 21, 2023
Kind
B2
Abstract

Storage systems are disclosed. For instance, a storage system comprises a first storage device of a first type and a second storage device of a second type, and the first storage device has a higher access velocity than the second storage device. A threshold indicating a volume limit of data stored in the first storage device can be determined. Data, which is specified by a write request for writing data to the storage system, is written to the first storage device in response to determining the data amount in the first storage device is lower than the threshold. A read request from a client device is processed based on data stored in the first storage device. Consequently, the first storage device with a higher access velocity in the storage system may be utilized as much as possible, so that storage device latency in the storage system is managed more effectively.

Claims (59)

1. A method, comprising:

determining, by a system comprising a processor, a threshold indicating a volume limit of data stored in a first storage device of a first type, wherein a storage system comprises the first storage device of the first type and a second storage device of a second type, wherein the first storage device has a higher access velocity than the second storage device,

in response to determining that a data amount of first data in the first storage device is lower than the threshold, writing, by the system to the first storage device, second data, which is specified by a write request to write the second data to the storage system, the writing resulting in updated first data stored in the first storage device;

obtaining a write velocity of writing the second data to the first storage device;

determining a timeout threshold of the first data in the first storage device based on the write velocity, the timeout threshold indicating a time duration for which the first data is retained in the first storage device, and the timeout threshold being inversely proportional to the write velocity;

moving at least a portion of the first data from the first storage device to the second storage device in response to the time duration of the first data in the first storage device being determined to be higher than the timeout threshold; and

processing, by the system, a read request from a requesting device based on the updated first data stored in the first storage device.

2. The method of claim 1 , wherein the determining the threshold comprises:

determining the threshold based on the write velocity, the threshold being inversely proportional to the write velocity.

3. The method of claim 1 , further comprising:

moving at least a portion of the first data from the first storage device to the second storage device in response to the data amount in the first storage device being determined to be higher than the threshold.

4. The method of claim 1 , wherein the processing the read request from the requesting device based on the updated first data stored in the first storage device comprises:

returning target data that is specified by the read request to the requesting device in response to determining the target data is stored in the first storage device.

5. The method of claim 1 , wherein the processing the read request from the requesting device based on the updated first data stored in the first storage device comprises:

searching for target data that is specified by the read request to the requesting device in the second storage device in response to determining the target data is not stored in the first storage device.

6. The method of claim 1 , wherein the storage system comprises a storage node in a distributed storage system, and wherein the method further comprises:

searching for target data that is specified by the read request to the requesting device in a further storage node, other than the storage node, in the distributed storage system in response to the target data not being stored in the second storage device.

7. The method of claim 1 , further comprising:

storing data blocks in the first storage device to the second storage device based on a least recently used principle.

8. The method of claim 1 , further comprising:

synchronizing the first data or the updated first data in the first storage device with the second storage device.

9. The method of claim 1 , wherein the first storage device and the second storage device are persistent storage devices.

10. A system, comprising:

a processor; and

a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, comprising:

determining a threshold indicating a volume limit for data stored in a first storage device of a first type, wherein a storage system comprises the first storage device of the first type and a second storage device of a second type, and wherein the first storage device has a higher access velocity than the second storage device;

in response to determining that a data amount in the first storage device is lower than the threshold, writing, to the first storage device, data according to a write request to write the data to the first storage device of the storage system, resulting in updated data stored by the first storage device;

based on a write velocity corresponding to the write request, determining a timeout threshold of the data in the first storage device, the timeout threshold indicating a time duration for which the data is retained in the first storage device, the timeout threshold being inversely proportional to the write velocity;

moving the data from the first storage device to the second storage device in response to the time duration of the data in the first storage device being higher than the timeout threshold; and

processing a read request from a user device based on the updated data stored in the first storage device.

11. The system of claim 10 , wherein the determining the threshold comprises:

obtaining the write velocity from the write request, and

determining the threshold based on the write velocity, the threshold being inversely proportional to the write velocity.

12. The system of claim 10 , wherein the determining the threshold comprises:

obtaining a storage volume of the first storage device; and

determining the threshold based on the storage volume, the threshold being proportional to the storage volume.

13. The system of claim 10 , wherein the moving the data comprises:

moving the data from the first storage device to the second storage device in further response to the data amount in the first storage device being higher than the threshold.

14. The system of claim 10 , wherein the operations further comprise:

storing data blocks in the first storage device to the second storage device based on a least recently used principle applicable to data block storage.

15. The system of claim 10 , wherein the operations further comprise:

synchronizing the data in the first storage device with the second storage device.

16. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations, comprising:

determining a threshold indicating a volume limit applicable to first data stored in a first storage device of a first type, wherein a storage system comprises the first storage device of the first type and a second storage device of a second type, wherein the first storage device has a higher access velocity than the second storage device, and wherein the determining the threshold comprises:

obtaining a storage volume of the first storage device, and

determining the threshold based on the storage volume, the threshold being proportional to the storage volume;

in response to determining that a data amount of the first data in the first storage device is lower than the threshold, writing, to the first storage device, second data, which is specified by a write request to write the second data to the storage system, the writing resulting in updated first data stored in the first storage device;

determining a timeout threshold of the first data in the first storage device based on a write velocity corresponding to the write request, the timeout threshold indicating a time duration for which the first data is retained in the first storage device, and the timeout threshold being inversely proportional to the write velocity;

moving at least a portion of the first data from the first storage device to the second storage device in response to the time duration of the first data in the first storage device being determined to be higher than the timeout threshold; and

processing a read request from a user device based on the updated first data stored in the first storage device.

17. The non-transitory machine-readable medium of claim 16 , wherein the processing the read request from the user device based on the updated first data stored in the first storage device comprises:

returning target data, which is specified by the read request to the user device, in response to determining that the target data is stored in the first storage device.

18. The non-transitory machine-readable medium of claim 16 , wherein the processing the read request from the user device based on the updated first data stored in the first storage device comprises:

searching target data, which is specified by the read request to the user device, in the second storage device in response to determining that the target data is not stored in the first storage device.

19. The non-transitory machine-readable medium of claim 16 , wherein the storage system is a storage node in a distributed storage system, and wherein the operations further comprise:

in response to target data, which is specified by the read request to the user device, being determined not to be stored at the second storage device, searching for the target data at a different storage node, other than the storage node, in the distributed storage system.

20. The method of claim 1 , wherein the determining the threshold comprises:

obtaining a storage volume of the first storage device; and

determining the threshold based on the storage volume, the threshold being proportional to the storage volume.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) 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 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) 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 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) 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 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
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 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
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 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
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 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2021
From: YUAN, WILLA LANG; YU, CHARK WENSHUAI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056597/0781 →
Priority Claims (1)
CN 201910497484.8 · Jun 10, 2019 · national
Continuity (2)
Continuation 16600310 · Oct 11, 2019
Related Publication 20210311669A1 · Oct 7, 2021