Data-driven methods for efficient resource allocation and energy management in cloud datacentres




Dezhabad, Naghmeh

Journal Title

Journal ISSN

Volume Title



Cloud providers aim to efficiently deliver various types of services on-demand to user jobs with diverse requirements and different desired performance metrics. Besides, cloud systems provide heterogeneous types of resources. Diversity of demands and variety of resources impose challenges like resource allocation, capacity planning and scheduling strategies. Among all available cloud-based solutions, spot instances are ideal for batch job execution with flexible completion times and failure tolerance. The combination of spot instance sizes and prices provides flexibility to execute jobs satisfactorily with regard to their computational requirements. However, the demand for each type of batch instance fluctuates over time and it brings a few challenges to provide adequate instances to match the workload demand. This makes it necessary to have a mechanism to dynamically decide on the best configuration of resources assignment to the submitted jobs. The objective of this thesis work is to propose data-driven methods for efficient resource allocation in cloud environment. For this, we first present a new methodology to categorize cloud workload according to its resource demands. We employ a modified hierarchical clustering algorithm to determine the number of clusters with fairly homogeneous resource demand. Then, for each one of these demand profiles, we extract the number of incoming requests over time and predict the future number of requests. We take these predictions into consideration for design of batch processing system. After this preliminary work, we expand the study by presenting a batch processing system. We use the result of clustering and prediction models with some changes, then complete the architecture by adding decision making component. We come up with an optimization-based solution to allocate spot resources for executing arriving batch jobs in the cloud platforms over time. The methodology manages the trade-off between the cost of renting spot instances and the user-centric quality of service in terms of job waiting time. Given a set of jobs and spot instances of various types, our algorithm selects the best combination of instances in each analysis window. In addition, the method takes into account the job arrival prediction and characteristics of input jobs to adapt the algorithm. We also investigate Alibaba datacentre workload for any unusual behavior in servers’ resource usage pattern. Detecting these types of anomalies would help in making decisions for efficient resource allocation and increase performance. In another use case of resource usage prediction in datacentres, we study the applicability of resource usage prediction and its impact on optimal resource allocation where the power consumption is kept to a minimum, while the Service Level Agreement (SLA) will be met. The results show that using prediction techniques, we can estimate datacentre resource usage and consequently we are able to reduce the energy usage up to 56%.