Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. At a computer system including at least one processor and a memory, a computer-implemented method for determining an optimal number of concurrently running cloud resource instances, the method comprising: an act of accessing a first portion of metric information that identifies first operational metric measurements for one or more cloud resource instances over a first period of time prior to a present time, wherein the first period of time is a contiguous time period; an act of accessing a second portion of metric information that identifies second operational metric measurements for the one or more cloud resource instances over at least a second period of time, the second period of time comprising one or more discrete periods of time that occurred in the past, the second period of time also corresponding to one or more specified future periods of time; an act of calculating one or more projected operational metric measurements based on the identified operational metric measurements over the first period of time and further based on the identified operational metric measurements over the second period of time; and an act of determining, based on the one or more projected operational metric measurements, a number of cloud resource instances that are to be concurrently running at the one or more specified future periods of time; and based on at least the one or more projected operational metric measurements, an act of scaling the concurrently running cloud resource instances during at least one of the one or more specified future points in time.
A computer system automatically adjusts the number of active cloud resource instances (like virtual machines) to optimize performance and cost. It works by: 1) collecting recent performance data of the instances from a contiguous time period; 2) collecting historical performance data from similar time periods in the past (e.g., same time of day, day of week), which also represent future time periods; 3) predicting future resource needs by combining these two sets of historical data; 4) determining the optimal number of instances to run in the future based on the prediction; and 5) automatically scaling the number of running instances to meet the predicted need.
2. The method of claim 1 , wherein the identified operational metric measurements over the first period of time are prioritized over the identified operational metric measurements of the second period of time when calculating the one or more projected operational metric measurements.
The system predicting cloud resource needs prioritizes recent performance data over older, historical data when calculating future resource requirements. This means current trends have a greater influence on the prediction than older patterns. The system collects recent performance data of the instances from a contiguous time period. The system also collects historical performance data from similar time periods in the past (e.g., same time of day, day of week), which also represent future time periods. The system predicts future resource needs by combining these two sets of historical data.
3. The method of claim 1 , wherein the second period of time is specified by a user and comprises at least one of a day, a week, a month or a year.
The system predicting cloud resource needs allows a user to define the time periods to use for historical data. This historical data can be based on days, weeks, months, or years that have occurred in the past. The system collects recent performance data of the instances from a contiguous time period. The system also collects historical performance data from similar time periods in the past (e.g., same time of day, day of week), which also represent future time periods. The system predicts future resource needs by combining these two sets of historical data.
4. The method of claim 3 , wherein older operational metric measurements are weighted progressively less than newer operational metric measurements.
The system predicting cloud resource needs decreases the importance of older historical data. When calculating future resource requirements based on past data specified by a user (days, weeks, months, or years), more recent data points are given more weight than older ones. The system collects recent performance data of the instances from a contiguous time period. The system also collects historical performance data from similar time periods in the past (e.g., same time of day, day of week), which also represent future time periods. The system predicts future resource needs by combining these two sets of historical data.
5. The method of claim 1 , wherein the projected operational metric measurements based on the identified operational metric measurements over the first period of time comprise reactive measurements while the projected operational metric measurements based on the identified operational metric measurements over the second period of time comprise predictive measurements.
The system predicting cloud resource needs combines reactive and predictive scaling. Predictions based on recent performance data represent a "reactive" approach (responding to immediate trends). Predictions based on historical data represent a "predictive" approach (anticipating future needs based on past patterns). The system collects recent performance data of the instances from a contiguous time period. The system also collects historical performance data from similar time periods in the past (e.g., same time of day, day of week), which also represent future time periods. The system predicts future resource needs by combining these two sets of historical data.
6. The method of claim 1 , wherein determining a number of virtual machine instances that are to be concurrently running triggers an auto-scaling action if the number of concurrently running virtual machine instances is more or less than the determined number.
The system predicting cloud resource needs triggers automatic scaling of virtual machine instances. If the predicted optimal number of virtual machine instances differs from the current number, the system automatically adjusts the number of running instances. The system collects recent performance data of the instances from a contiguous time period. The system also collects historical performance data from similar time periods in the past (e.g., same time of day, day of week), which also represent future time periods. The system predicts future resource needs by combining these two sets of historical data.
7. The method of claim 6 , wherein the auto-scaling action comprises adding at least one virtual machine instance.
The system predicting cloud resource needs adds virtual machine instances to meet predicted demand. When automatic scaling is triggered because the predicted optimal number of instances is higher than the current number, the system provisions and starts additional virtual machines. The system predicts future resource needs by combining recent and historical performance data to determine the number of virtual machine instances needed.
8. The method of claim 6 , wherein the auto-scaling action comprises removing at least one virtual machine instance.
The system predicting cloud resource needs removes virtual machine instances to reduce cost. When automatic scaling is triggered because the predicted optimal number of instances is lower than the current number, the system terminates some of the running virtual machines. The system predicts future resource needs by combining recent and historical performance data to determine the number of virtual machine instances needed.
9. The method of claim 8 , wherein virtual machine instances are removed upon determining that the removal would not trigger other auto-scaling actions.
The system predicting cloud resource needs avoids unnecessary auto-scaling actions. Before removing a virtual machine instance, the system checks if that removal would immediately trigger another auto-scaling event (e.g., due to increased load on the remaining instances). Instances are only removed if the system determines that the removal does not necessitate another scaling action. The system predicts future resource needs by combining recent and historical performance data to determine the number of virtual machine instances needed.
10. The method of claim 6 , wherein auto-scaling actions are prevented from removing virtual machine instances to prioritize health over resource savings.
The system predicting cloud resource needs prioritizes application health over cost savings. The system avoids removing virtual machine instances even if the predicted optimal number is lower, if doing so would negatively impact the overall health or performance of the application. The system predicts future resource needs by combining recent and historical performance data to determine the number of virtual machine instances needed.
11. The method of claim 6 , wherein the auto-scaling action comprises increasing or decreasing the size of at least one currently running virtual machine instance.
The system predicting cloud resource needs adjusts the size of virtual machine instances. Instead of only adding or removing instances, the auto-scaling action can also involve increasing or decreasing the allocated resources (CPU, memory) of existing virtual machines. The system predicts future resource needs by combining recent and historical performance data to determine the number of virtual machine instances needed.
12. A computer program product for implementing a method for providing an interactive interface that shows projected operational metric measurements, the computer program product comprising one or more computer-readable hardware storage media having stored thereon computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform the method, the method comprising: accessing a first portion of metric measurement data that identifies first operational metric measurements for one or more cloud resource instances over a first time period prior to a present time, wherein the first time period is a single, contiguous time period; accessing a second portion of metric information that identifies second operational metric measurements for the one or more cloud resource instances over at least a second period of time, the second period of time comprising one or more discrete periods of time that occurred in the past, the second period of time also corresponding to one or more specified future periods of time; calculating one or more projected operational metric measurements based on both the accessed operational metric measurements over the first time period and the second time period; determining, based on the one or more projected operational metric measurements, a number of cloud resource instances that are to be concurrently running at the one or more specified future periods of time; and providing an interactive interface that displays the determined number of cloud resource instances that are to be concurrently running at the one or more specified periods of time, the interactive interface further allowing input that changes operational metric settings and dynamically updates the number of concurrently running cloud resource instances.
A software application provides an interactive user interface to visualize and manage predicted cloud resource scaling. The application: 1) collects recent performance data of cloud resource instances; 2) collects historical performance data from similar time periods; 3) calculates predicted resource needs; 4) determines the optimal number of instances to run in the future; and 5) displays this predicted number in an interactive interface. The interface also allows users to modify operational metric settings, which dynamically updates the predicted number of instances.
13. The computer program product of claim 12 , wherein the interactive interface show historical operational metric measurement data for a time period and an indication of the number of virtual machine instances that would have been concurrently running had auto-scaling been applied during the time period.
The interactive interface for managing cloud resource scaling displays historical performance data alongside the predicted number of virtual machine instances. It shows how many instances would have been running if auto-scaling had been enabled during a selected time period. The software application collects recent performance data of cloud resource instances and historical performance data from similar time periods to calculate predicted resource needs and determine the optimal number of instances.
14. The computer program product of claim 13 , wherein the interactive interface further shows a cost savings for the time period had auto-scaling been applied during that time period.
The interactive interface for managing cloud resource scaling shows potential cost savings. In addition to historical performance and predicted instance counts, the interface displays the estimated cost savings that would have been achieved if the auto-scaling system had been active during a specific time period. The software application collects recent performance data of cloud resource instances and historical performance data from similar time periods to calculate predicted resource needs and determine the optimal number of instances.
15. The computer program product of claim 12 , wherein the interactive interface provides an indication that an auto-scaling action has been triggered based on the determined number of virtual machine instances that are to be concurrently running.
The interactive interface for managing cloud resource scaling provides real-time notifications. When the system triggers an auto-scaling action (adding or removing virtual machine instances), the interface displays a notification indicating that the action has been taken. The software application collects recent performance data of cloud resource instances and historical performance data from similar time periods to calculate predicted resource needs and determine the optimal number of instances.
16. The computer program product of claim 15 , wherein the interactive interface provides an option to choose which virtual machine instances are removed during an auto-scaling action.
The interactive interface for managing cloud resource scaling offers manual control. When removing virtual machine instances during auto-scaling, the interface allows the user to choose which specific instances to terminate. The software application collects recent performance data of cloud resource instances and historical performance data from similar time periods to calculate predicted resource needs and determine the optimal number of instances.
17. The computer program product of claim 16 , wherein the interactive interface provides an option to select a new size for those virtual machine instances that are to be changed during an auto-scaling action.
The interactive interface for managing cloud resource scaling offers manual control. When resizing virtual machine instances during auto-scaling, the interface allows the user to select a new size (CPU, memory) for those instances being changed. The software application collects recent performance data of cloud resource instances and historical performance data from similar time periods to calculate predicted resource needs and determine the optimal number of instances.
18. A computer system comprising the following: one or more processors; system memory; one or more computer-readable storage media having stored thereon computer-executable instructions that, when executed by the one or more processors, cause the computing system to perform a method for determining an optimal number of concurrently running virtual machine instances, the method comprising the following: accessing a first portion of metric information that identifies first operational metric measurements for one or more virtual machine instances over a first period of time prior to a present time, wherein the first period of time is a contiguous time period; accessing a second portion of metric information that identifies second operational metric measurements for the one or more virtual machine instances over at least a second period of time, the second period of time comprising a plurality of discrete periods of time that occurred in the past, the second period of time also corresponding to one or more specified future periods of time; calculating one or more projected operational metric measurements based on the identified operational metric measurements over the first period of time and further based on the identified operational metric measurements over the second period of time; and determining, based on the one or more projected operational metric measurements, a number of virtual machine instances that are to be concurrently running at the one or more specified future periods of time; based on at least the one or more projected operational metric measurements, an act of scaling the concurrently running cloud resource instances during at least one of the one or more specified future periods of time.
A computer system automatically adjusts the number of active virtual machine instances. It: 1) collects recent performance data of the instances from a contiguous time period; 2) collects historical performance data from similar time periods in the past, which also represent future time periods; 3) predicts future resource needs by combining these two sets of historical data; 4) determines the optimal number of instances to run in the future based on the prediction; and 5) automatically scales the number of running instances to meet the predicted need.
19. The computer system of claim 18 , wherein determining a number of virtual machine instances that are to be concurrently running triggers an auto-scaling action if the number of concurrently running virtual machine instances is more or less than the determined number.
The system predicting virtual machine instance needs triggers automatic scaling. If the predicted optimal number of virtual machine instances differs from the current number, the system automatically adjusts the number of running instances. The system collects recent performance data of the instances from a contiguous time period. The system also collects historical performance data from similar time periods in the past (e.g., same time of day, day of week), which also represent future time periods. The system predicts future resource needs by combining these two sets of historical data.
20. The computer system of claim 18 , wherein the auto-scaling action is automatically performed upon determining that a second, different auto-scaling action would not be triggered.
The system predicting virtual machine instance needs avoids conflicting auto-scaling actions. The system automatically performs scaling only if it determines that doing so will not immediately trigger a different, conflicting scaling action. For example, it waits to remove an instance if the removal would cause immediate resource contention and the need to add another. The system predicts future resource needs by combining recent and historical performance data to determine the number of virtual machine instances needed.
Unknown
December 12, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.