Abstract
Recently, there has been growing interest in distributed models for addressing issues related to Cloud computing environments, particularly resource allocation. This involves two main approaches: task scheduling, where the Cloud provider assigns tasks to Virtual Machines (VMs), and VM-to-Physical Machine mapping. These aspects are closely linked to the crucial issue of energy consumption in Cloud computing. A systematic and comprehensive review of the recent literature published between 2016 and 2023 was conducted to address the challenges and highlight the current state of research in this field. The review also highlights new opportunities for future research and guides for researchers to develop new contributions or improve upon existing ones. This work aims to help advance the state of resource allocation in Cloud computing environments.
Similar content being viewed by others
Data availability
All data and materials used in this research are available upon request.
Code availability
There is no code in this review.
References
Huawei Technologies, L.: Introduction to cloud computing computing. Cloud Computing Technology, pp. 1–58. Springer, New York (2022)
Voorsluys, W., Broberg, J., Buyya, R.: Introduction to cloud computing. Cloud Computing: Principles and Paradigms, pp. 1–41. Wiley, Hoboken (2011)
Mohamed, A., Hamdan, M., Khan, S., Abdelaziz, A., Babiker, S.F., Imran, M., Marsono, M.N.: Software-defined networks for resource allocation in cloud computing: a survey. Comput. Netw. 195, 108151 (2021). https://doi.org/10.1016/j.comnet.2021.108151
Vinothina, V.V., Sridaran, R., Ganapathi, P.: A survey on resource allocation strategies in cloud computing. Int J Adv Comput Sci Appl (2012). https://doi.org/10.14569/IJACSA.2012.030616
Parikh, S.M.: A survey on cloud computing resource allocation techniques. In: 2013 Nirma University International Conference on Engineering (NUiCONE), pp. 1–5 (2013). https://doi.org/10.1109/NUiCONE.2013.6780076. IEEE
Mohamaddiah, M.H., Abdullah, A., Subramaniam, S., Hussin, M.: A survey on resource allocation and monitoring in cloud computing. Int. J. Mach. Learn. Comput. 4(1), 31–38 (2014). https://doi.org/10.7763/IJMLC.2014.V4.382
Anuradha, V., Sumathi, D.: A survey on resource allocation strategies in cloud computing. In: International Conference on Information Communication and Embedded Systems (ICICES2014), pp. 1–7 (2014). https://doi.org/10.1109/ICICES.2014.7033931. IEEE
Madni, S.H.H., Latiff, M.S.A., Coulibaly, Y., Abdulhamid, S.M.: Recent advancements in resource allocation techniques for cloud computing environment: a systematic review. Clust. Comput. 20, 2489–2533 (2017). https://doi.org/10.1007/s10586-016-0684-4
Saidi, K., Hioual, O., Siam, A.: Resources allocation in cloud computing: a survey. In: International Conference in Artificial Intelligence in Renewable Energetic Systems, pp. 356–364 (2019). https://doi.org/10.1007/978-3-030-37207-1_37. Springer
Abid, A., Manzoor, M.F., Farooq, M.S., Farooq, U., Hussain, M.: Challenges and issues of resource allocation techniques in cloud computing. KSII Trans. Internet Inf. Syst. 14(7), 2815–2839 (2020). https://doi.org/10.3837/tiis.2020.07.005
Murad, S.A., Muzahid, A.J.M., Azmi, Z.R.M., Hoque, M.I., Kowsher, M.: A review on job scheduling technique in cloud computing and priority rule based intelligent framework. J. King Saud Univ. Comput. Inf. Sci. (2022). https://doi.org/10.1016/j.jksuci.2022.03.027
Khan, T., Tian, W., Zhou, G., Ilager, S., Gong, M., Buyya, R.: Machine learning (ml)-centric resource management in cloud computing: a review and future directions. J. Netw. Compu. Appl. (2022). https://doi.org/10.1016/j.jnca.2022.103405
Alnajdi, S., Dogan, M., Al-Qahtani, E.: A survey on resource allocation in cloud computing. Int. J. Cloud Comput. (2016). https://doi.org/10.5121/ijccsa.2016.6501
Shyam, G.K., Manvi, S.S.: Resource allocation in cloud computing using agents. In: 2015 IEEE International Advance Computing Conference (IACC), pp. 458–463 (2015). https://doi.org/10.1109/IADCC.2015.7154750. IEEE
Mazumdar, S., Scionti, A., Kumar, A.S.: Adaptive resource allocation for load balancing in cloud. Cloud Comput. (2017). https://doi.org/10.1007/978-3-319-54645-2_12
Lavanya, B.M., Bindu, C.S.: Systematic literature review on resource allocation and resource scheduling in cloud computing. Int. J. Adv. Inf. Technol. 6(4), 1–15 (2016). https://doi.org/10.5121/ijait.2016.6401
Jafarnejad Ghomi, E., Rahmani, A.M., Qader, N.N.: Applying queue theory for modeling of cloud computing: a systematic review. Concurr. Comput. 31(17), 5186 (2019). https://doi.org/10.1002/cpe.5186
Lin, J., Dai, Y., Chen, X., Wu, Y.: Resource allocation of cloud application through machine learning: A case study. In: 2017 International Conference on Green Informatics (ICGI), pp. 263–268 (2017). https://doi.org/10.1109/ICGI.2017.52. IEEE
Kumar, Y., Kaul, S., Hu, Y.-C.: Machine learning for energy-resource allocation, workflow scheduling and live migration in cloud computing: state-of-the-art survey. Sustain. Comput. 36, 100780 (2022). https://doi.org/10.1016/j.suscom.2022.100780
Chen, H., Zhu, X., Guo, H., Zhu, J., Qin, X., Wu, J.: Towards energy-efficient scheduling for real-time tasks under uncertain cloud computing environment. J. Syst. Softw. 99, 20–35 (2015). https://doi.org/10.1016/j.jss.2014.08.065
Bello, S.A., Oyedele, L.O., Akinade, O.O., Bilal, M., Delgado, J.M.D., Akanbi, L.A., Ajayi, A.O., Owolabi, H.A.: Cloud computing in construction industry: use cases, benefits and challenges. Autom. Constr. 122, 103441 (2021). https://doi.org/10.1016/j.autcon.2020.103441
Hameed, A., Khoshkbarforoushha, A., Ranjan, R., Jayaraman, P.P., Kolodziej, J., Balaji, P., Zeadally, S., Malluhi, Q.M., Tziritas, N., Vishnu, A., et al.: A survey and taxonomy on energy efficient resource allocation techniques for cloud computing systems. Computing 98, 751–774 (2016). https://doi.org/10.1007/s00607-014-0407-8
Rahman, S., Gupta, A., Tornatore, M., Mukherjee, B.: Dynamic workload migration over backbone network to minimize data center electricity cost. IEEE Trans. Green Commun. Netw. 2(2), 570–579 (2017). https://doi.org/10.1016/j.matpr.2022.03.535
Shirvani, M.H., Rahmani, A.M., Sahafi, A.: A survey study on virtual machine migration and server consolidation techniques in dvfs-enabled cloud datacenter: taxonomy and challenges. J. King Saud Univ. Comput. Inf. Sci. 32(3), 267–286 (2020). https://doi.org/10.1016/j.jksuci.2018.07.001
Dhib, E., Boussetta, K., Zangar, N., Tabbane, N.: Cost, energy, and response delay awareness-solution for cloud resources management: proposition of a predictive dynamic algorithm for vms allocation over a distributed cloud infrastructure. J. Ambient Intell. Humaniz. Comput. 13(4), 2119–2129 (2022). https://doi.org/10.1007/s12652-021-02973-9
Sayadnavard, M.H., Haghighat, A.T., Rahmani, A.M.: A multi-objective approach for energy-efficient and reliable dynamic vm consolidation in cloud data centers. Eng. Sci. Technol. Int. J. 26, 100995 (2022). https://doi.org/10.1016/j.jestch.2021.04.014
Choudhary, A., Rana, S., Matahai, K.: A critical analysis of energy efficient virtual machine placement techniques and its optimization in a cloud computing environment. Procedia Comput. Sci. 78, 132–138 (2016). https://doi.org/10.1016/j.procs.2016.02.022
Abohamama, A.S., Hamouda, E.: A hybrid energy-aware virtual machine placement algorithm for cloud environments. Expert Syst. Appl. 150, 113306 (2020). https://doi.org/10.1016/j.eswa.2020.113306
Keller, G., Tighe, M., Lutfiyya, H., Bauer, M.: An analysis of first fit heuristics for the virtual machine relocation problem. In: 2012 8th International Conference on Network and Service Management (cnsm) and 2012 Workshop on Systems Virtualiztion Management (svm), pp. 406–413 (2012). IEEE
Varasteh, A., Goudarzi, M.: Server consolidation techniques in virtualized data centers: a survey. IEEE Syst. J. 11(2), 772–783 (2015). https://doi.org/10.1109/JSYST.2015.2458273
Beloglazov, A., Abawajy, J., Buyya, R.: Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing. Future Generat. Comput. Syst. 28(5), 755–768 (2012). https://doi.org/10.1016/j.future.2011.04.017
Gupta, M.K., Amgoth, T.: Resource-aware virtual machine placement algorithm for iaas cloud. J. Supercomput. 74(1), 122–140 (2018). https://doi.org/10.1007/s11227-017-2112-9
López-Pires, F., Barán, B.: Cloud computing resource allocation taxonomies. Int. J. Cloud Comput. 6(3), 238–264 (2017). https://doi.org/10.1504/IJCC.2017.086712
Masdari, M., Gharehpasha, S., Ghobaei-Arani, M., Ghasemi, V.: Bio-inspired virtual machine placement schemes in cloud computing environment: taxonomy, review, and future research directions. Cluster Comput. 23(4), 2533–2563 (2020). https://doi.org/10.1007/s10586-019-03026-9
Dashti, S.E., Rahmani, A.M.: Dynamic vms placement for energy efficiency by pso in cloud computing. J. Exp. Theor. Artif. Intell. 28(1–2), 97–112 (2016). https://doi.org/10.1080/0952813X.2015.1020519
Gilesh, M.P., Kumar, S.M., Jacob, L.: Bounding the cost of virtual machine migrations for resource allocation in cloud data centers. In: Proceedings of the 33rd Annual ACM Symposium on Applied Computing, pp. 201–206 (2018). https://doi.org/10.1145/3167132.3167153
Malekloo, M.-H., Kara, N., El Barachi, M.: An energy efficient and sla compliant approach for resource allocation and consolidation in cloud computing environments. Sustain. Comput. 17, 9–24 (2018). https://doi.org/10.1016/j.suscom.2018.02.001
Nehra, P., Nagaraju, A.: Host utilization prediction using hybrid kernel based support vector regression in cloud data centers. J. King Saud Univ. Comput. Inf. Sci. 34(8), 6481–6490 (2022). https://doi.org/10.1016/j.jksuci.2021.04.011
Kayalvili, S., Selvam, M.: Hybrid sfla-ga algorithm for an optimal resource allocation in cloud. Clust. Comput. 22(2), 3165–3173 (2019). https://doi.org/10.1007/s10586-018-2011-8
Alharbi, F., Tian, Y.-C., Tang, M., Zhang, W.-Z., Peng, C., Fei, M.: An ant colony system for energy-efficient dynamic virtual machine placement in data centers. Expert Syst. Appl. 120, 228–238 (2019). https://doi.org/10.1016/j.eswa.2018.11.029
Peake, J., Amos, M., Costen, N., Masala, G., Lloyd, H.: Paco-vmp: parallel ant colony optimization for virtual machine placement. Future Gener. Comput. Syst. 129, 174–186 (2022). https://doi.org/10.1016/j.future.2021.11.019
Tarahomi, M., Izadi, M., Ghobaei-Arani, M.: An efficient power-aware vm allocation mechanism in cloud data centers: a micro genetic-based approach. Clust. Comput. 24(2), 919–934 (2021). https://doi.org/10.1007/s10586-020-03152-9
Qin, Y., Wang, H., Yi, S., Li, X., Zhai, L.: Virtual machine placement based on multi-objective reinforcement learning. Appl. Intell. 50(8), 2370–2383 (2020). https://doi.org/10.1007/s10489-020-01633-3
Thein, T., Myo, M.M., Parvin, S., Gawanmeh, A.: Reinforcement learning based methodology for energy-efficient resource allocation in cloud data centers. J. King Saud Univ. Comput. Inf. Sci. 32(10), 1127–1139 (2020). https://doi.org/10.1016/j.jksuci.2018.11.005
Wei, P., Zeng, Y., Yan, B., Zhou, J., Nikougoftar, E.: Vmp-a3c: virtual machines placement in cloud computing based on asynchronous advantage actor-critic algorithm. J. King Saud Univ. Comput. Inf. Sci. 35(5), 101549 (2023). https://doi.org/10.1016/j.jksuci.2023.04.002
Aghasi, A., Jamshidi, K., Bohlooli, A., Javadi, B.: A decentralized adaptation of model-free q-learning for thermal-aware energy-efficient virtual machine placement in cloud data centers. Comput. Netw. 224, 109624 (2023)
Mansouri, N., Zade, B.M.H., Javidi, M.M.: Hybrid task scheduling strategy for cloud computing by modified particle swarm optimization and fuzzy theory. Comput. Ind. Eng. 130, 597–633 (2019). https://doi.org/10.1016/j.cie.2019.03.006
Rjoub, G., Bentahar, J., Abdel Wahab, O., Saleh Bataineh, A.: Deep and reinforcement learning for automated task scheduling in large-scale cloud computing systems. Concurr. Computat. 33(23), 5919 (2021). https://doi.org/10.1002/cpe.5919
Muthusamy, G., Chandran, S.R.: Cluster-based task scheduling using k-means clustering for load balancing in cloud datacenters. J. Internet Technol. 22(1), 121–130 (2021)
Arunarani, A., Manjula, D., Sugumaran, V.: Task scheduling techniques in cloud computing: a literature survey. Future Gener. Comput. Syst. 91, 407–415 (2019). https://doi.org/10.1016/j.future.2018.09.014
Kumar, M., Sharma, S.C., Goel, A., Singh, S.P.: A comprehensive survey for scheduling techniques in cloud computing. J. Netw. Comput. Appl. 143, 1–33 (2019). https://doi.org/10.1016/j.jnca.2019.06.006
Shyam, G.K., Chandrakar, I.: Resource allocation in cloud computing using optimization techniques. In: Cloud Computing for Optimization: Foundations, Applications, and Challenges, pp. 27–50. Springer, Cham (2018)
Saidi, K., Hioual, O., Siam, A.: Novel energy-aware approach to resource allocation in cloud computing. Multiagent Grid Syst. 17(3), 197–218 (2021). https://doi.org/10.3233/MGS-210350
Marahatta, A., Pirbhulal, S., Zhang, F., Parizi, R.M., Choo, K.-K.R., Liu, Z.: Classification-based and energy-efficient dynamic task scheduling scheme for virtualized cloud data center. IEEE Trans. Cloud Comput. 9(4), 1376–1390 (2019). https://doi.org/10.1109/TCC.2019.2918226
Khorsand, R., Ramezanpour, M.: An energy-efficient task-scheduling algorithm based on a multi-criteria decision-making method in cloud computing. Int. J. Commun. Syst. 33(9), 4379 (2020). https://doi.org/10.1002/dac.4379
BEN ALLA, S., BEN ALLA, H., Touhafi, A., Ezzati, A.: An efficient energy-aware tasks scheduling with deadline-constrained in cloud computing. Computers 8(2), 46 (2019). https://doi.org/10.3390/computers8020046
Kaur, P., Sachdeva, M.: Energy efficient task scheduling in cloud computing. Int. J. Comput. Distrib. Syst. 4, 132–137 (2016)
Li, F., Hu, B.: Deepjs: Job scheduling based on deep reinforcement learning in cloud data center. In: Proceedings of the 2019 4th International Conference on Big Data and Computing, pp. 48–53 (2019). https://doi.org/10.1145/3335484.3335513
Zhao, Q., Xiong, C., Yu, C., Zhang, C., Zhao, X.: A new energy-aware task scheduling method for data-intensive applications in the cloud. J. Netw. Comput. Appl. 59, 14–27 (2016). https://doi.org/10.1016/j.jnca.2015.05.001
Panda, S.K., Jana, P.K.: An energy-efficient task scheduling algorithm for heterogeneous cloud computing systems. Clust. Comput. 22(2), 509–527 (2019). https://doi.org/10.1007/s10586-018-2858-8
Al-Maytami, B.A., Fan, P., Hussain, A., Baker, T., Liatsis, P.: A task scheduling algorithm with improved makespan based on prediction of tasks computation time algorithm for cloud computing. IEEE Access 7, 160916–160926 (2019). https://doi.org/10.1109/ACCESS.2019.2948704
Kumar, P., Yadav, P.S., Bhutani, K., Arora, N., Jain, D., Dabas, B.: Allocating resource dynamically in cloud computing. In: 2017 International Conference on Infocom Technologies and Unmanned Systems (Trends and Future Directions)(ICTUS), pp. 249–254 (2017). https://doi.org/10.1109/ICTUS.2017.8286014. IEEE
Rugwiro, U., Gu, C., Ding, W.: Task scheduling and resource allocation based on ant-colony optimization and deep reinforcement learning. J. Internet Technol. 20(5), 1463–1475 (2019)
Sharma, N., Garg, P., et al.: Ant colony based optimization model for qos-based task scheduling in cloud computing environment. Measurement 24, 100531 (2022). https://doi.org/10.1016/j.measen.2022.100531
Manikandan, N., Divya, P., Janani, S.: Bwfso: hybrid black-widow and fish swarm optimization algorithm for resource allocation and task scheduling in cloud computing. Mater. Today 62, 4903–4908 (2022). https://doi.org/10.1016/j.matpr.2022.03.535
Mangalampalli, S., Karri, G.R., Kose, U.: Multi objective trust aware task scheduling algorithm in cloud computing using whale optimization. J. King Saud Univ. Comput. Inf. Sci. 35(2), 791–809 (2023). https://doi.org/10.1016/j.jksuci.2023.01.016
Alboaneen, D., Tianfield, H., Zhang, Y., Pranggono, B.: A metaheuristic method for joint task scheduling and virtual machine placement in cloud data centers. Future Gener. Comput. Syst. 115, 201–212 (2021). https://doi.org/10.1109/AFRCON.2017.8095597
Akintoye, S.B., Bagula, A.: Optimization of virtual resources allocation in cloud computing environment. In: 2017 IEEE AFRICON, pp. 873–880 (2017). https://doi.org/10.1109/AFRCON.2017.8095597. IEEE
Mishra, S., Sahoo, M.N., Bakshi, S., Rodrigues, J.J.: Dynamic resource allocation in fog-cloud hybrid systems using multicriteria ahp techniques. IEEE Internet Things J. 7(9), 8993–9000 (2020). https://doi.org/10.1109/JIOT.2020.3001603
Kanwal, S., Iqbal, Z., Al-Turjman, F., Irtaza, A., Khan, M.A.: Multiphase fault tolerance genetic algorithm for vm and task scheduling in datacenter. Inf. Process. Manag. 58(5), 102676 (2021). https://doi.org/10.1016/j.ipm.2021.102676
Hosseini Shirvani, M., Rahmani, A.M., Sahafi, A.: An iterative mathematical decision model for cloud migration: a cost and security risk approach. Software 48(3), 449–485 (2018). https://doi.org/10.1002/spe.2528
Aghapour, Z., Sharifian, S., Taheri, H.: Task offloading and resource allocation algorithm based on deep reinforcement learning for distributed ai execution tasks in iot edge computing environments. Comput. Netw. (2023). https://doi.org/10.1016/j.comnet.2023.109577
Ferreto, T.C., Netto, M.A., Calheiros, R.N., De Rose, C.A.: Server consolidation with migration control for virtualized data centers. Future Gener. Comput. Syst. 27(8), 1027–1034 (2011). https://doi.org/10.1016/j.future.2011.04.016
Sampaio, A.M., Barbosa, J.G., Prodan, R.: Piasa: a power and interference aware resource management strategy for heterogeneous workloads in cloud data centers. Simul. Model. Practice Theory 57, 142–160 (2015). https://doi.org/10.1016/j.simpat.2015.07.002
Sampaio, A.M., Barbosa, J.G.: Towards high-available and energy-efficient virtual computing environments in the cloud. Future Gener. Comput. Syst. 40, 30–43 (2014). https://doi.org/10.1016/j.future.2014.06.008
Chiang, M.-L., Hsieh, H.-C., Cheng, Y.-H., Lin, W.-L., Zeng, B.-H.: Improvement of tasks scheduling algorithm based on load balancing candidate method under cloud computing environment. Expert Syst. Appl. 212, 118714 (2023). https://doi.org/10.1016/j.eswa.2022.118714
Vila, S., Guirado, F., Lérida, J.L.: Cloud computing virtual machine consolidation based on stock trading forecast techniques. Future Gener. Comput. Syst. 145, 321–336 (2023). https://doi.org/10.1016/j.future.2023.03.018
Weiss, K., Khoshgoftaar, T.M., Wang, D.: A survey of transfer learning. J. Big data 3(1), 1–40 (2016)
Wang, J., Kolar, M., Srerbo, N.: Distributed multi-task learning. In: Artificial Intelligence and Statistics, pp. 751–760 (2016). https://doi.org/10.48550/arXiv.1510.00633
Kendall, A., Gal, Y., Cipolla, R.: Multi-task learning using uncertainty to weigh losses for scene geometry and semantics. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pp. 7482–7491 (2018)
Ruder, S.: An overview of multi-task learning in deep neural networks. arXiv preprint arXiv:1706.05098 (2017). https://doi.org/10.48550/arXiv.1706.05098
Liu, S., Pan, S.J., Ho, Q.: Distributed multi-task relationship learning. In: Proceedings of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 937–946 (2017)
Dokeroglu, T., Sevinc, E., Kucukyilmaz, T., Cosar, A.: A survey on new generation metaheuristic algorithms. Comput. Ind. Eng. 137, 106040 (2019). https://doi.org/10.1016/j.cie.2019.106040
Alorf, A.: A survey of recently developed metaheuristics and their comparative analysis. Eng. Appl. Artif. Intell. 117, 105622 (2023). https://doi.org/10.1016/j.engappai.2022.105622
Funding
The authors would like to confirm that they have no statement on funding in the manuscript submission.
Author information
Authors and Affiliations
Contributions
All authors contributed equally to this review.
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Ethical approval
Including consent to participate and consent to publish:
Consent to participate
The authors confirm that all participants involved in their research study provided written informed consent prior to their participation in the study. The informed consent process was conducted in accordance with the ethical guidelines provided by our institution’s research ethics board.
Consent for publication
The authors understand that by providing their contribution for publication, they are consenting to the process of publication. The authors understand that they have the right to withdraw their contribution at any time before publication, but that once it has been published, it cannot be withdrawn. The authors have read and understand the information provided in this consent. They agree to the publication of their contribution in Cloud computing journal.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Saidi, K., Bardou, D. Task scheduling and VM placement to resource allocation in Cloud computing: challenges and opportunities. Cluster Comput 26, 3069–3087 (2023). https://doi.org/10.1007/s10586-023-04098-4
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-023-04098-4