Task Scheduling in Cloud Computing
Task Scheduling in Cloud Computing
6,700
Open access books available
180,000
International authors and editors
195M
Downloads
154
Countries delivered to
TOP 1%
most cited scientists
12.2%
Contributors from top 500 universities
Abstract
1. Introduction
Cloud computing is a new technology derived from grid computing and dis-
tributed computing and refers to using computing resources (hardware, software,
and platforms) as a service and provided to beneficiaries on demand through the
Internet [1]. It is the first technology that uses the concept of commercial imple-
mentation of computer science with public users [2]. It relies on sharing resources
among users through the use of the virtualization technique. High performance
can be provided by a cloud computing, based on distributing workloads across all
resources fairly and effectively to get less waiting time, execution time, maximum
throughput, and exploitation of resources effectively. Still, there are many chal-
lenges prevalent in cloud computing, Task scheduling and load balance are the
1
Scheduling Problems - New Applications and Trends
biggest yet because it is considered the main factors that control other performance
criteria such as availability, scalability, and power consumption.
Tasks scheduling algorithms are defined as the mechanism used to select the
resources to execute tasks to get less waiting and execution time.
• First level: in host level where a set of policies to distribute VMs in host.
Tasks scheduling algorithms are defined as a set of rules and policies used to
assign tasks to the suitable resources (CPU, memory, and bandwidth) to get the
highest level possible of performance and resources utilization.
2
Types of Task Scheduling Algorithms in Cloud Computing Environment
DOI: http://dx.doi.org/10.5772/intechopen.86873
Figure 1.
Tasks scheduling classes.
• Immediate scheduling: when new tasks arrive, they are scheduled to VMs
directly.
• Batch scheduling: tasks are grouped into a batch before being sent; this type is
also called mapping events.
• Dynamic scheduling: takes into account the current state of VMs and does not
require prior information of the global state of the system and distribute the
tasks according to the capacity of all available VMs [4–6].
• Non-preemptive scheduling: VMs are not re-allocated to new tasks until finish-
ing execution of the scheduled task [6].
The task scheduling system in cloud computing passes through three levels [7].
• The first task level: is a set of tasks (Cloudlets) that is sent by cloud users,
which are required for execution.
• The third VMs level: is a set of (VMs) which are used to execute the tasks as in
Figure 2.
3
Scheduling Problems - New Applications and Trends
Figure 2.
Task scheduling system.
• The first step is discovering and filtering all the VMs that are presented in the
system and collecting status information related to them by using a datacenter
broker [8].
3.1 FCFS
FCFS: the order of tasks in task list is based on their arriving time then
assigned to VMs [3].
3.1.1 Advantages
3.1.2 Disadvantages
• Not give any priority to tasks. That means when we have large tasks in
the begin tasks list, all tasks must wait a long time until the large tasks to
finish.
4
Types of Task Scheduling Algorithms in Cloud Computing Environment
DOI: http://dx.doi.org/10.5772/intechopen.86873
3.1.3 Assumptions
Some of the assumptions must be taken into account when scheduling tasks to
VMs in the cloud computing environment.
• Number of tasks should be more than the number of VMs, which means that
each VM must execute more than one task.
• The available VMs are of exclusive usage and cannot be shared among differ-
ent tasks. It means that the VMs cannot consider other tasks until the comple-
tion of the current tasks is in progress [3].
Table 1.
Set of tasks with different length orders depends on the arrival time for each task.
5
Scheduling Problems - New Applications and Trends
3.1.4 VM properties
Assume we have six VMs with different properties based on tasks size:
We selected a set of VMs with different properties to make each category have VMs
with appropriate ability to serve a specific class of tasks, to improve the load balance.
Because when we use VMs with same properties with all categories it leads to load
imbalance, where each class is different from other classes in terms of tasks lengths.
Figure 3 shows FCFS tasks scheduling algorithm working mechanism and how
tasks are executed based on their arrival time.
Dot arrows refer to first set of tasks scheduling based on their arrival time.
Dash arrows refer to second set of tasks scheduling based on their arrival time.
Solid arrows refer to third set of tasks scheduling based on their arrival time.
And here it is clear to us that t1 is too large compared with t7 and t12. However,
t7 and t12 must wait for t1, which leads to an increase in the TWT, ET, TFT, and a
decrease in fairness.
VM1 = {t1 ⟶ t7 ⟶ t12}.
Table 2 shows how FCFS scheduling algorithm increases waiting time for all tasks.
Figure 3.
FCFS work mechanism.
6
Types of Task Scheduling Algorithms in Cloud Computing Environment
DOI: http://dx.doi.org/10.5772/intechopen.86873
Table 2.
Waiting times of tasks in FCFS.
3.2 SJF
Tasks are sorted based on their priority. Priority is given to tasks based on tasks
lengths and begins from (smallest task ≡ highest priority).
3.2.1 Advantages
• SJF has minimum average waiting time among all tasks scheduling
algorithms.
3.2.2 Disadvantages
• Unfairness to some tasks when tasks are assigned to VM, due to the long
tasks tending to be left waiting in the task list while small tasks are assigned
to VM.
7
Scheduling Problems - New Applications and Trends
3.3 MAX-MIN
In MAX-MIN tasks are sorted based on the completion time of tasks; long tasks
that take more completion time have the highest priority. Then assigned to the VM
with minimum overall execution time in VMs list.
3.3.1. Advantages
• This algorithm has better performance than the FCFS, SJF, and MIN-MIN algorithm.
3.3.2 Disadvantages
• Increase waiting time to small and medium tasks; if we have six long tasks, in
MAX-MIN scheduling algorithm they will take priority in six VMs in VM list,
and short tasks must be waiting until the large tasks finish.
Unfairness to some or most small and medium tasks when tasks are assigned to VM.
Table 3.
A set of tasks sorted based on SJF scheduling algorithm.
8
Types of Task Scheduling Algorithms in Cloud Computing Environment
DOI: http://dx.doi.org/10.5772/intechopen.86873
Table 4.
Waiting times of tasks in SJF.
Table 5.
A set of tasks sorted based on MAX-MIN scheduling algorithm.
Tables 6 and 7 shows that the small and medium tasks must be waiting in the
task list until the large tasks finish execution.
Figure 4 shows the TWT and TFT for the three tasks scheduling algorithms FCFS,
SJF, and MAX-MIN. SJF tasks scheduling algorithm is the best in term of TWT and TFT.
9
Scheduling Problems - New Applications and Trends
Table 6.
Waiting time of tasks in MIX-MIN scheduling algorithm.
Table 7.
Comparison between FCFS tasks scheduling algorithm, SJF, and MAX-MIN in terms of TWT and TFT.
Figure 4.
Comparison between FCFS tasks scheduling algorithm, SJF, and MAX-MIN in terms of TWT and TFT.
4. Conclusion
This chapter introduces the meaning of the tasks scheduling algorithms and
types of static and dynamic scheduling algorithms in cloud computing environ-
ment. This chapter also introduces a comparative study between the static task
scheduling algorithms in a cloud computing environment such as FCFS, SJF, and
MAX-MIN, in terms of TWT, TFT, fairness between tasks, and when becoming
suitable to use?
Experimentation was executed on CloudSim, which is used for modeling the
different tasks scheduling algorithms.
10
Types of Task Scheduling Algorithms in Cloud Computing Environment
DOI: http://dx.doi.org/10.5772/intechopen.86873
Author details
Tahani Aladwani
Mecca, Saudi Arabia
© 2020 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms
of the Creative Commons Attribution License (http://creativecommons.org/licenses/
by/3.0), which permits unrestricted use, distribution, and reproduction in any medium,
provided the original work is properly cited.
11
Scheduling Problems - New Applications and Trends
References
[5] http://www.pbenson.net/2013/04/the-
cloud-defined-part-1-of-8-on-demand-
self-service/ [Accessed: 01 October 2017]
[7] http://www.techinmind.com/
what-is-cloud-computing-what-are-
its-advantages-and-disadvantages/
[Accessed: 01 October 2017]
[8] https://siliconangle.com/
blog/2016/04/29/survey-sees-rapid-
growth-in-enterprise-cloud-adoption/
[Accessed: 01 October 2017]
12