IP Library Granted Patent US 11,487,470
Granted Patent B2
US 11,487,470 · App. 16/884,363 · Granted Nov 1, 2022

System and method for managing storage space usage on a storage system

Inventors: Vamsi K. Vankamamidi (Hopkinton, MA); Liam Li (Beijing, CN); Yousheng Liu (Beijing, CN); Xinlei Xu (Beijing, CN)
Assignee: EMC IP HOLDING COMPANY, LLC
G06F3/0659G06F3/0604G06F3/0634G06F3/0673G06Q10/0631
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,487,470
App. No.
16/884,363
Granted
Nov 1, 2022
Kind
B2
Abstract

A method, computer program product, and computing system for determining whether storage space usage on a storage system has reached a predefined threshold of a total storage capacity of the storage system. An out-of-space mode may be initiated on the storage system in response to determining that the storage space usage has reached the predefined threshold of the total storage capacity of the storage system. An amount of free storage capacity for exiting the out-of-space mode may be determined based upon, at least in part, a predefined minimum free storage capacity, a predefined maximum free storage capacity, and the total storage capacity of the storage system.

Claims (30)

1. A computer-implemented method, executed on a computing device, comprising:

receiving, via the computing device, a predefined minimum free storage capacity, a predefined maximum free storage capacity, a predefined minimum total storage capacity, and a predefined maximum total storage capacity associated with a storage system;

determining, via the computing device, whether storage space usage on the storage system has reached a predefined threshold of a total storage capacity of the storage system;

initiating, via the computing device, an out-of-space mode on the storage system in response to determining that the storage space usage has reached the predefined threshold of the total storage capacity of the storage system;

determining, via the computing device, an amount of free storage capacity for exiting the out-of-space mode based upon, at least in part, the predefined minimum free storage capacity, the predefined maximum free storage capacity, and the total storage capacity of the storage system, wherein determining the amount of free storage capacity for exiting the out-of-space mode includes determining, via the computing device, the amount of free storage capacity for exiting the out-of-space mode based upon a ratio of the difference between the predefined minimum free storage capacity and the predefined maximum free storage capacity and the difference between the predefined minimum total storage capacity and the predefined maximum total storage capacity, wherein the amount of free storage capacity for exiting the out-of-space mode is the predefined minimum free storage capacity when the total storage capacity of the storage system is less than or equal to the predefined minimum total storage capacity and is configured to prevent the storage system from cycling in and out of the out-of-space mode, wherein the amount of free storage capacity for exiting the out-of-space mode is the predefined maximum free storage capacity when the total storage capacity of the storage system is greater than or equal to the predefined maximum total storage capacity and is configured to reduce an amount of time the storage system is in the out-of-space mode;

determining, via the computing device, that the storage system usage is below the predefined threshold of the total capacity;

determining, via the computing device, whether the storage system has at least the amount of free storage capacity for exiting the out-of-space mode;

in response to determining that the storage system has at least the amount of free storage capacity for exiting the out-of-space mode and that the storage system usage is below the predefined threshold of the total capacity, exiting, via the computing device, the out-of-space mode; and

in response to determining that the storage system does not have at least the amount of free storage capacity for exiting the out-of-space mode, rejecting, via the computing device, one or more write requests received for the storage system.

2. The computer-implemented method of claim 1 , wherein determining whether the storage space usage on the storage system has reached the predefined threshold of the total capacity of the storage system includes determining, via the computing device, the storage space usage at one or more time intervals based upon, at least in part, a previously determined storage space usage.

3. The computer-implemented method of claim 1 , wherein initiating the out-of-space mode on the storage system includes processing, via the computing device, one or more read requests on the storage system.

4. The computer-implemented method of claim 1 , wherein determining the amount of free storage capacity for exiting the out-of-space mode includes determining, via the computing device, the amount of free storage capacity for exiting the out-of-space mode as a logarithmic function of the total storage capacity of the storage system based upon, at least in part, the predefined minimum free storage capacity, the predefined maximum free storage capacity, the predefined minimum total storage capacity, and the predefined maximum total storage capacity.

5. A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising:

receiving, via the processor, a predefined minimum free storage capacity, a predefined maximum free storage capacity, a predefined minimum total storage capacity, and a predefined maximum total storage capacity associated with a storage system;

determining, via the processor, whether storage space usage on a storage system has reached a predefined threshold of a total storage capacity of the storage system;

initiating, via the processor, an out-of-space mode on the storage system in response to determining that the storage space usage has reached the predefined threshold of the total storage capacity of the storage system; and

determining, via the processor, an amount of free storage capacity for exiting the out-of-space mode based upon, at least in part, a predefined minimum free storage capacity, a predefined maximum free storage capacity, and the total storage capacity of the storage system, wherein determining the amount of free storage capacity for exiting the out-of-space mode includes determining, via the computing device, the amount of free storage capacity for exiting the out-of-space mode based upon a ratio of the difference between the predefined minimum free storage capacity and the predefined maximum free storage capacity and the difference between a predefined minimum total storage capacity and a predefined maximum total storage capacity, wherein the amount of free storage capacity for exiting the out-of-space mode is the predefined minimum free storage capacity when the total storage capacity of the storage system is less than or equal to the predefined minimum total storage capacity and is configured to prevent the storage system from cycling in and out of the out-of-space mode, wherein the amount of free storage capacity for exiting the out-of-space mode is the predefined maximum free storage capacity when the total storage capacity of the storage system is greater than or equal to the predefined maximum total storage capacity and is configured to reduce an amount of time the storage system is in the out-of-space mode;

determining, via the computing device, that the storage system usage is below the predefined threshold of the total capacity;

determining, via the computing device, whether the storage system has at least the amount of free storage capacity for exiting the out-of-space mode;

in response to determining that the storage system has at least the amount of free storage capacity for exiting the out-of-space mode and that the storage system usage is below the predefined threshold of the total capacity, exiting, via the computing device, the out-of-space mode; and

in response to determining that the storage system does not have at least the amount of free storage capacity for exiting the out-of-space mode, rejecting, via the computing device, one or more write requests received for the storage system.

6. The computer program product of claim 5 , wherein determining whether the storage space usage on the storage system has reached the predefined threshold of the total capacity of the storage system includes determining, via the processor, the storage space usage at one or more time intervals based upon, at least in part, a previously determined storage space usage.

7. The computer program product of claim 5 , wherein initiating the out-of-space mode on the storage system includes processing, via the processor, one or more read requests on the storage system.

8. The computer program product of claim 5 , wherein determining the amount of free storage capacity for exiting the out-of-space mode includes determining, via the computing device, the amount of free storage capacity for exiting the out-of-space mode as a logarithmic function of the total storage capacity of the storage system based upon, at least in part, the predefined minimum free storage capacity, the predefined maximum free storage capacity, the predefined minimum total storage capacity, and the predefined maximum total storage capacity.

9. A computing system comprising:

a memory; and

a processor configured to receive a predefined minimum free storage capacity, a predefined maximum free storage capacity, a predefined minimum total storage capacity, and a predefined maximum total storage capacity associated with a storage system, wherein the processor is further configured to determine whether storage space usage on a storage system has reached a predefined threshold of a total storage capacity of the storage system, wherein the processor is further configured to initiating an out-of-space mode on the storage system, and wherein the processor is further configured to determine an amount of free storage capacity for exiting the out-of-space mode based upon, at least in part, a predefined minimum free storage capacity, a predefined maximum free storage capacity, and the total storage capacity of the storage system, wherein determining the amount of free storage capacity for exiting the out-of-space mode includes determining, via the computing device, the amount of free storage capacity for exiting the out-of-space mode based upon a ratio of the difference between the predefined minimum free storage capacity and the predefined maximum free storage capacity and the difference between a predefined minimum total storage capacity and a predefined maximum total storage capacity, wherein the amount of free storage capacity for exiting the out-of-space mode is the predefined minimum free storage capacity when the total storage capacity of the storage system is less than or equal to the predefined minimum total storage capacity and is configured to prevent the storage system from cycling in and out of the out-of-space mode, wherein the amount of free storage capacity for exiting the out-of-space mode is the predefined maximum free storage capacity when the total storage capacity of the storage system is greater than or equal to the predefined maximum total storage capacity and is configured to reduce an amount of time the storage system is in the out-of-space mode, wherein the processor is further configured to determine that the storage system usage is below the predefined threshold of the total capacity, wherein the processor is further configured to determine whether the storage system has at least the amount of free storage capacity for exiting the out-of-space mode, wherein the processor is further configured to, in response to determining that the storage system has at least the amount of free storage capacity for exiting the out-of-space mode and that the storage system usage is below the predefined threshold of the total capacity, exit the out-of-space mode, and wherein the processor is further configured to, in response to determining that the storage system does not have at least the amount of free storage capacity for exiting the out-of-space mode, reject one or more write requests received for the storage system.

10. The computing system of claim 9 , wherein determining whether the storage space usage on the storage system has reached the predefined threshold of the total capacity of the storage system includes determining, via the processor, the storage space usage at one or more time intervals based upon, at least in part, a previously determined storage space usage.

11. The computing system of claim 9 , wherein initiating the out-of-space mode on the storage system includes processing, via the processor, one or more read requests on the storage system.

12. The computing system of claim 9 , wherein determining the amount of free storage capacity for exiting the out-of-space mode includes determining, via the computing device, the amount of free storage capacity for exiting the out-of-space mode as a logarithmic function of the total storage capacity of the storage system based upon, at least in part, the predefined minimum free storage capacity, the predefined maximum free storage capacity, the predefined minimum total storage capacity, and the predefined maximum total storage capacity.

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 May 27, 2020
From: VANKAMAMIDI, VAMSI K.; LI, LIAM; LIU, YOUSHENG; XU, XINLEI
To: EMC IP HOLDING COMPANY, LLC
Reel/Frame 052760/0223 →
Continuity (1)
Related Publication 20210373803A1 · Dec 2, 2021