IP Library › Granted Patent US 12,530,376
Granted Patent B2
US 12,530,376 · App. 17/410,092 · Granted Jan 20, 2026

Computing environment scaling

Inventors: Biju Narayanan (Trivandrum, IN); Milind Gurudassa Xete Chatim Aldoncar (Baina, IN); Hari Gopinathan Nair Indira Devi (Kumarapuram, IN); Deepankar Narayanan (Thiruvananthapuram, IN)
Assignee: Oracle International Corporation
G06F16/285
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,530,376
App. No.
17/410,092
Granted
Jan 20, 2026
Kind
B2
Abstract

A system uses a machine learning model to identify anomalies and modify parameters of a computing environment. The system modifies parameters of a computing environment based on the presence and absence of anomalies in the computing system while avoiding modifying parameters as a result of brief spikes in computing environment attributes. The system uses a machine learning model to generate predictions of anomalies for data points of computing environment attributes. The system compiles sets of predictions into batches. The system determines whether each batch includes enough anomalous-labeled data points to be considered an anomalous batch. The system compiles the batches into sets. The system determines whether the sets of batches include enough anomalous batches to be considered an anomalous set of batches. The system modifies the parameters of the computing environment based on determining whether or not the sets of batches are anomalous.

Claims (107)

1 . A non-transitory computer readable medium comprising instructions which, when executed by one or more hardware processors, causes performance of operations comprising:

monitoring a computing environment to obtain a data set, wherein the data set comprises a plurality of data points, each data point comprising a plurality of attributes of the computing environment, wherein the computing environment is configured with a first configuration of parameters for storing and processing data in the computing environment;

applying a machine learning model to a data point among the plurality of data points to generate a prediction whether the data point corresponds to an anomaly in the computing environment;

grouping sets of consecutively-generated data points into a plurality of batches, each batch corresponding to a different segment of time;

for each particular batch of the plurality of batches:

classifying the particular batch as anomalous or non-anomalous based on a number of data points in the particular batch that are predicted to be anomalous by the machine learning model;

analyzing a first set of consecutively-occurring batches from among the plurality of batches; and

based on determining that a number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets a second threshold number: modifying the first configuration of computing resources in the computing environment to configure the computing environment with a second configuration of computing resources at least by:

up-scaling or down-scaling the computing resources based on a predicted anomaly in the computing environment,

wherein up-scaling or down-scaling the computing resources based on the predicted anomaly includes at least one of: modifying a number of computing resources available to execute tasks in the computing environment, modifying a storage capacity of the computing resources, and modifying a data transmission capacity of the computing resources.

2 . The medium of claim 1 , wherein the operations further comprise:

obtaining historical data associated with historical computing environment attributes;

generate a training data set from the historical data, the training data set comprising:

historical data points comprising historical attribute data for the plurality of attributes of the computing environment, and

for each historical data point, a label indicating whether the historical data point is associated with the anomaly in the computing environment; and

training the machine learning model using the training data set to generate, for a particular data point of attribute data of the computing environment, a prediction whether the particular data point corresponds to an anomaly in the computing environment.

3 . The medium of claim 2 , wherein the training data set further comprises:

historical computing environment parameter data,

wherein the machine learning model is further trained using the trained data set to generate, for the particular data point of attribute data of the computing environment, a recommendation for modifying one or more computing environment parameters associated with the anomaly in the computing environment.

4 . The medium of claim 1 , wherein the second threshold number is a parameter-upscaling threshold number,

wherein modifying the first configuration of the computing resources in the computing environment comprises: up-scaling the computing resources proportional to a magnitude of a predicted anomaly in the computing environment.

5 . The medium of claim 4 , wherein the operations further comprise:

subsequent to up-scaling the computing resources in the computing environment:

detecting a predetermined period of time has elapsed;

during the predetermined period of time, analyzing a second set of consecutively-occurring batches from among the plurality of batches; and

based on determining that a number of batches identified as anomalous, from among the second set of consecutively-occurring batches, meets a parameter-downscaling threshold number: downscaling the computing resources in the computing environment.

6 . The medium of claim 1 , wherein the second threshold number is a computing-resource-downscaling threshold number,

wherein modifying the first configuration of computing resources in the computing environment comprises: down-scaling the computing resources in the computing environment.

7 . The medium of claim 1 , wherein the operations further comprise:

receiving user input selecting one action to perform based on determining that the number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets the second threshold number, the one action selected from among: (a) automatically modifying the first configuration of the computing resources in the computing environment, and (b) generating a notification indicating that the number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets the second threshold number.

8 . The medium of claim 1 , wherein determining that the number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets the second threshold number includes labeling the first set of consecutively-occurring batches as anomalous, and

wherein modifying the first configuration of the computing resources in the computing environment is based on determining the first set of consecutively-occurring batches is labeled as anomalous.

9 . The medium of claim 1 , wherein the computing environment is a cloud-based computing environment including a plurality of compute nodes and at least one intermediate node, the at least one intermediate node comprising a task queue for directing computing tasks to the plurality of compute nodes,

wherein the plurality of attributes of the computing environment includes a first set of attributes of the plurality of compute nodes and a second set of attributes of the at least one intermediate node,

wherein modifying the first configuration of the computing resources in the computing environment includes increasing a number of compute nodes available to the intermediate node in the computing environment for executing the computing tasks.

10 . The non-transitory computer readable medium of claim 1 , wherein the sets of consecutively-generated data points grouped into the plurality of batches comprise data points for which the machine learning model has generated a respective prediction whether the respective data point corresponds to an anomaly in the computing environment.

11 . The non-transitory computer readable medium of claim 1 , wherein up-scaling or down-scaling the computing resources comprises up-scaling or down-scaling at least one of:

a number of compute nodes in the computing environment;

a specific type of compute node in the computing environment;

a number of intermediate nodes in the computing environment;

a number of database nodes in the computing environment;

a size of an existing node in the computing environment;

a division of a partition of the existing node in the computing environment;

a processing capacity available in the computing environment;

a data storage capacity available in the computing environment;

a data transmission capacity available in the computing environment; and

an input/output (I/O) capacity available in the computing environment.

12 . The non-transitory computer readable medium of claim 1 , wherein monitoring the computing environment to obtain the data set comprises monitoring a set of compute nodes configured to execute computing tasks in the computing environment to determine values for a usage metric for the set of compute nodes,

wherein up-scaling or down-scaling the computing resources comprises at least one of:

adding a compute node to the set of compute nodes in the computing environment; and

increasing a number of processors available to the set of compute nodes for executing the computing tasks.

13 . The non-transitory computer readable medium of claim 1 , the up-scaling or down-scaling the computing resources is based on a magnitude of the predicted anomaly in the computing environment.

14 . A method comprising:

monitoring a computing environment to obtain a data set, wherein the data set comprises a plurality of data points, each data point comprising a plurality of attributes of the computing environment, wherein the computing environment is configured with a first configuration of parameters for storing and processing data in the computing environment;

applying a machine learning model to a data point among the plurality of data points to generate a prediction whether the data point corresponds to an anomaly in the computing environment;

grouping sets of consecutively-generated data points into a plurality of batches, each batch corresponding to a different segment of time;

for each particular batch of the plurality of batches:

classifying the particular batch as anomalous or non-anomalous based on a number of data points in the particular batch that are predicted to be anomalous by the machine learning model;

analyzing a first set of consecutively-occurring batches from among the plurality of batches; and

based on determining that a number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets a second threshold number: modifying the first configuration of computing resources in the computing environment to configure the computing environment with a second configuration of computing resources at least by:

up-scaling or down-scaling the computing resources based on a predicted anomaly in the computing environment,

wherein up-scaling or down-scaling the computing resources based on the predicted anomaly includes at least one of: modifying a number of computing resources available to execute tasks in the computing environment, modifying a storage capacity of the computing resources, and modifying a data transmission capacity of the computing resources.

15 . The method of claim 14 , further comprising:

obtaining historical data associated with historical computing environment attributes;

generate a training data set from the historical data, the training data set comprising:

historical data points comprising historical attribute data for the plurality of attributes of the computing environment, and

for each historical data point, a label indicating whether the historical data point is associated with the anomaly in the computing environment; and

training the machine learning model using the training data set to generate, for a particular data point of attribute data of the computing environment, a prediction whether the particular data point corresponds to an anomaly in the computing environment.

16 . The method of claim 15 , wherein the training data set further comprises:

historical computing environment parameter data,

wherein the machine learning model is further trained using the trained data set to generate, for the particular data point of attribute data of the computing environment, a recommendation for modifying one or more computing environment parameters associated with the anomaly in the computing environment.

17 . The method of claim 14 , wherein the second threshold number is a parameter-upscaling threshold number,

wherein modifying the first configuration of the computing resources in the computing environment comprises: up-scaling the computing resources proportional to a magnitude of a predicted anomaly in the computing environment.

18 . The method of claim 17 , further comprising:

subsequent to up-scaling the computing resources in the computing environment:

detecting a predetermined period of time has elapsed;

during the predetermined period of time, analyzing a second set of consecutively-occurring batches from among the plurality of batches; and

based on determining that a number of batches identified as anomalous, from among the second set of consecutively-occurring batches, meets a parameter-downscaling threshold number: downscaling the computing resources in the computing environment.

19 . The method of claim 14 , wherein the second threshold number is a computing-resource-downscaling threshold number,

wherein modifying the first configuration of computing resources in the computing environment comprises: down-scaling the computing resources in the computing environment.

20 . The method of claim 14 , further comprising:

receiving user input selecting one action to perform based on determining that the number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets the second threshold number, the one action selected from among: (a) automatically modifying the first configuration of the computing resources in the computing environment, and (b) generating a notification indicating that the number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets the second threshold number.

21 . The method of claim 14 , wherein determining that the number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets the second threshold number includes labeling the first set of consecutively-occurring batches as anomalous, and

wherein modifying the first configuration of the computing resources in the computing environment is based on determining the first set of consecutively-occurring batches is labeled as anomalous.

22 . The method of claim 14 , wherein the computing environment is a cloud-based computing environment including a plurality of compute nodes and at least one intermediate node, the at least one intermediate node comprising a task queue for directing computing tasks to the plurality of compute nodes,

wherein the plurality of attributes of the computing environment includes a first set of attributes of the plurality of compute nodes and a second set of attributes of the at least one intermediate node,

wherein modifying the first configuration of the computing resources in the computing environment includes increasing a number of compute nodes available to the intermediate node in the computing environment for executing the computing tasks.

23 . A system comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the system to perform:

monitoring a computing environment to obtain a data set, wherein the data set comprises a plurality of data points, each data point comprising a plurality of attributes of the computing environment, wherein the computing environment is configured with a first configuration of parameters for storing and processing data in the computing environment;

applying a machine learning model to a data point among the plurality of data points to generate a prediction whether the data point corresponds to an anomaly in the computing environment;

grouping sets of consecutively-generated data points into a plurality of batches, each batch corresponding to a different segment of time;

for each particular batch of the plurality of batches:

classifying the particular batch as anomalous or non-anomalous based on a number of data points in the particular batch that are predicted to be anomalous by the machine learning model;

analyzing a first set of consecutively-occurring batches from among the plurality of batches; and

based on determining that a number of batches identified as anomalous, from among the first set of consecutively-occurring batches, meets a second threshold number: modifying the first configuration of computing resources in the computing environment to configure the computing environment with a second configuration of computing resources at least by:

up-scaling or down-scaling the computing resources based on a predicted anomaly in the computing environment,

wherein up-scaling or down-scaling the computing resources based on the predicted anomaly includes at least one of: modifying a number of computing resources available to execute tasks in the computing environment, modifying a storage capacity of the computing resources, and modifying a data transmission capacity of the computing resources.

24 . The system of claim 23 , wherein the instructions further cause:

obtaining historical data associated with historical computing environment attributes;

generate a training data set from the historical data, the training data set comprising:

historical data points comprising historical attribute data for the plurality of attributes of the computing environment, and

for each historical data point, a label indicating whether the historical data point is associated with the anomaly in the computing environment; and

training the machine learning model using the training data set to generate, for a particular data point of attribute data of the computing environment, a prediction whether the particular data point corresponds to an anomaly in the computing environment.

25 . The non-transitory computer readable medium of claim 13 , wherein the operations further comprise:

determining the magnitude of the predicted anomaly in the computing environment based on the number of batches identified as anomalous.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2021
From: NARAYANAN, BIJU; XETE CHATIM ALDONCAR, MILIND GURUDASSA; GOPINATHAN NAIR INDIRA DEVI, HARI; NARAYANAN, DEEPANKAR
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 057270/0115 →
Continuity (2)
Provisional Application 63233028 · Aug 13, 2021
Related Publication 20230047781A1 · Feb 16, 2023
References Cited (17)
US 20120173709A1 · Li et al. · 2012 [cited by applicant]
US 20150199224A1 · Mihnev · 2015 [cited by examiner]
US 20160357589A1 · Singh et al. · 2016 [cited by applicant]
US 20180248905A1 · Côté · 2018 [cited by examiner]
US 20190171494A1 · Nucci · 2019 [cited by examiner]
US 20200265119A1 · Desai · 2020 [cited by examiner]
US 20220237102A1 · Bugdayci · 2022 [cited by examiner]
“Apigee API Management Lifecycle,” accessed at https://nl.devoteam.com/en/blog-post/apigee-api-management-lifecycle/, accessed on Jun. 2, 2021, pp. 5. [cited by applicant]
“Serving Machine Learning Models Using Apigee and AI Platform,” accessed at https://cloud.google.com/architecture/serving-machine-learning-models-using-apigee-edge-and-ml-engine, accessed on Jun. 2, 2021, pp. 3. [cited by applicant]
Anand, V., “Simplifying API operations with AI as you scale your API programs,” accessed at https://cloud.google.com/blog/products/api-management/apigee-x-simplifies-api-management-with-ai, May 24, 2021, pp. 3. [cited by applicant]
Biswas, A., et al., “An Auto-scaling Framework for Controlling Enterprise Resources on Clouds,” 15th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, May 4-7, 2015, pp. 971-980. [cited by applicant]
Dutta, S., et al., “SmartScale: Automatic Application Scaling in Enterprise Clouds,” IEEE Fifth International Conference on Cloud Computing, Jun. 24-29, 2012, pp. 221-228. [cited by applicant]
Kuzs,A, R., “Time-based scaling of Enterprise Search on Elastic Cloud,” accessed at https://www.elastic.co/blog/time-based-scaling-of-enterprise-search-on-elastic-cloud, Apr. 1, 2021, pp. 4. [cited by applicant]
Laurendine, B., “Autoscale your Elastic Cloud data and machine learning nodes,” accessed at https://www.elastic.co/blog/autoscale-your-elastic-cloud-data-and-machine-learning-nodes, Mar. 3, 2021, pp. 3. [cited by applicant]
Sammy, K.., “Google Cloud launches Apigee X to help enterprises scale up,” accessed at https://www.techzine.eu/news/cloud/55473/google-cloud-launches-apigee-x-to-help-enterprises-scale-up/, Feb. 8, 2021, p. 1. [cited by applicant]
Srirama, S.N., et al., “Dynamic Deployment and Auto-scaling Enterprise Applications on the Heterogeneous Cloud,” IEEE 9th International Conference on Cloud Computing (CLOUD), Jun. 2016, pp. 927-932. [cited by applicant]
Srirama, S.N., et al., “Optimal Resource Provisioning for Scaling Enterprise Applications on the Cloud,” IEEE 6th International Conference on Cloud Computing Technology and Science, Dec. 15-18, 2014, pp. 262-271. [cited by applicant]