IP Library Granted Patent US 9,760,290
Granted Patent B2
US 9,760,290 · App. 14/864,998 · Granted Sep 12, 2017

Smart volume manager for storage space usage optimization

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 9,760,290
App. No.
14/864,998
Granted
Sep 12, 2017
Kind
B2
Abstract

A computer-implemented method, system, and/or computer program product optimizes storage space usage. One or more processor, which implement a Smart Volume Manager, receive an input/output (I/O) client process that requests an I/O action from a file system storage device. In response to determining that the file system storage device is operating at 100% capacity, the Smart Volume Manager generates a dynamic virtual buffer disk group from multiple donor disk groups, and then redirects the I/O client process to the dynamic virtual buffer disk group, which is appended to the file system storage device to create an extended filesystem volume.

Claims (46)

1. A computer-implemented method of optimizing storage space usage, the computer-implemented method comprising:

receiving, by one or more processors implementing a Smart Volume Manager, an input/output (I/O) client process, wherein the I/O client process requests an I/O action from a file system storage device;

determining, by said one or more processors implementing the Smart Volume Manager, that the file system storage device is operating at 100% capacity;

in response to determining that the file system storage device is operating at 100% capacity, generating, by said one or more processors implementing the Smart Volume Manager, a dynamic virtual buffer disk group from multiple donor disk groups;

redirecting, by said one or more processors implementing the Smart Volume Manager, the I/O client process to the dynamic virtual buffer disk group, wherein the dynamic virtual buffer disk group is appended to the file system storage device to create an extended filesystem volume; and

mapping, by said one or more processors implementing the Smart Volume Manager, a local bitmap and a global bitmap to a time axis and a data block allocation and de-allocation magnitude axis to dynamically predict a peak disk capacity, an average disk space capacity, and a disk capacity trend for a given period of time for a combination of the donor disk groups.

2. The computer-implemented method of claim 1 , wherein the I/O client process is a write operation.

3. The computer-implemented method of claim 1 , further comprising:

mapping, by said one or more processors implementing the Smart Volume Manager, the local bitmap for the donor disk groups and the global bitmap for the donor disk groups, wherein the local bitmap for the donor disk groups identifies a percentage of storage space that is available for donation by each of the donor disk groups, and wherein the global bitmap for the donor disk groups identifies how much storage space has been donated by each of the donor disk groups to create the dynamic virtual buffer disk group.

4. The computer-implemented method of claim 3 , further comprising:

mapping, by said one or more processors implementing the Smart Volume Manager, the local bitmap and the global bitmap to a data block allocation and de-allocation magnitude axis and a disk group donation/reclaim axis to dynamically predict which of the donor disk groups are being utilized at the 100% capacity and which of the donor disk groups are always able to donate disk space to the dynamic virtual buffer disk group.

5. The computer-implemented method of claim 3 , further comprising:

mapping, by said one or more processors implementing the Smart Volume Manager, the local bitmap and the global bitmap to a data block allocation and de-allocation magnitude axis and filesystem allocation/de-allocation magnitude axis to dynamically predict which of the donor disk groups have gone to 100% utilization within a predetermined period of time and which of the donor disk groups have never been used to donate disk space to the dynamic virtual buffer disk group.

6. The computer-implemented method of claim 1 , wherein all of the multiple donor disk groups are managed by a same operating system.

7. A computer program product for optimizing storage space usage, the computer program product comprising a non-transitory computer readable storage medium having program code embodied therewith, wherein the program code is readable and executable by a processor to perform a method comprising:

receiving, by a Smart Volume Manager, an input/output (I/O) client process, wherein the I/O client process requests an I/O action from a file system storage device;

determining, by the Smart Volume Manager, that the file system storage device is operating at 100% capacity;

in response to determining that the file system storage device is operating at 100% capacity, generating, by the Smart Volume Manager, a dynamic virtual buffer disk group from multiple donor disk groups;

redirecting the I/O client process to the dynamic virtual buffer disk group, wherein the dynamic virtual buffer disk group is appended to the file system storage device to create an extended filesystem volume; and

mapping a local bitmap and a global bitmap to a data block allocation and de-allocation magnitude axis and a disk group donation/reclaim axis to dynamically predict which of the donor disk groups are being utilized at the 100% capacity and which of the donor disk groups are always able to donate disk space to the dynamic virtual buffer disk group.

8. The computer program product of claim 7 , wherein the I/O client process is a write operation.

9. The computer program product of claim 7 , wherein the method further comprises:

mapping the local bitmap for the donor disk groups and the global bitmap for the donor disk groups, wherein the local bitmap for the donor disk groups identifies a percentage of storage space that is available for donation by each of the donor disk groups, and wherein the global bitmap for the donor disk groups identifies how much storage space has been donated by each of the donor disk groups to create the dynamic virtual buffer disk group.

10. The computer program product of claim 9 , wherein the method further comprises:

mapping the local bitmap and the global bitmap to a time axis and a data block allocation and de-allocation magnitude axis to dynamically predict a peak disk capacity, an average disk space capacity, and a disk capacity trend for a given period of time for a combination of the donor disk groups.

11. The computer program product of claim 9 , wherein the method further comprises:

mapping the local bitmap and the global bitmap to a data block allocation and de-allocation magnitude axis and filesystem allocation/de-allocation magnitude axis to dynamically predict which of the donor disk groups have gone to 100% utilization within a predetermined period of time and which of the donor disk groups have never been used to donate disk space to the dynamic virtual buffer disk group.

12. The computer program product of claim 7 , wherein all of the multiple donor disk groups are managed by a same operating system.

13. A computer system comprising:

a processor, a computer readable memory, and a non-transitory computer readable storage medium;

first program instructions to receive, by a Smart Volume Manager, an input/output (I/O) client process, wherein the I/O client process requests an I/O action from a file system storage device;

second program instructions to determine, by the Smart Volume Manager, that the file system storage device is operating at 100% capacity;

third program instructions to, in response to determining that the file system storage device is operating at 100% capacity, generate, by the Smart Volume Manager, a dynamic virtual buffer disk group from multiple donor disk groups;

fourth program instructions to redirect the I/O client process to the dynamic virtual buffer disk group, wherein the dynamic virtual buffer disk group is appended to the file system storage device to create an extended filesystem volume; and

fifth program instructions to map a local bitmap and a global bitmap to a data block allocation and de-allocation magnitude axis and filesystem allocation/de-allocation magnitude axis to dynamically predict which of the donor disk groups have gone to 100% utilization within a predetermined period of time and which of the donor disk groups have never been used to donate disk space to the dynamic virtual buffer disk group; and wherein

the first, second, third, fourth, and fifth program instructions are stored on the non-transitory computer readable storage medium for execution by one or more processors via the computer readable memory.

14. The computer system of claim 13 , wherein the I/O client process is a write operation.

15. The computer system of claim 13 , further comprising:

sixth program instructions to map the local bitmap for the donor disk groups and the global bitmap for the donor disk groups, wherein the local bitmap for the donor disk groups identifies a percentage of storage space that is available for donation by each of the donor disk groups, and wherein the global bitmap for the donor disk groups identifies how much storage space has been donated by each of the donor disk groups to create the dynamic virtual buffer disk group; and wherein

the sixth program instructions are stored on the non-transitory computer readable storage medium for execution by said one or more processors via the computer readable memory.

16. The computer system of claim 15 , further comprising:

seventh program instructions to map the local bitmap and the global bitmap to a time axis and a data block allocation and de-allocation magnitude axis to dynamically predict a peak disk capacity, an average disk space capacity, and a disk capacity trend for a give period of time for a combination of the donor disk groups; and wherein

the seventh program instructions are stored on the non-transitory computer readable storage medium for execution by said one or more processors via the computer readable memory.

17. The computer system of claim 15 , further comprising:

seventh program instructions to map the local bitmap and the global bitmap to a data block allocation and de-allocation magnitude axis and a disk group donation/reclaim axis to dynamically predict which of the donor disk groups are being utilized at the 100% capacity and which of the donor disk groups are always able to donate disk space to the dynamic virtual buffer disk group; and wherein

the seventh program instructions are stored on the non-transitory computer readable storage medium for execution by said one or more processors via the computer readable memory.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2015
From: JAYARAMAN, ARUNACHALAM; PARIKH, VIREN D.; PATHAK, RAMESH C.; RAO, SURYANARAYANA K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 036652/0961 →