IP Library Granted Patent US 10,509,667
Granted Patent B1
US 10,509,667 · App. 15/693,249 · Granted Dec 17, 2019

Modeling space consumption of a migrated VM

Inventors: Siva Popuri (Mountain View, CA); Mark G. Gritter (Eagan, MN)
Assignee: Tintri by DDN, Inc.
G06F9/45558G06F2009/4557
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 10,509,667
App. No.
15/693,249
Granted
Dec 17, 2019
Kind
B1
Abstract

Modeling space consumption of a migrated VM is disclosed, including: obtaining aggregated effective historical space usage data associated with a plurality of VMs at a storage device; using the aggregated effective historical space usage data to generate one or more predicted metrics of space usage at the storage device; and using the one or more predicted metrics of space usage to potentially migrate a VM with respect to the storage device.

Claims (86)

1. A system, comprising:

a processor configured to:

obtain aggregated effective historical space usage data associated with a plurality of VMs at a storage device, including to:

determine that a VM has been added to the storage device; and

determine the aggregated effective historical space usage data based at least in part on historical space usage data associated with the VM obtained from a source storage device associated with the VM, including to:

determine that data associated with the VM that has been added to the storage device has been received;

determine that the data comprises a portion of a plurality of portions of the VM;

generate a projected historical set of space usage data associated with the portion of the VM based at least in part on the historical space usage data associated with the VM obtained from the source storage device associated with the VM, including to:

 obtain a plurality of most recent historical space usage values corresponding to the plurality of portions of the VM from corresponding respective ones of a plurality of source storage devices;

 obtain a plurality of aggregated historical space usage values corresponding to the VM across the plurality of source storage devices;

 obtain a plurality of time periods during which the VM resided at respective ones of the plurality of source storage devices; and

 determine the projected historical set of space usage data associated with the portion of the VM based at least in part on the plurality of most recent historical space usage values, the plurality of aggregated historical space usage values, and the plurality of time periods;

determine an expansion factor associated with the data associated with the VM;

modify the projected historical set of space usage data based at least in part on the expansion factor; and

determine the aggregated effective historical space usage data based at least in part on adding the modified projected historical set of space usage data to historical space usage data stored at the storage device;

use the aggregated effective historical space usage data to generate one or more predicted metrics of space usage at the storage device; and

use the one or more predicted metrics of space usage to potentially migrate the VM with respect to the storage device; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system of claim 1 , wherein to determine the expansion factor associated with the data associated with the VM comprises to:

determine whether the VM has one or more snapshots stored at the source storage device;

determine whether the VM was a clone at the source storage device; and

determine a ratio between an original space savings factor associated with the source storage device and a predicted space savings factor associated with the storage device.

3. The system of claim 1 , wherein the VM comprises a first VM, and wherein to obtain the aggregated effective historical space usage data associated with the plurality of VMs at the storage device comprises to:

determine that a second VM has been migrated from the storage device;

obtain measured historical space usage data associated with the second VM that is stored at the storage device; and

determine the aggregated effective historical space usage data based at least in part on subtracting the measured historical space usage data associated with the second VM from the historical space usage data stored at the storage device.

4. The system of claim 1 , wherein to use the aggregated effective historical space usage data to generate the one or more predicted metrics of space usage at the storage device comprises to:

input at least a portion of the aggregated effective historical space usage data of the storage device into each of one or more statistical models to generate a plurality of predictions of space usage at the storage device; and

determine a corresponding portion of the plurality of predictions of space usage that exceeds a threshold value corresponding to a space usage related metric type to determine a predicted space usage metric associated with the space usage related metric type.

5. The system of claim 4 , wherein the one or more statistical models comprises one or more of the following: a Monte Carlo simulation and a linear regression.

6. A method, comprising:

obtaining aggregated effective historical space usage data associated with a plurality of VMs at a storage device, including:

determining that a VM has been added to the storage device; and

determining the aggregated effective historical space usage data based at least in part on historical space usage data associated with the VM obtained from a source storage device associated with the VM, including:

determining that data associated with the VM that has been added to the storage device has been received;

determining that the data comprises a portion of a plurality of portions of the VM;

generating a projected historical set of space usage data associated with the portion of the VM based at least in part on the historical space usage data associated with the VM obtained from the source storage device associated with the VM, including:

obtaining a plurality of most recent historical space usage values corresponding to the plurality of portions of the VM from corresponding respective ones of a plurality of source storage devices;

obtaining a plurality of aggregated historical space usage values corresponding to the VM across the plurality of source storage devices;

obtaining a plurality of time periods during which the VM resided at respective ones of the plurality of source storage devices; and

determining the projected historical set of space usage data associated with the portion of the VM based at least in part on the plurality of most recent historical space usage values, the plurality of aggregated historical space usage values, and the plurality of time periods;

determining an expansion factor associated with the data associated with the VM;

modifying the projected historical set of space usage data based at least in part on the expansion factor; and

determining the aggregated effective historical space usage data based at least in part on adding the modified projected historical set of space usage data to historical space usage data stored at the storage device;

using the aggregated effective historical space usage data to generate one or more predicted metrics of space usage at the storage device; and

using the one or more predicted metrics of space usage to potentially migrate the VM with respect to the storage device.

7. The method of claim 6 , wherein determining the expansion factor associated with the data associated with the VM comprises:

determining whether the VM has one or more snapshots stored at the source storage device;

determining whether the VM was a clone at the source storage device; and

determining a ratio between an original space savings factor associated with the source storage device and a predicted space savings factor associated with the storage device.

8. The method of claim 6 , wherein the VM comprises a first VM, and wherein obtaining the aggregated effective historical space usage data associated with the plurality of VMs at the storage device comprises:

determining that a second VM has been migrated from the storage device;

obtaining measured historical space usage data associated with the second VM that is stored at the storage device; and

determining the aggregated effective historical space usage data based at least in part on subtracting the measured historical space usage data associated with the second VM from the historical space usage data stored at the storage device.

9. The method of claim 6 , wherein using the aggregated effective historical space usage data to generate the one or more predicted metrics of space usage at the storage device comprises:

inputting at least a portion of the aggregated effective historical space usage data of the storage device into each of one or more statistical models to generate a plurality of predictions of space usage at the storage device; and

determining a corresponding portion of the plurality of predictions of space usage that exceeds a threshold value corresponding to a space usage related metric type to determine a predicted space usage metric associated with the space usage related metric type.

10. The method of claim 9 , wherein the one or more statistical models comprises one or more of the following: a Monte Carlo simulation and a linear regression.

11. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

obtaining aggregated effective historical space usage data associated with a plurality of VMs at a storage device, including:

determining that a VM has been added to the storage device; and

determining the aggregated effective historical space usage data based at least in part on historical space usage data associated with the VM obtained from a source storage device associated with the VM, including:

determining that data associated with the VM that has been added to the storage device has been received;

determining that the data comprises a portion of a plurality of portions of the VM;

generating a projected historical set of space usage data associated with the portion of the VM based at least in part on the historical space usage data associated with the VM obtained from the source storage device associated with the VM, including:

obtaining a plurality of most recent historical space usage values corresponding to the plurality of portions of the VM from corresponding respective ones of a plurality of source storage devices;

obtaining a plurality of aggregated historical space usage values corresponding to the VM across the plurality of source storage devices;

obtaining a plurality of time periods during which the VM resided at respective ones of the plurality of source storage devices; and

determining the projected historical set of space usage data associated with the portion of the VM based at least in part on the plurality of most recent historical space usage values, the plurality of aggregated historical space usage values, and the plurality of time periods;

determining an expansion factor associated with the data associated with the VM;

modifying the projected historical set of space usage data based at least in part on the expansion factor; and

determining the aggregated effective historical space usage data based at least in part on adding the modified projected historical set of space usage data to historical space usage data stored at the storage device;

using the aggregated effective historical space usage data to generate one or more predicted metrics of space usage at the storage device; and

using the one or more predicted metrics of space usage to potentially migrate the VM with respect to the storage device.

12. The computer program product of claim 11 , wherein determining the expansion factor associated with the data associated with the VM comprises:

determining whether the VM has one or more snapshots stored at the source storage device;

determining whether the VM was a clone at the source storage device; and

determining a ratio between an original space savings factor associated with the source storage device and a predicted space savings factor associated with the storage device.

13. The computer program product of claim 11 , wherein the VM comprises a first VM, and wherein obtaining the aggregated effective historical space usage data associated with the plurality of VMs at the storage device comprises:

determining that a second VM has been migrated from the storage device;

obtaining measured historical space usage data associated with the second VM that is stored at the storage device; and

determining the aggregated effective historical space usage data based at least in part on subtracting the measured historical space usage data associated with the second VM from the historical space usage data stored at the storage device.

14. The computer program product of claim 11 , wherein using the aggregated effective historical space usage data to generate the one or more predicted metrics of space usage at the storage device comprises:

inputting at least a portion of the aggregated effective historical space usage data of the storage device into each of one or more statistical models to generate a plurality of predictions of space usage at the storage device; and

determining a corresponding portion of the plurality of predictions of space usage that exceeds a threshold value corresponding to a space usage related metric type to determine a predicted space usage metric associated with the space usage related metric type.

15. The computer program product of claim 14 , wherein the one or more statistical models comprises one or more of the following: a Monte Carlo simulation and a linear regression.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2019
From: TINTRI INC.
To: TI ACQUISITION CORP.
Reel/Frame 048201/0666 →
CHANGE OF NAME Recorded Jan 31, 2019
From: TI ACQUISITION CORP.
To: TINTRI BY DDN, INC.
Reel/Frame 048211/0685 →
SECURITY INTEREST Recorded Oct 13, 2018
From: TI ACQUISITION CORP.
To: TRIPLEPOINT CAPITAL LLC
Reel/Frame 047229/0463 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2017
From: POPURI, SIVA; GRITTER, MARK G.
To: TINTRI INC.
Reel/Frame 044058/0235 →
Continuity (1)
Provisional Application 62448253 · Jan 19, 2017