Cost measurement and analytics for optimization on complex processing
Aspects of the disclosure relate to using machine learning models to automatically deploy computing workloads. A computing system may retrieve resource data. The resource data may comprise deployment costs of computing workloads that are currently deployed, indications of computing workloads that are preauthorized for automatic deployment, and indications of computing workloads that are not preauthorized for automatic deployment. Cloud service provider data indicating cloud service provider costs may be retrieved, via an application programming interface (API) connector. Based on inputting the resource data and the cloud service provider data into machine learning models, cloud deployment data may be generated. The cloud deployment data may comprise predicted deployment costs of the cloud service providers. The computing workloads that are preauthorized for automatic deployment may be deployed. Indications of predicted deployment costs may be generated for each of the computing workloads that are not preauthorized for automatic deployment.
1 . A computing system for deploying one or more computing workloads on one or more cloud computing systems, the computing system comprising:
one or more processors; and
memory storing computer-readable instructions that, when executed by the one or more processors, cause the computing system to:
retrieve resource data comprising deployment costs of the one or more computing workloads that are currently deployed on the one or more cloud computing systems, wherein the one or more computing workloads comprise one or more computing workloads that are preauthorized for automatic deployment to a plurality of cloud service providers, and one or more computing workloads that are not preauthorized for automatic deployment to the plurality of cloud service providers;
retrieve, via a cloud application programming interface (API) connector, cloud service provider data comprising provider costs of the plurality of cloud service providers;
generate, based on inputting the resource data and the cloud service provider data into one or more machine learning models, cloud deployment data comprising predicted deployment costs of the plurality of cloud service providers for each of the one or more computing workloads;
based on the deployment costs for one or more of the plurality of cloud service providers meeting one or more criteria, deploy the one or more computing workloads that are preauthorized for automatic deployment to the one or more of the plurality of cloud service providers with the predicted deployment costs that meet the one or more criteria; and
display, for each of the one or more computing workloads that are not preauthorized for automatic deployment, based on the cloud deployment data, indications of the predicted deployment costs resulting from deployment of a respective computing workload that is not preauthorized for automatic deployment to the plurality of cloud service providers;
access deployment cost training data comprising a plurality of historical deployment costs of the plurality of cloud service providers and a plurality of historical deployments of the one or more computing workloads; and
generate, based on inputting the deployment cost training data into the one or more machine learning models, the predicted deployment costs, wherein:
a deployment cost prediction accuracy of the one or more machine learning models is based on a similarity between the predicted deployment costs and a plurality of ground-truth deployment costs,
at least one adjustment to a weighting of one or more deployment cost prediction parameters of the one or more machine learning models is based on the deployment cost prediction accuracy,
the weighting of the deployment cost prediction parameters that increase the deployment cost prediction accuracy are increased, and
the weighting of the deployment cost prediction parameters that decrease the deployment cost prediction accuracy are decreased.
2 . The computing system of claim 1 , wherein
the one or more computing workloads that are preauthorized for automatic deployment are based on inputting the resource data into the one or more machine learning models.
3 . The computing system of claim 1 , wherein the cloud API connector is configured to perform real-time retrieval of the resource data or the cloud service provider data.
4 . The computing system of claim 1 , wherein the meeting the one or more criteria comprises the predicted deployment costs being less than the deployment costs of the one or more computing workloads by at least a threshold amount.
5 . The computing system of claim 1 , wherein the one or more machine learning models comprise a decision tree model configured based on historical costs of deploying the one or more computing workloads to a plurality of historical cloud service providers.
6 . The computing system of claim 1 , wherein the plurality of cloud service providers comprise a plurality of computing hardware resources or computing software resources on which computing processes of the one or more computing workloads are capable of being executed.
7 . The computing system of claim 1 , wherein the one or more computing workloads that are preauthorized for automatic deployment are based on whether the one or more computing workloads are critical workloads that require authorization for redeployment.
8 . The computing system of claim 1 , wherein the one or more computing workloads comprise computing processes executed on one or more physical devices of the plurality of cloud service providers or one or more virtual devices of the plurality of cloud service providers.
9 . The computing system of claim 1 , wherein the deployment cost prediction accuracy is based on an amount of similarity between the predicted deployment costs and the ground-truth deployment costs.
10 . The computing system of claim 1 , wherein the indications of the predicted deployment costs comprise indications of a difference between the predicted deployment costs and the deployment costs of the one or more computing workloads that are currently deployed.
11 . The computing system of claim 1 , wherein the one or more machine learning models comprise a neural network, and deployment costs for each of the plurality of cloud service providers are based on the resource data and the cloud service provider data.
12 . The computing system of claim 11 , wherein the predicted deployment costs comprise the deployment costs for each of the plurality of cloud service providers.
13 . A method executed by a computing device comprising one or more processors for deploying one or more computing workloads on one or more cloud computing systems, the method comprising:
retrieving resource data comprising deployment costs of the one or more computing workloads that are currently deployed on the one or more cloud computing systems, wherein the one or more computing workloads comprise one or more computing workloads that are preauthorized for automatic deployment to a plurality of cloud service providers, and one or more computing workloads that are not preauthorized for automatic deployment to the plurality of cloud service providers;
retrieving via a cloud application programming interface (API) connector, cloud service provider data comprising provider costs of the plurality of cloud service providers;
generating based on inputting the resource data and the cloud service provider data into one or more machine learning models, cloud deployment data comprising predicted deployment costs of the plurality of cloud service providers for each of the one or more computing workloads;
based on the deployment costs for one or more of the plurality of cloud service providers meeting one or more criteria, deploying the one or more computing workloads that are preauthorized for automatic deployment to the one or more of the plurality of cloud service providers with the predicted deployment costs that meet the one or more criteria;
displaying generating, for each of the one or more computing workloads that are not preauthorized for automatic deployment, based on the cloud deployment data, indications of the predicted deployment costs resulting from deployment of a respective computing workload that is not preauthorized for automatic deployment to the plurality of cloud service providers;
accessing deployment cost training data comprising a plurality of historical deployment costs of the plurality of cloud service providers and a plurality of historical deployments of the one or more computing workloads; and
generating, based on inputting the deployment cost training data into the one or more machine learning models, the predicted deployment costs, wherein:
a deployment cost prediction accuracy of the one or more machine learning models is based on a similarity between the predicted deployment costs and a plurality of ground-truth deployment costs,
at least one adjustment to a weighting of one or more deployment cost prediction parameters of the one or more machine learning models is based on the deployment cost prediction accuracy,
the weighting of the deployment cost prediction parameters that increase the deployment cost prediction accuracy are increased, and
the weighting of the deployment cost prediction parameters that decrease the deployment cost prediction accuracy are decreased.
14 . The method of claim 13 , wherein the deployment cost prediction accuracy is based on an amount of similarity between the predicted deployment costs and the ground-truth deployment costs.
15 . The method of claim 13 , wherein the cloud API connector is configured to perform real-time retrieval of the resource data or the cloud service provider data.
16 . The method of claim 13 , wherein the one or more computing workloads that are preauthorized for automatic deployment are based on whether the one or more computing workloads are critical workloads that require authorization for redeployment.
17 . One or more non-transitory computer-readable comprising instructions that, when executed by a computing platform comprising at least one processor, a communication interface, and memory, cause the computing platform to:
retrieve resource data comprising deployment costs of one or more computing workloads that are currently deployed on one or more cloud computing systems, wherein the one or more computing workloads comprise one or more computing workloads that are preauthorized for automatic deployment to a plurality of cloud service providers, and one or more computing workloads that are not preauthorized for automatic deployment to the plurality of cloud service providers;
retrieve, via a cloud application programming interface (API) connector, cloud service provider data comprising provider costs of the plurality of cloud service providers;
generate, based on inputting the resource data and the cloud service provider data into one or more machine learning models, cloud deployment data comprising predicted deployment costs of the plurality of cloud service providers for each of the one or more computing workloads;
based on the deployment costs for one or more of the plurality of cloud service providers meeting one or more criteria, deploy the one or more computing workloads that are preauthorized for automatic deployment to the one or more of the plurality of cloud service providers with the predicted deployment costs that meet the one or more criteria;
display, for each of the one or more computing workloads that are not preauthorized for automatic deployment, based on the cloud deployment data, indications of the predicted deployment costs resulting from deployment of a respective computing workload that is not preauthorized for automatic deployment to the plurality of cloud service providers;
access deployment cost training data comprising a plurality of historical deployment costs of the plurality of cloud service providers and a plurality of historical deployments of the one or more computing workloads; and
generate, based on inputting the deployment cost training data into the one or more machine learning models, the predicted deployment costs, wherein:
a deployment cost prediction accuracy of the one or more machine learning models is based on a similarity between the predicted deployment costs and a plurality of ground-truth deployment costs,
at least one adjustment to a weighting of one or more deployment cost prediction parameters of the one or more machine learning models is based on the deployment cost prediction accuracy,
the weighting of the deployment cost prediction parameters that increase the deployment cost prediction accuracy are increased, and
the weighting of the deployment cost prediction parameters that decrease the deployment cost prediction accuracy are decreased.