schedule applications to cloud resources that takes into account both computation ... A SHEFT workflow scheduling algori
International Journal of Computer Science and Management Research
Vol 1 Issue 3 October 2012 ISSN 2278-733X
A Review of Workflow Scheduling in Cloud Computing Environment Amid Khatibi Bardsiri1
Seyyed Mohsen Hashemi2
1
2
Bardsir Branch, Islamic Azad University, Kerman, IRAN Science and Research Branch, Islamic Azad University, Tehran, IRAN
Abstract Cloud computing environments facilitate applications by providing virtualized resources that can be provisioned dynamically. The advent of Cloud computing as a new model of service provisioning in distributed systems, encourages researchers to investigate its benefits and drawbacks in executing scientific applications such as workflows. There are a mass of researches on the issue of scheduling in cloud computing, most of them, however, are bout workflow and job scheduling. A cloud workflow system is a type of platform service which facilitates the automation of distributed applications based on the novel cloud infrastructure. The scheduling of the workflows is typically performed manually by the IT staff. The scheduling entails the selection of the services and the appropriate start time for each workflow. In this paper we have reviewed different types of workflow scheduling algorithms. The main aim of this work is to study various problems, issues and types of scheduling algorithms for cloud workflows. Keywords: Cloud computing, Scheduling, Workflows.
1. Introduction Cloud computing is service-focused to provide high quality and low-cost information services by payper-use model in which guarantees are offered by the cloud service providers through customized SLA [1, 2]. Cloud computing reduces the investment on hardware, software and professional skills [3]. Cloud computing helps user applications dynamically provision as many compute resources at specified locations. Workflow scheduling plays a vital role in the workflow management. Proper scheduling can have significant impact on the performance of the system [4]. Cloud can generally provide three levels of services: IaaS (Infrastructure as a Service), PaaS (Platform as a Service), and SaaS (Software as a Service). As described in [5], a cloud workflow system can be regarded as a type of platform service which facilitates the automation of distributed large-scale e-business and e-science applications in the cloud [6, 7]. Workflows constitute a common model for describing a wide range of scientific applications in distributed systems. Usually, a workflow is described by a Directed Acyclic Graph (DAG) in which each computational task is represented by anode, and each data or control dependency between tasks is represented by a directed edge between the corresponding nodes. As a cloud service itself, a cloud workflow system belongs to a specific service provider and under the management of its cloud resource managers. With the increasing demand for process automation in the cloud, especially for large-scale collaborative and distributed e-business and e-science applications [6, 8, 9], the investigation on cloud workflow scheduling strategies is becoming a significant issue not only in the area of cloud workflow systems but also general cloud computing. Although there are many papers that address the problem of scheduling in traditional distributed systems, like Grids, there are only a few works on this problem in Clouds. The multi-objective nature of the scheduling problem in Clouds makes it difficult to solve, especially in the case of complex jobs like workflows. The objective of this paper is to be focus on various workflow scheduling algorithms.
Amid Khatibi Bardsiri et.al.
348
www.ijcsmr.org
International Journal of Computer Science and Management Research
Vol 1 Issue 3 October 2012 ISSN 2278-733X
2. Algorithms and Metrics The Following workflow scheduling algorithms are currently prevalent in clouds and these algorithms have been summarized in Table1. The existing workflow scheduling algorithms consider various parameters like time, cost, makespan, speed, scalability, throughput, resource utilization, scheduling success rate and so on. Algorithm
Table 1. Survey on workflow scheduling algorithms Description
Ant Colony Optimization Based Service flow Scheduling [10]
A model of service flow scheduling with various quality of service (QoS) requirements in cloud computing. Adopt the use of an ant colony optimization (ACO) algorithm to optimize service flow scheduling. A Particle Swarm A particle swarm optimization (PSO) based heuristic to Optimization-based schedule applications to cloud resources that takes into Heuristic for account both computation cost and data transmission Scheduling Workflow cost. It is used for workflow application by varying its Applications in Cloud computation and communication costs. Computing Environments [11] Workflow Scheduling An integer linear program (ILP) formulation for the for SaaS / PaaS Cloud problem of scheduling SaaS customer’s workflows into Providers [12] multiple IaaS providers where SLA exists at two levels. A Revised Discrete A revised discrete particle swarm optimization Particle Swarm algorithm to optimize the schedules of workflow Optimization for Cloud application in cloud computing environment. In this Workflow Scheduling algorithm, the candidate solution is presented by the set [13] of task-service pairs, each particle not only learns from different exemplars, but also learns the other feasible pairs for different dimensions A market-oriented A market-oriented hierarchical scheduling strategy hierarchical scheduling which consists of a service-level scheduling and a taskstrategy in cloud level scheduling. The service-level scheduling deals workflow systems [14] with the Task-to-Service assignment and the task-level scheduling deals with the optimization of the Task-toVM assignment in local cloud data centers. Deadline-constrained A new QoS-based workflow scheduling algorithm workflow scheduling in based on a novel concept called Partial Critical Paths software as a service (PCP), which tries to minimize the cost of workflow Cloud [15] execution while meeting a user-defined deadline. SHEFT workflow A SHEFT workflow scheduling algorithm to schedule scheduling algorithm a workflow elastically on a Cloud computing [16] environment. Improved cost-based An improved cost-based scheduling algorithm for algorithm for task making efficient mapping of tasks to available scheduling in cloud resources in cloud. This scheduling algorithm measures computing [17] both resource cost and computation performance, it also Improves the computation/communication ratio.
Amid Khatibi Bardsiri et.al.
349
Parameters
Tool
Reliability, Response time, Cost, Security
Java environment
Resource utilization, Time
Amazon EC2
Time, Cost, Makespan
Java environment
Cost, Makespan
Amazon EC2
Makespan, Cost, CPU time
Cost, Deadline
SwinDeW-C
Java environment
Execution time, Scalability
CloudSim
Cost, Performance
CloudSim
www.ijcsmr.org
International Journal of Computer Science and Management Research A Compromised-TimeCost Scheduling Algorithm [18]
An Approach to Optimized Resource Scheduling Algorithm for Open-source Cloud Systems [19] An Algorithm in SwinDeW-C for Scheduling Transaction-Intensive Cost-Constrained Cloud Workflows [20] A Multiple QoS Constrained Scheduling Strategy of Multiple Workflows for Cloud Computing [21] Deadline and Budget Distribution based Cost- Time Optimization Workflow Scheduling Algorithm for Cloud [22]
Vol 1 Issue 3 October 2012 ISSN 2278-733X
A novel compromised-time cost scheduling algorithm which considers the characteristics of cloud computing Cost, to accommodate instance-intensive cost constrained Time workflows by compromising execution time and cost with user input enabled on the fly. An optimized scheduling algorithm to achieve the optimization or sub-optimization for cloud scheduling. Speed, In this algorithm an Improved Genetic Algorithm Resource (IGA) is used for the automated scheduling policy. Utilization
Focuses on scheduling for transaction-intensive costconstrained cloud workflows, which are workflows with a large number of workflow instances (i.e. transaction intensive) bounded by a certain budget for execution (i.e. cost constrained) on a cloud computing platform (i.e. cloud workflows). The strategy can schedule multiple workflows which are started at any time and the QoS requirements are taken into account. They have considered four factors which affect the total makespan and cost of workflow greatly. Deadline and Budget distribution-based Cost-Time Optimization (DBD-CTO) workflow scheduling algorithm that minimizes execution cost while meeting timeframe for delivering results and analyze the behavior of the algorithm. Considering the two constraints: deadline and budget.
Cost, Time
Eucalyptus
SwinDeW-C
Scheduling success rate, Cost, Time, Makespan
Cost, Time
SwinDeW-C
CloudSim
Java environment
3. Conclusions With the emerging of cloud computing, cloud workflow systems are designed to facilitate the cloud infrastructure to support large scale distributed collaborative e-business and e-science applications. The management and scheduling of resources in Cloud environment is complex, and therefore demands sophisticated tools for analysis the algorithm before applying them to the real system. In this paper, we have surveyed the various existing workflow scheduling algorithms in cloud computing and tabulated their various parameters along with tools and so on.
4. References [1] M. Armbrust, A. Fox, R. Griffith, A.D. Joseph, R. Katz, A. Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica and M. Zaharia. “Above the Clouds: A Berkeley View of Cloud Computing”. UC Berkeley Reliable Adaptive Distributed Systems Laboratory, 2009. [2] S.M. Hashemi, A.Kh. Bardsiri, “Cloud Computing Vs. Grid Computing”. ARPN Journal of Systems and Software, Vol. 2, No 5, pp. 188-194, 2012. [3] J. Geelan, “Twenty one experts define cloud computing. Virtualization”. Electronic Magazine, article available at http://virtualization.sys-con.com/node/612375, 2008.
Amid Khatibi Bardsiri et.al.
350
www.ijcsmr.org
International Journal of Computer Science and Management Research
Vol 1 Issue 3 October 2012 ISSN 2278-733X
[4] Y. Zhang, A. Mandal, C. Koelbel1 and K. Cooper, “Combined Fault Tolerance and Scheduling Techniques for Workflow Applications on Computational Grids”. in 9th IEEE/ACM international symposium on clustering and grid, pp. 244-251 , 2009. [5] I. Foster, Y. Zhao, I. Raicu and S. Lu, “Cloud Computing and Grid Computing 360-Degree Compared”. Grid Computing Environments Workshop, GCE '0812-16, pp.1-10, 2008. [6] K. Liu, J. Chen, Y. Yang, H. Jin, “A throughput maximization strategy for scheduling transaction intensive workflows on SwinDeW-G”. Concurrent Computing, Vol. 20, No. 15, pp. 1807–1820, 2008. [7] M. Wang, R. Kotagiri, J. Chen “Trust-based robust scheduling and runtime adaptation of scientific workflow”. Concurrent Computing, Vol. 21, No. 16, pp. 1982–1998, 2009. [8] E. Deelman, D. Gannon, M. Shields, I. Taylor, “Workflows and e-science: an overview of workflow system features and capabilities”. Future Gener Comput Syst, Vol. 25, No. 6, pp. 528–540, 2008. [9]. I. Taylor, E. Deelman, D. Gannon, M. Shields, ‘Workflows for e-science: scientific workflows for grids”. Springer, 2007. [10] H. liu, D. Xu, H. Miao, “Ant Colony Optimization Based Service flow Scheduling with Various QoS Requirements in Cloud Computing”, First ACIS International Symposium on Software and Network Engineering, pp. 53-58, 2011. [11] S. Pandey, L. Wu, S.M. Guru, R Buyya, “A Particle Swarm Optimization-based Heuristic for Scheduling Workflow Applications in Cloud Computing Environments”. 24th IEEE International Conference on Advanced Information Networking and Applications, pp. 400-407, 2010. [12] T.A.L. Genez, L.F. Bittencourt, E.R.M. Madeira, “Workflow Scheduling for SaaS / PaaS Cloud Providers Considering Two SLA Levels”. IEEE Network Operations and Management Symposium (NOMS): MiniConference, pp. 906-912, 2012. [13] Z. Wu, Z. Ni, L. Gu, “A Revised Discrete Particle Swarm Optimization for Cloud Workflow Scheduling”. Computational Intelligence and Security (CIS), pp. 184-188, 2010. [14] Z. Wu, X. Liu, Z. Ni, D. Yuan, Y. Yang, “A Market-Oriented Hierarchical Scheduling Strategy in Cloud Workflow Systems”. in Journal Supercomput, 2011. [15] S. Abrishami, M. Naghibzadeh, “Deadline-constrained workflow scheduling in software as a service Cloud”. Scientia Iranica, Transactions D: Computer Science & Engineering and Electrical Engineering, pp. 680-689, 2012. [16] C. Lin, S. Lu, “Scheduling Scientific Workflows Elastically for Cloud Computing”, in IEEE 4th International Conference on Cloud Computing, pp. 246-247, 2011. [17] S. Selvarani, G.S. Sadhasivam, “Improved cost-based algorithm for task scheduling in Cloud computing”, Computational Intelligence and Computing Research (ICCIC), pp.1-5, 2010. [18] K. Liu, Y. Yang, J. Chen, X. Liu, D. Yuan and H. Jin, “Compromised-Time-Cost Scheduling Algorithm in SwinDeW-C for Instance-Intensive Cost-Constrained Workflows on Cloud Computing Platform”, International Journal of High Performance Computing Applications, Vol. 24, No. 4, pp. 445-456, 2010. [19] H. Zhong, K. Tao, X. Zhang, “An Approach to Optimized Resource Scheduling Algorithm for Open-source Cloud Systems”, in Fifth Annual China Grid Conference (IEEE), pp. 124-129, 2010. [20] Y. Yang, K. Liu, J. Chen, X. Liu, D. Yuan and H. Jin, “An Algorithm in SwinDeW-C for Scheduling Transaction-Intensive Cost-Constrained Cloud Workflows”. Proceeding of 4th IEEE International Conference on eScience, pp. 374-375, 2008. [21] M. Xu, L. Cui, H. Wang, Y. Bi, “A Multiple QoS Constrained Scheduling Strategy of Multiple Workflows for Cloud Computing”. in IEEE International Symposium on Parallel and Distributed Processing, pp. 629-634, 2009. [22] A. Verma, S. Kaushal, “Deadline and Budget Distribution based Cost- Time Optimization Workflow Scheduling Algorithm for Cloud”. International Journal of Computer Applications (IJCA), 2012.
Amid Khatibi Bardsiri et.al.
351
www.ijcsmr.org