IP Library Granted Patent US 12,650,784
Granted Patent B2
US 12,650,784 · App. 18/960,291 · Granted Jun 9, 2026

Dynamic data migration for containerized environments

Inventors: Kalasa Suhas Pai (Mangalore, IN); Vishwas Bettigere Prabhakar (Bengaluru, IN); Vishal Umesh (Bengaluru, IN); Krishna Phalgun Atmudi (Visakhapatnam, IN); Sri Harsha Ayalasomayajula (Visakhapatnam, IN)
Assignee: Pure Storage, Inc.
G06F3/0647G06F3/0604G06F3/0683
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,650,784
App. No.
18/960,291
Filed
Nov 26, 2024
Granted
Jun 9, 2026
Kind
B2
Examiner
DOAN, KHOA D
Art Unit
2133
USPC
711/165
Abstract

An illustrative method includes a storage management system accessing workload metrics data associated with a containerized runtime environment, accessing, storage metrics data associated with the first backend storage system and the second backend storage system, evaluating the workload metrics data and the storage metrics data, and directing, based on the evaluation, the first backend storage system to migrate one or more datasets stored at a first backend storage system to a second backend storage system. In some embodiments, the evaluation includes providing the workload metrics data and the storage metrics data as input to one or more machine learning models.

Claims (41)

1 . A method comprising:

accessing, by a storage management system configured to provide persistent storage to containerized applications deployed at a containerized runtime environment using a first backend storage system and a second backend storage system, workload metrics data associated with the containerized runtime environment;

accessing, by the storage management system, storage metrics data associated with the first backend storage system and the second backend storage system;

evaluating, by the storage management system, the workload metrics data and the storage metrics data; and

directing, by the storage management system based on the evaluation, the first backend storage system to migrate one or more datasets stored at the first backend storage system to the second backend storage system.

2 . The method of claim 1 , wherein the evaluating the metrics data comprises providing the workload metrics data and the storage metrics data as input to one or more machine learning models; and

wherein the directing the first backend storage system to migrate the one or more datasets is further based on one or more outputs of the one or more machine learning models.

3 . The method of claim 2 , wherein the one or more machine learning models comprise a reinforcement learning model.

4 . The method of claim 2 , further comprising training, by the storage management system, the one or more machine learning models using past workload metrics data associated with previous deployments of the containerized applications and past storage metrics data associated with the first backend storage system and the second backend storage system.

5 . The method of claim 2 , wherein the one or more machine learning models comprise a workload machine learning model configured to output one or more workload predictions associated with the containerized runtime environment and a storage machine learning model configured to output one or more scores for the first backend storage system and the second backend storage system.

6 . The method of claim 5 , wherein the migrating of the datasets is further based on the workload predictions indicating increased workload activity associated with the containerized runtime environment or the scores indicating that the second backend storage system is more suitable than the first backend storage system for providing the persistent storage.

7 . The method of claim 1 , wherein the workload metrics data comprises one or more of a network throughput rate, a network traffic rate, a processor usage rate, a memory usage rate, or a number of active network connections.

8 . The method of claim 1 , wherein the storage metrics data comprises one or more of an I/O latency rate, an IOPS rate, an I/O bandwidth rate, a storage capacity level, or an error rate.

9 . The method of claim 1 , wherein each of the one or more datasets comprises a plurality of replicas stored at the first backend storage system; and

wherein the directing the first backend storage system to migrate the one or more datasets comprises directing the first backend storage system to incrementally migrate each replica for each of the one or more datasets while continuing data operations on the one or more datasets.

10 . The method of claim 1 , wherein the storage metrics data is generated by the first backend storage system, and wherein the workload metrics data is generated by a kubelet component deployed at the containerized runtime environment.

11 . The method of claim 1 , further comprising receiving, by the storage management system using an application programming interface (API), the workload metrics data from a distributed database deployed at the containerized runtime environment.

12 . The method of claim 1 , further comprising:

accessing, by the storage management system, additional storage metrics data and additional workload metrics data, the additional storage metrics data and the additional workload metrics data generated after the migrating of the datasets;

evaluating, by the storage management system, the additional workload metrics data and the additional storage metrics data; and

directing, by the storage management system based on the evaluation of the additional workload metrics data and the additional storage metrics data, the second backend storage system to migrate the datasets stored at the second backend storage system to a third backend storage system.

13 . A system comprising:

a memory storing instructions; and

one or more processors communicatively coupled to the memory and configured to execute the instructions to perform a process comprising:

accessing workload metrics data associated with a containerized runtime environment, wherein a storage management system is configured to provide persistent storage to containerized applications deployed at the containerized runtime environment using a first backend storage system and a second backend storage system;

accessing storage metrics data associated with the first backend storage system and the second backend storage system;

evaluating the workload metrics data and the storage metrics data; and

directing, based on the evaluation, the first backend storage system to migrate one or more datasets stored at the first backend storage system to the second backend storage system.

14 . The system of claim 13 , wherein the evaluating the metrics data comprises providing the workload metrics data and the storage metrics data as input to one or more machine learning models; and

wherein the directing the first backend storage system to migrate the one or more datasets is further based on one or more outputs of the one or more machine learning models.

15 . The system of claim 14 , wherein the one or more machine learning models comprise a workload machine learning model configured to output one or more workload predictions associated with the containerized runtime environment and a storage machine learning model configured to output one or more scores for the first backend storage system and the second backend storage system.

16 . The system of claim 15 , wherein the migrating of the datasets is further based on the workload predictions indicating increased workload activity associated with the containerized runtime environment or the scores indicating that the second backend storage system is more suitable than the first backend storage system for providing the persistent storage.

17 . The system of claim 13 , wherein the workload metrics data comprises one or more of a network throughput level, a network traffic level, a processor usage level, a memory usage level, a number of active network connections, or an I/O activity level.

18 . The system of claim 13 , wherein the storage metrics data comprises one or more of an I/O latency level, an IOPS level, an I/O throughout level, a storage capacity level, or an error rate level.

19 . The system of claim 13 , wherein each of the one or more datasets comprises a plurality of replicas stored at the first backend storage system; and

wherein the directing the first backend storage system to migrate the one or more datasets comprises directing the first backend storage system to incrementally migrate each replica for each of the one or more datasets while continuing data operations on the one or more datasets.

20 . A computer program product embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

accessing workload metrics data associated with a containerized runtime environment, wherein a storage management system is configured to provide persistent storage to containerized applications deployed at the containerized runtime environment using a first backend storage system and a second backend storage system;

accessing storage metrics data associated with the first backend storage system and the second backend storage system;

evaluating the workload metrics data and the storage metrics data; and

directing, based on the evaluation, the first backend storage system to migrate one or more datasets stored at the first backend storage system to the second backend storage system.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF AND EXECUTION DATE OF INVENTOR PREVIOUSLY RECORDED ON REEL 69411 FRAME 248. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 2, 2025
From: PAI, KALASA SUHAS; PRABHAKAR, VISHWAS BETTIGERE; UMESH, VISHAL; PHALGUN ATMUDI, KRISHNA; AYALASOMAYAJULA, SRI HARSHA
To: PURE STORAGE, INC.
Reel/Frame 073526/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2024
From: PAI, KALASA SUHAS; PRABHAKAR, VISHWAS BETTIGERE; UMESH, VISHAL; PHALGUN, ATMUDI KRISHNA; AYALASOMAYAJULA, SRI HARSHA
To: PURE STORAGE, INC.
Reel/Frame 069411/0248 →
Continuity (2)
Continuation In Part 18929003 · Oct 28, 2024
Related Publication 20260119068A1 · Apr 30, 2026
References Cited (44)
US 7526680B2 · Mathew et al. · 2009 [cited by applicant]
US 7975115B2 · Wayda et al. · 2011 [cited by applicant]
US 8495472B1 · Magerramov et al. · 2013 [cited by applicant]
US 8504797B2 · Mimatsu · 2013 [cited by applicant]
US 8706914B2 · Duchesneau · 2014 [cited by applicant]
US 8725941B1 · Gilboa et al. · 2014 [cited by applicant]
US 8756273B2 · Buchmann et al. · 2014 [cited by applicant]
US 8822155B2 · Sukumar et al. · 2014 [cited by applicant]
US 8918478B2 · Ozzie et al. · 2014 [cited by applicant]
US 9275063B1 · Natanzon · 2016 [cited by applicant]
US 9280678B2 · Redberg · 2016 [cited by applicant]
US 9395922B2 · Nishikido et al. · 2016 [cited by applicant]
US 9552299B2 · Stalzer · 2017 [cited by applicant]
US 9864874B1 · Shanbhag et al. · 2018 [cited by applicant]
US 9942323B2 · Vasetsky et al. · 2018 [cited by applicant]
US 10025673B1 · Maccanti et al. · 2018 [cited by applicant]
US 10102356B1 · Sahin et al. · 2018 [cited by applicant]
US 10185495B2 · Katsuki · 2019 [cited by applicant]
US 10324639B2 · Seo · 2019 [cited by applicant]
US 10411815B2 · Nakamura · 2019 [cited by examiner]
US 10452444B1 · Jibaja · 2019 [cited by examiner]
US 10567406B2 · Astigarraga et al. · 2020 [cited by applicant]
US 10810088B1 · Gu et al. · 2020 [cited by applicant]
US 10846137B2 · Vallala et al. · 2020 [cited by applicant]
US 10853148B1 · Kenney · 2020 [cited by examiner]
US 10877683B2 · Wu et al. · 2020 [cited by applicant]
US 11106810B2 · Natanzon et al. · 2021 [cited by applicant]
US 11496602B2 · Chakra et al. · 2022 [cited by applicant]
US 11782641B2 · Szczepanik et al. · 2023 [cited by applicant]
US 11971861B2 · Kohli et al. · 2024 [cited by applicant]
US 12197298B1 · Arumugham et al. · 2025 [cited by applicant]
US 20110153965A1 · Haustein et al. · 2011 [cited by applicant]
US 20130007008A1 · Yuan et al. · 2013 [cited by applicant]
US 20130138719A1 · Buchmann et al. · 2013 [cited by applicant]
US 20170318094A1 · Slik · 2017 [cited by applicant]
US 20180052602A1 · Best · 2018 [cited by examiner]
US 20190102409A1 · Shi et al. · 2019 [cited by applicant]
US 20190384521A1 · Patel et al. · 2019 [cited by applicant]
US 20200363984A1 · Szczepanik et al. · 2020 [cited by applicant]
US 20240111582A1 · Madhuvanthi · 2024 [cited by applicant]
US 20240152528A1 · Williams et al. · 2024 [cited by applicant]
US 20240273001A1 · Eda et al. · 2024 [cited by applicant]
US 20240345930A1 · Karr et al. · 2024 [cited by applicant]
US 20240361918A1 · Alem et al. · 2024 [cited by applicant]