Combining time series prediction models using genetic algorithm to autoscaling Web applications hosted in the cloud infrastructure

In a cloud computing environment, companies have the ability to allocate resources according to demand. However, there is a delay that may take minutes between the request for a new resource and it being ready for using. This causes the reactive techniques, which request a new resource only when the system reaches a certain load threshold, to be not suitable for the resource allocation process. To address this problem, it is necessary to predict requests that arrive at the system in the next period of time to allocate the necessary resources, before the system becomes overloaded. There are several time series forecasting models to calculate the workload predictions based on history of monitoring data. However, it is difficult to know which is the best time series forecasting model to be used in each case. The work becomes even more complicated when the user does not have much historical data to be analyzed. Most related work considers only single methods to evaluate the results of the forecast. Other works propose an approach that selects suitable forecasting methods for a given context. But in this case, it is necessary to have a significant amount of data to train the classifier. Moreover, the best solution may not be a specific model, but rather a combination of models. In this paper we propose an adaptive prediction method using genetic algorithms to combine time series forecasting models. Our method does not require a previous phase of training, because it constantly adapts the extent to which the data are coming. To evaluate our proposal, we use three logs extracted from real Web servers. The results show that our proposal often brings the best result and is generic enough to adapt to various types of time series.

[1]  Éva Tardos,et al.  Algorithm design , 2005 .

[2]  Michael Miller,et al.  Cloud Computing: Web-Based Applications That Change the Way You Work and Collaborate Online , 2008 .

[3]  José Antonio Lozano,et al.  A Review of Auto-scaling Techniques for Elastic Applications in Cloud Environments , 2014, Journal of Grid Computing.

[4]  Ajay Mohindra,et al.  Scalability and Performance of Web Applications in a Compute Cloud , 2011, 2011 IEEE 8th International Conference on e-Business Engineering.

[5]  Jie Lu,et al.  Optimal Cloud Resource Auto-Scaling for Web Applications , 2013, 2013 13th IEEE/ACM International Symposium on Cluster, Cloud, and Grid Computing.

[6]  Randy H. Katz,et al.  Above the Clouds: A Berkeley View of Cloud Computing , 2009 .

[7]  Rajkumar Buyya,et al.  Adaptive threshold-based approach for energy-efficient consolidation of virtual machines in cloud data centers , 2010, MGC '10.

[8]  Cherukuri Aswani Kumar,et al.  A Comparitive Study of Predictive Models for Cloud Infrastructure Management , 2014, 2014 14th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing.

[9]  Kang G. Shin,et al.  Automated control of multiple virtualized resources , 2009, EuroSys '09.

[10]  George B. Dantzig,et al.  Linear programming and extensions , 1965 .

[11]  Duncan J. Murdoch,et al.  A First Course in Statistical Programming with R , 2007 .

[12]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[13]  Gwilym M. Jenkins,et al.  Time series analysis, forecasting and control , 1971 .

[14]  Samuel Kounev,et al.  Self‐adaptive workload classification and forecasting for proactive resource provisioning , 2014, Concurr. Comput. Pract. Exp..

[15]  Steven Hand,et al.  Self-adaptive and self-configured CPU resource provisioning for virtualized servers using Kalman filters , 2009, ICAC '09.

[16]  Thilo Kielmann,et al.  Autoscaling Web Applications in Heterogeneous Cloud Infrastructures , 2014, 2014 IEEE International Conference on Cloud Engineering.

[17]  Jing Xu,et al.  On the Use of Fuzzy Modeling in Virtualized Data Center Management , 2007, Fourth International Conference on Autonomic Computing (ICAC'07).

[18]  Aniruddha S. Gokhale,et al.  Efficient Autoscaling in the Cloud Using Predictive Models for Workload Forecasting , 2011, 2011 IEEE 4th International Conference on Cloud Computing.

[19]  Jeffrey S. Chase,et al.  Automated control in cloud computing: challenges and opportunities , 2009, ACDC '09.

[20]  Johan Tordsson,et al.  An adaptive hybrid elasticity controller for cloud infrastructures , 2012, 2012 IEEE Network Operations and Management Symposium.

[21]  Rob J Hyndman,et al.  Automatic Time Series Forecasting: The forecast Package for R , 2008 .

[22]  Carl M. Harris,et al.  Fundamentals of queueing theory , 1975 .

[23]  George Athanasopoulos,et al.  Forecasting: principles and practice , 2013 .

[24]  Jing Xu,et al.  Fuzzy Modeling Based Resource Management for Virtualized Database Systems , 2011, 2011 IEEE 19th Annual International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems.

[25]  Ajay Mohindra,et al.  Dynamic Scaling of Web Applications in a Virtualized Cloud Computing Environment , 2009, 2009 IEEE International Conference on e-Business Engineering.

[26]  M. Di Penta,et al.  Modeling Web maintenance centers through queue models , 2001, Proceedings Fifth European Conference on Software Maintenance and Reengineering.

[27]  Martin Arlitt,et al.  A workload characterization study of the 1998 World Cup Web site , 2000, IEEE Netw..

[28]  P. Young,et al.  Time series analysis, forecasting and control , 1972, IEEE Transactions on Automatic Control.

[29]  Stephan Kolassa Two Notable New Forecasting Texts: Principles of Business Forecasting by Keith Ord & Robert Fildes Forecasting: Principles and Practice by Rob Hyndman & George Athanasopoulos , 2012 .