Abstract
Cloud computing allows execution and deployment of different types of applications such as interactive databases or web-based services which require distinctive types of resources. These applications lease cloud resources for a considerably long period and usually occupy various resources to maintain a high quality of service (QoS) factor. On the other hand, general big data batch processing workloads are less QoS-sensitive and require massively parallel cloud resources for short period. Despite the elasticity feature of cloud computing, fine-scale characteristics of cloud-based applications may cause temporal low resource utilization in the cloud computing systems, while process-intensive highly utilized workload suffers from performance issues. Therefore, ability of utilization efficient scheduling of heterogeneous workload is one challenging issue for cloud owners. In this paper, addressing the heterogeneity issue impact on low utilization of cloud computing system, conjunct resource allocation scheme of cloud applications and processing jobs is presented to enhance the cloud utilization. The main idea behind this paper is to apply processing jobs and cloud applications jointly in a preemptive way. However, utilization efficient resource allocation requires exact modeling of workloads. So, first, a novel methodology to model the processing jobs and other cloud applications is proposed. Such jobs are modeled as a collection of parallel and sequential tasks in a Markovian process. This enables us to analyze and calculate the efficient resources required to serve the tasks. The next step makes use of the proposed model to develop a preemptive scheduling algorithm for the processing jobs in order to improve resource utilization and its associated costs in the cloud computing system. Accordingly, a preemption-based resource allocation architecture is proposed to effectively and efficiently utilize the idle reserved resources for the processing jobs in the cloud paradigms. Then, performance metrics such as service time for the processing jobs are investigated. The accuracy of the proposed analytical model and scheduling analysis is verified through simulations and experimental results. The simulation and experimental results also shed light on the achievable QoS level for the preemptively allocated processing jobs.
Similar content being viewed by others
References
Gandhi A, Harchol-Balter M (2011) How data center size impacts the effectiveness of dynamic power management? In: Proceedings of 49th Annual Allerton Conference on Communication, Control, and Computing, USA, Allerton. pp 1164–1169
Gandhi A, Harchol-Balter M, Rajarshi D, Lefurgy C (2009) Optimal power allocation in server farms. ACM SIGMETRICS Perform Eval 37(1):157–168
Gandhi A, Harchol-Balter M, Raghunathan R, Kozuch MA (2012) Autoscale: dynamic, robust capacity management for multi-tier data centers. ACM Trans Comput Syst TOCS 30(4):14–26
Iosup A, Dumitrescu C, Epema DHJ, Li H, Wolters L (2006) How are real grids used? In: Proceeding of 7th IEEE/ACM International Conference on Grid Computing. pp 262–269
Lublin U, Feitelson DG (2003) Workload on parallel supercomputers: modeling characteristics of rigid jobs. J Parallel Distrib Comput 63(11):1105–1122
Alexandru I, Ostermann S, Nezih M, Yigitbasi C, Prodan R, Fahringer T, Epema D (2011) Performance analysis of cloud computing services for many-tasks large data stream processing. IEEE Trans Parallel Distrib Syst 22(6):931–945
Salehi MA, Amini M, Javadi B, Buyya R (2014) Resource provisioning based on preempting VMs in distributed systems. Concurr Comput Pract Exp J 26(2):412–433
Vakilinia S, Heidarpour B, Cheriet M (2016) Energy efficient resource allocation in cloud computing environments. IEEE Access J PP(99):1–13
Vakilinia S, Zhu X, Qiu D (2016) Analysis and optimization of big-data stream processing. In: Proceeding of IEEE Globecom, Washington, DC, USA
Iosup A, Sonmez OO, Anoep S, Epema DHJ (2008) The performance of bags-of-tasks in large-scale distributed systems. In: Proceedings of the 17th ACM International Symposium on High Performance Distributed Computing. pp 97–108
Brandwajn A, Begin T, Castel-Taleb H (2016) Performance evaluation of cloud computing centers with general arrivals and service. IEEE Trans Parallel Distrib Syst PP(99):1–8
Vakilinia S, Ali MM, Qiu D (2015) Modeling of the resource allocation in cloud computing centers. Comput Netw 91(3):453–470
Khazaei H, Misic J, Misic VB, Rashwand S (2012) Analysis of a pool management scheme for cloud computing centers. IEEE Trans Parallel Distrib Syst 99(5):849–861
Khazaei H, Misic J, Misic VB (2012) Performance analysis of cloud computing centers using m/g/m/m\(+\) r queuing systems. IEEE Trans Parallel Distrib Syst 23(5):936–943
Meng X, Pappas V, Zhang L (2010) Improving the scalability of data center networks with traffic-aware VM placement. In: The Proceeding of INFOCOM. pp 1–9
Li Xin, Wu J, Tang Sh, Lu S (2014) Let’s stay together: towards traffic aware VM placement in data centers. In: The Proceeding of INFOCOM. pp 1842–1850
Deelman E, Blythe J, Gil Y, Kesselman C, Mehta G, Patil S, Su M-H, Vahi K, Livny M (2004) Pegasus: mapping large data streams onto the grid. In: European Across Grids Conference. p 1120
Ramakrishnan L, Koelbel C, Kee Y-S, Wolski R, Nurmi D, Gannon D, Obertelli G, YarKhan A, Mandal A, Huang TM, Thyagaraja K, Zagorodnov D (2009) VGrADS: Enabling e-science workflows on grids and clouds with fault tolerance. In: Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis. pp 1–12
Wang L, Tao J, Kunze M, Castellanos AC, Kramer D, Karl W (2008) Stream cloud computing: early definition and experience. In: Proceeding of 10th IEEE International Conference on High Performance Computing and Communications. pp 825–830
Warneke D, Kao O (2011) Exploiting dynamic resource allocation for efficient parallel data processing in the cloud. IEEE Trans Parallel Distrib Syst 22(6):985–997
Deelman E, Singh G, Livny M, Berriman B, John Good (2008) The cost of doing science on the cloud: the montage example. In: Proceedings of the 2008 ACM/IEEE Conference on Supercomputing. pp 50–55
Ludascher B, Altintas I, Berkley C et al (2006) Scientific workflow management and the Kepler system. Concurrency Comput: Pract Experience 18(10):1039–1065
Oinn T, Addis M, Ferris J, Marvin D, Senger M, Greenwood M, Carver T, Glover K, Pocock MR, Wipat A, Li P (2004) Taverna: a tool for the composition and enactment of bioinformatics workflows. Bioinformatics 20(17):3045–3054
Khojasteh H, Misic J, Misic V (2016) Prioritization of overflow tasks to improve performance of mobile cloud. IEEE Trans Cloud Comput PP(99)
Sossa RM, Buyya R (2014) Deadline based resource provisioning and scheduling algorithm for large data streams on clouds. IEEE Trans Cloud Comput 2(2):222–235
Yang L, Zhu X, Chen H, Wang Ji, Yin Shu, Liu X (2014) Real-time tasks oriented energy-aware scheduling in virtualized clouds. IEEE Trans Cloud Comput 2(2):168–180
Yao Y, Tai J, Sheng B, Mi N (2015) LsPS: A job size-based scheduler for efficient task assignments in Hadoop. IEEE Trans Cloud Comput 3(4):411–424
Zhao H, Pan M, Liu X, Li X, Fang Y (2015) Exploring fine-grained resource rental planning in cloud computing. IEEE Trans Cloud Comput 3(3):304–317
Kleinrock L (1976) Queuing systems, vol I. Wiley, Hoboken
Vakilinia S (2015) Performance modeling and optimization of resource allocation in cloud computing systems. Doctoral dissertation, Concordia University
Conway R, Richard W, Maxwell L, Miller L (2012) Theory of scheduling. Courier Dover Publications, New York
Shengbo Ch, Sun Y, Ulas D, Huang KL, Sinha P, Liang G, Liu X, Shroff NB (2014) When queueing meets coding: optimal-latency data retrieving scheme in storage clouds. In: Proceeding of IEEE INFOCOM
Liang G, Kozat U (2013) FAST CLOUD: Pushing the envelope on delay performance of cloud storage with coding. IEEE/ACM Trans Netw 1(1):2012–2025
Simon F, Wong R, Vasilakos A (2015) Accelerated pso swarm search feature selection for data stream mining big data. IEEE Trans Serv Comput PP(99):33–45
Keilson J (2012) Markov chain models—rarity and exponentially. Springer, London
Latouche G, Ramaswami V (1999) Introduction to matrix analytic methods in stochastic modeling. J Appl Math Stoch Anal 12(4):435–436
Stewart WJ (1994) Introduction to the numerical solution of markov chains. Princeton University Press, Princeton, pp 121–138
Kaufman JF (1981) Blocking in a shared resource environment. IEEE Trans Commun 29:1474–1481
Vinodrai DP, McIntosh GD (2005) Virtualization of input/output devices in a logically partitioned data processing system. U.S. Patent, 6,944,847, issued
Ben-Yehuda S, Liguori AN, Wasserman OL, Yassour BA (2013) Multiple layers of virtualization in a computing system. United States patent, US 8,392,916
Fox A, Griffith R, Joseph A, Katz R et al. (2009) Above the clouds: a Berkeley view of cloud computing. Department of Electrical Engineering and Computer Science, University of California, Berkeley, Rep. UCB/EECS, vol 28. p 13
Author information
Authors and Affiliations
Corresponding author
Appendices
Appendix A
Standard deviation of the ith workflow processing time is obtained by
Proof
Parallel flow i delay is equal to,
where \(N_r \left( i \right) \), \(T_{r\left( j \right) }^i \) denote number of class r super-tasks of flow i and service time of the jth class r super-task of flow i. The probability distribution of service time of class r super-task, \(p_{T_r } \left( t \right) \), is calculated in [30],
Then, its associated Laplace transform is given by
where \(\varGamma \) represents the gamma function. Then, Laplace transform of \(d_T^i \) is l by
Hence, the average of the \(d_T^i \) is given by
Standard deviation of flow \(i,\sigma _i \) also could be found by calculating
Substituting \(D_T \left( s \right) \) accomplishes the proof. \(\square \)
Appendix B
Lemma 1 Proof Average probability of task successful execution without failure is given by
which id equal to
\(\square \)
Proposition 1 Proof The average time that it takes for the failure to happen during time execution can be obtained through solving following integral,
By substituting \(pr\left( {failure} \right) =xe^{-xt}\) and \(pr(task\,execution\,|\,failure)=\mu e^{-\mu t}\), the average time for having a failure in the system is given by
\(\square \)
Appendix C
Theorem 1 Proof PGF of the number of occupied CCRUs by stream tasks, \(P\left( z \right) \) is given by
\(\square \)
Proof
Equilibrium equations in relation to Fig. 3, could be written as follows:
After multiplying to \(z^{k}\) and summing over k, we have:
Taking out \(z^{r}\) from the internal sigma leads to:
Let us define \(\varLambda \left( z \right) =\mathop {\sum }\nolimits _{r=1}^R \lambda _r z^{r}\) and \(P\left( z \right) =\mathop {\sum }\nolimits _{k=0}^S p_k z^{k}\); then, with the substitution of the variable \({k}''\), we obtain:
(36) can be simplified to:
From GBE it can be found that \(\varLambda \left( 1 \right) p_0 -\mu p_1 =0\). Hence, after solving the first order differential equation,
where \(\frac{\varLambda \left( z \right) -\varLambda \left( 1 \right) }{z-1}=\frac{\mathop {\sum }\nolimits _{r=1}^R \lambda _r (z^{r}-1)}{z-1}=\mathop {\sum }\nolimits _{r=1}^R \lambda _r \left( {\mathop {\sum }\nolimits _{i=0}^{r-1} z^{i}} \right) \), the constant part of the PGF is obtained by applying the \(P\left( z \right) |_{z=1} =1\) condition. Then we have,
which completes the proof. \(\square \)
Rights and permissions
About this article
Cite this article
Vakilinia, S., Cheriet, M. Preemptive cloud resource allocation modeling of processing jobs. J Supercomput 74, 2116–2150 (2018). https://doi.org/10.1007/s11227-017-2226-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-017-2226-0