Abstract

Cloud computing is a paradigm that uses techniques such as virtualization, time sharing and distributed computing to provide a wide range of hardware and software services for users based on a pay-as-you-go model, on-demand and via ubiquitous network access. Due to the scarcity of important cloud resources such as compute, network and storage, cloud service providers should carefully select, apply and distribute resources within the predefined boundaries of the cloud system meanwhile satisfy the requirements of running applications. One of the most critical components of the cloud computing architecture is resource allocation, where its effectiveness significantly affects the functionality of the entire cloud system. Implementing efficient resource allocation schemes and algorithms in cloud systems is not straightforward and faces several challenges including compromising between the required implementation costs and the utilization of resources, satisfying delay requirements of running applications, effective reallocation of resources, reducing computational complexity and scheduling workloads and tasks appropriately across a data center or in a heterogeneous multicloud environment. One of the goals of the consumers of cloud computing services is to complete tasks at minimal cost. In terms of cost efficiency, the goal of cloud providers is to maximize the resource utilization and thus the profits while cloud users are aimed at achieving the alternative goal which is to reduce the cost without compromising the quality of delivered services. There are various approaches of implementing resource allocation to compromise between maximizing the resource utilization and minimizing the consumer’s costs. In this article, we survey different scheduling algorithms and resource allocation approaches in the cloud computing environment, which include the prediction of resource requests in virtual machines and optimal allocation of resources to reduce costs and increase efficiency.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call