Abstract
Cloud computing enables clients to acquire cloud resources dynamically and on demand for their cloud applications and services. For cloud providers, especially, Software as a Service (SaaS) providers, the prediction of future cloud resource requirements, such as CPU usage for their cloud applications, to implement client requests is a complex task because it depends on incoming workloads. Due to workload fluctuations, it is difficult for SaaS cloud providers to predict or forecast future demand for resource usage in the next time interval and, accordingly, to allocate the required resources. Furthermore, cloud computing systems consist of many virtual machines (VMs), which increases the complexity of the prediction problem due to the correlations that exist between the large workload data in these VMs. Therefore, accurate resource usage forecasting remains a challenge, and relatively few studies have explored the prediction of CPU usage for VMs in cloud data centers. This paper proposes an autonomic and intelligent workload forecasting method for cloud resource provisioning based on the concept of autonomic computing and a deep learning approach. In particular, to predict future demand for CPU usage and determine how to respond to workload fluctuations in the next interval, we propose an efficient deep learning model based on a diffusion convolutional recurrent neural network (DCRNN). Existing deep learning models that are widely applied cannot handle accurate real-time forecasting due to the presence of inconsistent and nonlinear workloads in cloud computing systems. The goal of the proposed deep learning model is to improve forecasting accuracy and minimize the error between the predicted and the actual workloads. The effectiveness of the proposed DCRNN-based deep learning model was evaluated using experiments on a real-world dataset of PlanetLab’s CPU usage traces. The results indicate that the proposed approach outperformed other existing deep learning models, achieving a mean absolute percentage error of 0.18 and root-mean-square error of 2.40.
Similar content being viewed by others
References
Al-Asaly MS, Hassan MM, Alsanad A (2019) A cognitive/intelligent resource provisioning for cloud computing services: opportunities and challenges. Soft Comput 23:9069–9081
Zhang Q, Cheng L, Boutaba R (2010) Cloud computing: state-of-the-art and research challenges. J Internet Serv Appl 1:7–18
Lorido-Botran T, Miguel-Alonso J, Lozano JA (2014) A review of auto-scaling techniques for elastic applications in cloud environments. J Grid Comput 12:559–592
Buyya R, Yeo CS, Venugopal S, Broberg J, Brandic I (2009) Cloud computing and emerging IT platforms: vision, hype, and reality for delivering computing as the 5th utility. Futur Gener Comput Syst 25:599–616
Buyya R, Vecchiola C, Selvi ST (2013) Mastering cloud computing: foundations and applications programming. Newnes
Chandrasekaran K (2014) Essentials of cloud computing. CrC Press, Boca Raton
Mustafa S, Nazir B, Hayat A, Khan AUR, Madani SA (2015) Resource management in cloud computing: taxonomy, prospects, and challenges. Comput Electr Eng 47:186–203
Manvi SS, Krishna Shyam G (2014) Resource management for Infrastructure as a Service (IaaS) in cloud computing: a survey. J Netw Comput Appl 41:424–440
Herbst NR, Kounev S, Reussner R (2013) Elasticity in cloud computing: What it is, and what it is not. In: 10th Int Conf Auton Comput (ICAC 13). pp 23–27
Qavami HR, Jamali S, Akbari MK, Javadi B (2014) Dynamic resource provisioning in cloud computing: a heuristic markovian approach. Lect Notes Inst Comput Sci Soc Telecommun Eng LNICST 133:102–111
Amiri M, Mohammad-Khanli L (2017) Survey on prediction models of applications for resources provisioning in cloud. J Netw Comput Appl 82:93–113
Kephart JO, Chess DM (2003) The vision of autonomic computing. Computer (Long Beach Calif) 36:41–50
Ghobaei-Arani M, Jabbehdari S, Pourmina MA (2018) An autonomic resource provisioning approach for service-based cloud applications: a hybrid approach. Futur Gener Comput Syst 78:191–210
Jacob B, Lanyon-Hogg R, Nadgir DK, Yassin AF (2004) A practical guide to the IBM autonomic computing toolkit. IBM Redbooks 4
Maurer M, Brandic I, Sakellariou R (2013) Adaptive resource configuration for Cloud infrastructure management. Futur Gener Comput Syst 29:472–487
Mateen M, Hayat S, Tehreem T, Akbar MA (2020) A self-adaptive resource provisioning approach using fuzzy logic for cloud-based applications. Int J Comput Digit Syst 9
Li Y, Yu R, Shahabi C, Liu Y (2017) Diffusion convolutional recurrent neural network: data-driven traffic forecasting. arXiv 1–16
Zhang Q, Yang LT, Chen Z, Li P (2018) A survey on deep learning for big data. Inf Fusion 42:146–157
Zhang Q, Yang LT, Yan Z, Chen Z, Li P (2018) An efficient deep learning model to predict cloud workload for industry informatics. IEEE Trans Ind Inform 14:3170–3178
Deng L, Yu D (2014) Deep learning: methods and applications. Found Trends Signal Process 7:197–387
Qiu F, Zhang B, Guo J (2016) A deep learning approach for VM workload prediction in the cloud. In: 2016 IEEE/ACIS 17th Int Conf Softw Eng Artif Intell Netw Parallel/Distributed Comput SNPD 2016 319–324
Zhang W, Duan P, Yang LT, Xia F, Li Z, Lu Q, Gong W, Yang S (2017) Resource requests prediction in the cloud computing environment with a deep belief network. Softw Pract Exp 47:473–488
Kumar J, Singh AK, Buyya R (2021) Self directed learning based workload forecasting model for cloud resource management. Inf Sci (Ny) 543:345–366
Tran L, Mun MY, Lim M, Yamato J, Huh N, Shahabi C (2020) DeepTRANS: a deep learning system for public bus travel time estimation using traffic forecasting. Proc VLDB Endow 13:2957–2960
Andreoletti D, Troia S, Musumeci F, Giordano S, Maier G, Tornatore M (2019) Network traffic prediction based on diffusion convolutional recurrent neural networks. INFOCOM 2019 - IEEE Conf Comput Commun Work INFOCOM WKSHPS 2019 246–251
Masdari M, Khoshnevis A (2020) A survey and classification of the workload forecasting methods in cloud computing. Cluster Comput 23:2399–2424
Islam S, Keung J, Lee K, Liu A (2012) Empirical prediction models for adaptive resource provisioning in the cloud. Futur Gener Comput Syst 28:155–162
Bankole AA, Ajila SA (2013) Predicting cloud resource provisioning using machine learning techniques. Can Conf Electr Comput Eng 31–34
Garg SK, Toosi AN, Gopalaiyengar SK, Buyya R (2014) SLA-based virtual machine management for heterogeneous workloads in a cloud datacenter. J Netw Comput Appl 45:108–120
Kousiouris G, Menychtas A, Kyriazis D, Gogouvitis S, Varvarigou T (2014) Dynamic, behavioral-based estimation of resource provisioning based on high-level application terms in Cloud platforms. Futur Gener Comput Syst 32:27–40
Chang YC, Chang RS, Chuang FW (2014) A predictive method for workload forecasting in the cloud environment. Lect Notes Electr Eng. https://doi.org/10.1007/978-94-007-7262-5_65
Chen Z, Zhu Y, Di Y, Feng S (2015) Self-adaptive prediction of cloud resource demands using ensemble model and subtractive-fuzzy clustering based fuzzy neural network. Comput Intell Neurosci. https://doi.org/10.1155/2015/919805
Ramezani F, Naderpour M (2017) A fuzzy virtual machine workload prediction method for cloud environments. IEEE Int Conf Fuzzy Syst. https://doi.org/10.1109/FUZZ-IEEE.2017.8015450
Amiri M, Feizi-Derakhshi MR, Mohammad-Khanli L (2017) IDS fitted Q improvement using fuzzy approach for resource provisioning in cloud. J Intell Fuzzy Syst 32:229–240
Khorsand R, Ghobaei-Arani M, Ramezanpour M (2018) WITHDRAWN: A fuzzy auto-scaling approach using workload prediction for MMOG application in a cloud environment. Simul Model Pract Theory 1
Li S, Wang Y, Qiu X, Wang D, Wang L (2013) A workload prediction-based multi-vm provisioning mechanism in cloud computing. In: 2013 15th Asia-Pacific Netw. Oper. Manag. Symp. IEEE, pp 1–6
Kumar AS, Mazumdar S (2016) Forecasting HPC workload using ARMA models and SSA. In: 2016 Int. Conf. Inf. Technol. IEEE, pp 294–297
Calheiros RN, Masoumi E, Ranjan R, Buyya R (2015) Workload prediction using ARIMA model and its impact on cloud applications’ QoS. IEEE Trans Cloud Comput 3:449–458
Messias VR, Estrella JC, Ehlers R, Santana MJ, Santana RC, Reiff-Marganiec S (2016) Combining time series prediction models using genetic algorithm to autoscaling Web applications hosted in the cloud infrastructure. Neural Comput Appl 27:2383–2406
Barati M, Sharifian S (2015) A hybrid heuristic-based tuned support vector regression model for cloud load prediction. J Supercomput 71:4235–4259
Baig SUR, Iqbal W, Berral JL, Erradi A, Carrera D (2019) Adaptive prediction models for data center resources utilization estimation. IEEE Trans Netw Serv Manag 16:1681–1693
Nikravesh AY, Ajila SA, Lung CH (2015) Towards an autonomic auto-scaling prediction system for cloud resource provisioning. In: Proc - 10th Int Symp Softw Eng Adapt Self-Managing Syst SEAMS 2015 35–45
Ran Y, Yang J, Zhang S, Xi H (2017) Dynamic IaaS computing resource provisioning strategy with QoS constraint. IEEE Trans Serv Comput 10:190–202
Moreno-Vozmediano R, Montero RS, Huedo E, Llorente IM (2019) Efficient resource provisioning for elastic Cloud services based on machine learning techniques. J Cloud Comput. https://doi.org/10.1186/s13677-019-0128-9
Tofighy S, Rahmanian AA, Ghobaei-Arani M (2018) An ensemble CPU load prediction algorithm using a Bayesian information criterion and smooth filters in a cloud computing environment. Softw Pract Exp 48:2257–2277
Krizhevsky A, Sutskever I, Hinton GE (2017) Imagenet classification with deep convolutional neural networks. Commun ACM 60:84–90
Ciregan D, Meier U, Schmidhuber J (2012) Multi-column deep neural networks for image classification. Proc IEEE Comput Soc Conf Comput Vis Pattern Recognit 3642–3649
Sermanet P, Eigen D, Zhang X, Mathieu M, Fergus R, LeCun Y (2014) Overfeat: integrated recognition, localization and detection using convolutional networks. 2nd Int. Conf. Learn. Represent. ICLR 2014 - Conf. Track Proc
Ciresan DC, Meier U, Schmidhuber J (2012) Transfer learning for Latin and Chinese characters with deep neural networks. Proc Int Jt Conf Neural Networks. https://doi.org/10.1109/IJCNN.2012.6252544
Ren JS, Xu L (2015) On vectorization of deep convolutional neural networks for vision tasks. Proc Natl Conf Artif Intell 3:1840–1846
Farabet C, Couprie C, Najman L, Lecun Y (2013) Learning hierarchical features for scene labeling. IEEE Trans Pattern Anal Mach Intell 35:1915–1929
Tompson J, Jain A, LeCun Y, Bregler C (2014) Joint training of a convolutional network and a graphical model for human pose estimation. Adv Neural Inf Process Syst 2:1799–1807
Szegedy C, Liu W, Jia Y, Sermanet P, Reed S, Anguelov D, Erhan D, Vanhoucke V, Rabinovich A (2015) Going deeper with convolutions. In: Proc IEEE Conf Comput Vis pattern Recognit pp 1–9
Hayat M, Bennamoun M, An S (2015) Deep reconstruction models for image set classification. IEEE Trans Pattern Anal Mach Intell 37:713–727
Mikolov T, Deoras A, Povey D, Burget L, Černocký J (2011) Strategies for training large scale neural network language models. In: 2011 IEEE Work Autom Speech Recognit Understanding, ASRU 2011, Proc 196–201
Hinton G, Deng L, Yu D, Dahl GE, Mohamed A, Jaitly N, Senior A, Vanhoucke V, Nguyen P, Sainath TN (2012) Deep neural networks for acoustic modeling in speech recognition: the shared views of four research groups. IEEE Signal Process Mag 29:82–97
Sainath TN, Mohamed AR, Kingsbury B, Ramabhadran B (2013) Deep convolutional neural networks for LVCSR. ICASSP, IEEE Int Conf Acoust Speech Signal Process - Proc 8614–8618
Collobert R, Weston J, Bottou L, Karlen M, Kavukcuoglu K, Kuksa P (2011) Natural language processing (almost) from scratch. J Mach Learn Res 12:2493–2537
Mikolov T, Sutskever I, Chen K, Corrado GS, Dean J (2013) Distributed representations of words and phrases and their compositionality. Adv Neural Inf Process Syst 26:3111–3119
Lv Y, Duan Y, Kang W, Li Z, Wang FY (2015) Traffic flow prediction with big data: a deep learning approach. IEEE Trans Intell Transp Syst 16:865–873
Dey S, Pratiher S, Mukherjee CK, Banerjee S (2020) Solarisnet: a deep regression network for solar radiation prediction. Mausam 71:443–450
Cole JH, Poudel RPK, Tsagkrasoulis D, Caan MWA, Steves C, Spector TD, Montana G (2017) Predicting brain age with deep learning from raw imaging data results in a reliable and heritable biomarker. Neuroimage 163:115–124
Lecun Y, Bengio Y, Hinton G (2015) Deep learning. Nature 521:436–444
Patel YS, Misra R (2018) Performance comparison of deep VM workload prediction approaches for cloud. In: Prog Comput Anal Netw. Springer, pp 149–160
Gupta S, Dinesh DA (2018) Resource usage prediction of cloud workloads using deep bidirectional long short term memory networks. In: 11th IEEE Int Conf Adv Networks Telecommun Syst ANTS 2017 1–6
Calheiros RN, Ranjan R, Beloglazov A, De Rose CAF, Buyya R (2011) CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw Pract Exp 41:23–50
Acknowledgements
This work was supported by King Saud University, Riyadh, Saudi Arabia, under Researchers Supporting Project number RSP-2021/18.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
There is no conflict of interests among the authors.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Al-Asaly, M.S., Bencherif, M.A., Alsanad, A. et al. A deep learning-based resource usage prediction model for resource provisioning in an autonomic cloud computing environment. Neural Comput & Applic 34, 10211–10228 (2022). https://doi.org/10.1007/s00521-021-06665-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00521-021-06665-5