Abstract
Datacenters are core computational engines in cloud computing. They are de facto platforms to run computationally intensive applications and execute big data workload. They are expected to provide reliable and cost-effective cloud services. The exponential growth in cloud applications, the demand for more computational and communicative resources, and the need for energy and cost-efficient resource management have motivated researchers to introduce an array of resources management techniques to efficiently manage datacenters' resources.
To address these challenges and facilitate future advancements in datacenters, it is important to synthesize, classify and assess the proposed resources management techniques for datacenter clusters. This article investigates how different architectural designs could affect the operational effectiveness of a datacenter. It presents key contributions and a taxonomy of resource management techniques that would guide future design and developmental efforts. It will help researchers and developers to design the most appropriate resource management framework for their datacenters and optimize certain design goals under different workloads.