1 AIT Asian Institute of Technology

Minimalistic adaptive resource management for multi-tier applications hosted on clouds

AuthorIqbal, Waheed
Call NumberAIT Diss. no.CS-12-06
Subject(s)Cloud computing
Gaussian processes

NoteA dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science, School of Engineering and Technology
PublisherAsian Institute of Technology
Series StatementDissertation ; no. CS-12-06
AbstractCloud computing allows Web application owners to host their applications with low operational cost and enables them to scale applications to maintain performance based on traffic load and application resource requirements. Cloud providers intend to maximize revenue by serving large pools of users using minimal resource allocation while ensuring that specific service guarantees. One of the typical architectures for cloud-hosted applications is the multi-tier Web application. From the user’s point of view, response time is the most important attribute of a Web application. To offer specific response time guarantees for multi-tier Web applications using minimal resource allocation, cloud service providers need to automatically identify bottle-necks and scale only the specific resource tier where the bottleneck occurs. However, for multi-tier Web applications in particular, it is difficult to automatically identify bottlenecks and scale the appropriate resource tier. Application performance in the multi-tier architecture is complex in nature; depends critically on traffic usage patterns, which are highly dynamic and difficult to predict. In this dissertation, we first propose and evaluate a system that reactively identifies bottle-necks in multi-tier Web applications and scales only the appropriate tier to ensure specific response time guarantees with minimal hardware profiling and application-centric knowledge. The proposed system is capable of minimizing resource allocation by retracting over-provisioned resources automatically using a predictive model based on the application’s specific usage patterns. We demonstrate the feasibility of the approach in an experimental evaluation with a testbed EUCALYPTUS-based cloud and a synthetic workload. This kind of automatic bottleneck detection and resolution under dynamic resource management has the potential to enable cloud infrastructure providers to ensure response time guarantees to multi-tier Web applications while minimizing resource utilization. Second, we improve the system by enhancing it to learn optimal resource allocation policies online. The proposed system first identifies workload patterns for a multi-tier Web application from access logs using unsupervised machine learning, reactively identifies bottlenecks for specific workload patterns, and learns optimal resource allocation policies by monitoring access logs in real time. The experimental results show that the proposed system can enable cloud providers to offer service time guarantees for multi-tier Web applications without any prior knowledge of the application’s resource demands or workload patterns. Third, we propose and evaluate a black-box method for capacity prediction that again identifies workload patterns for a multi-tier Web application and then, based on those patterns, builds a model capable of predicting the application’s capacity for any specific workload pattern. The capacity of a multi-tier Web application varies substantially as the pattern of requests in the workload changes. In an experimental evaluation, we compare a baseline method that predicts capacity without a model of the application-specific workload patterns to several regression models using the proposed workload identification method. All of the models based on workload pattern identification outperform the baseline method. The best model, a Gaussian process regression model, gives only 6.42% error. The proposed method would be useful for proactively performing dynamic allocation of resources to multi-tier Web applications, meeting service level agreements at minimal cost. Finally, we demonstrate the utility of adaptive resource allocation via an approach to scale gracefully in the presence of rapid increases in workload for multi-tier applications that have resource-intensive back ends responsible for continuous collection and analysis of real-time data from external services or applications. We demonstrate the feasibility of the approach in an experimental evaluation with a testbed cloud and a realistic simulation of a large scale external XMPP chat service. We conclude that cloud computing with adaptive resource allocation has the potential to increase the usability, stability, and performance of large-scale back-end mashup applications. The techniques proposed in this dissertation would help cloud infrastructure providers offer response time guarantees to the owners of multi-tier applications using adaptive resource management while minimizing resource allocation. Application owners could also implement the proposed techniques on top of any cloud-based infrastructure to ensure necessary response time guarantees for their applications. Both cloud service providers and application owners benefit: the cloud service providers increase their revenue by accommodating more applications with minimal resources, and application owners obtain guarantees for the performance of their applications with low operational costs.
Year2012
Corresponding Series Added EntryAsian Institute of Technology. Dissertation ; no. CS-12-06
TypeDissertation
SchoolSchool of Engineering and Technology (SET)
DepartmentDepartment of Information and Communications Technologies (DICT)
Academic Program/FoSComputer Science (CS)
Chairperson(s)Dailey, Matthew N.;
Examination Committee(s)Carrera, David;Duboz, Raphael;Jin, Hai;
Scholarship Donor(s)Higher Education Commission (HEC), Pakistan;Asian Institute of Technology Fellowship;
DegreeThesis (Ph.D.) - Asian Institute of Technology, 2012


Usage Metrics
View Detail0
Read PDF0
Download PDF0