IP Library Granted Patent US 12,498,875
Granted Patent B2
US 12,498,875 · App. 18/249,788 · Granted Dec 16, 2025

Dynamic grow volume

Inventors: Ashok Kumar Mishra (San Jose, CA); Arumugam Nallasivam (Bangalore, IN); Asit Amitab Mishra (Bengaluru, IN)
Assignee: Rakuten Symphony, Inc.
G06F3/0653G06F3/0608G06F3/0631G06F3/067
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 12,498,875
App. No.
18/249,788
Filed
Apr 20, 2023
Granted
Dec 16, 2025
Kind
B2
Examiner
DOAN, KHOA D
Art Unit
2133
USPC
711/154
Abstract

Usage of a storage volume is monitored, including monitoring a write frequency and an overwrite frequency for the storage volume. The overwrite frequency may be obtained from garbage collection data for the storage volume. The write frequency and overwrite frequency may be used to obtain a growth rate and predict future usage of the storage volume. Where future usage indicates that expansion of storage allocated to the storage volume is needed, affinity requirements, anti-affinity requirements, and rebalancing reduction are evaluated with respect to the expansion. If expansion satisfies these constraints, the storage volume is locally expanded. Otherwise, the storage volume is relocated to a different storage device.

Claims (33)

1 . An apparatus comprising:

a computing device including one or more processing devices and one or more memory devices operably coupled to the one or more processing devices, the one or more memory devices storing executable code that, when executed by the one or more processing devices, causes the one or more processing devices to:

monitor usage of a storage volume stored on one or more storage devices by:

monitoring a write frequency of the storage volume;

monitoring an overwrite frequency of the storage volume; and

calculating a growth rate as a difference between the write frequency and the overwrite frequency;

predict future usage of the storage volume; and

expand an allocated size of the storage volume in response to the future usage.

2 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to calculate the overwrite frequency from garbage collection data for the storage volume.

3 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to predict the future usage of the storage volume as a function of the growth rate.

4 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to expand the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume does not violate an affinity requirement.

5 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to expand the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume does not violate an anti-affinity requirement.

6 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to expand the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume reduces a need for rebalancing of a plurality of storage volumes including the storage volume.

7 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to expand the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume all of:

does not violate an affinity requirement;

does not violate an anti-affinity requirement; and

reduces a need for rebalancing of a plurality of storage volumes including the storage volume.

8 . A method comprising:

monitoring, by a computing device, usage of a storage volume stored on one or more storage devices by:

monitoring a write frequency of the storage volume;

monitoring an overwrite frequency of the storage volume; and

calculating a growth rate as a difference between the write frequency and the overwrite frequency;

predicting, by the computing device, future usage of the storage volume; and

expanding, by the computing device, an allocated size of the storage volume in response to the future usage.

9 . The method of claim 8 , further comprising calculating the overwrite frequency from garbage collection data for the storage volume.

10 . The method of claim 8 , further comprising predicting the future usage of the storage volume as a function of the growth rate.

11 . The method of claim 8 , further comprising expanding the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume does not violate an affinity requirement.

12 . The method of claim 8 , further comprising expanding the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume does not violate an anti-affinity requirement.

13 . The method of claim 8 , further comprising expanding the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume reduces a need for rebalancing of a plurality of storage volumes including the storage volume.

14 . The method of claim 8 , further comprising expanding the allocated size of the storage volume in response to the future usage only where expanding the allocated size of the storage volume all of:

does not violate an affinity requirement;

does not violate an anti-affinity requirement; and

reduces a need for rebalancing of a plurality of storage volumes including the storage volume.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2024
From: ROBIN SOFTWARE DEVELOPMENT CENTER INDIA PRIVATE LIMITED
To: RAKUTEN SYMPHONY, INC.
Reel/Frame 068127/0299 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2024
From: ROBIN SYSTEMS, INC.
To: RAKUTEN SYMPHONY, INC.
Reel/Frame 068193/0367 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2023
From: MISHRA, ASHOK KUMAR; NALLASIVAM, ARUMUGAM; MISHRA, ASIT AMITAB
To: ROBIN SYSTEMS, INC; ROBIN SOFTWARE DEVELOPMENT CENTER INDIA PRLVATE LIMITED
Reel/Frame 063397/0108 →
Continuity (1)
Related Publication 20250321692A1 · Oct 16, 2025
References Cited (17)
US 8539197B1 · Marshall · 2013 [cited by examiner]
US 8719415B1 · Sirota et al. · 2014 [cited by applicant]
US 9280390B2 · Sirota · 2016 [cited by applicant]
US 9658785B2 · Brooker · 2017 [cited by applicant]
US 10620839B2 · Alatorre · 2020 [cited by applicant]
US 10846137B2 · Vallala · 2020 [cited by applicant]
US 11165667B2 · Dippenaar · 2021 [cited by applicant]
US 11199976B2 · O'Hare · 2021 [cited by applicant]
US 11287974B2 · Prahlad et al. · 2022 [cited by applicant]
US 11308035B2 · Prahlad · 2022 [cited by applicant]
US 11379254B1 · Karumbunathan · 2022 [cited by applicant]
US 20070214338A1 · Mizuno · 2007 [cited by examiner]
US 20170293433A1 · Brettell · 2017 [cited by examiner]
US 20190391744A1 · Cashman · 2019 [cited by applicant]
US 20200012443A1 · Chen · 2020 [cited by examiner]
US 20210174411A1 · Van Biljon · 2021 [cited by applicant]
US 20240220137A1 · Bhatnagar · 2024 [cited by examiner]