Job Scheduling in Cloud Computing: A Review of Selected Techniques

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

International Journal of Emerging Trends & Technology in Computer Science (IJETTCS)

Web Site: www.ijettcs.org Email: [email protected], [email protected]


Volume 3, Issue 3, May-June 2014 ISSN 2278-6856

Volume 3, Issue 3 May June 2014 Page 253


Abstract- Cloud computing is the new paradigm for
delivering on demand services over internet and can be
described as internet amiable software. Job scheduling is one
of the major activities performed in all the computing
environments. Cloud computing is one the upcoming latest
technology. To increase the working of cloud computing
environments, job scheduling is one the tasks performed in
order to gain maximum profit. In this paper, we introduce
multiple scheduling research works to address this area. This
review work provides acumen sight on the introduction of
cloud computing to understand it and then focus on the
various strategies for job scheduling in cloud computing. This
paper also provides the base to the new researchers in cloud
computing. This paper also takes a few techniques. Our
priority bases upon some factors including same number of
jobs for execution at each node.

Index Terms - Cloud user, Load balancing, queuing
system, scheduling.

1. INTRODUCTION
Cloud computing is rising as the next generation platform
for computation. May be in future Cloud computing will
be the main platform to save the world; this makes people
can have everything they need on it. Main advantages of
the Cloud computing is used for on-demand gathering of
information, technology services and products. The name
Cloud has come from the Internet, based on how it is
depicted in computer network diagrams, and is an
abstraction for the complex infrastructure it conceals.
In general we can define cloud computing is style of
computing in which IT-related capabilities are
provided as a service, allowing users to access
technology-enabled services from the Internet without
knowledge of, expertise with, or control over the
technology infrastructure that supports them.
Email application was probably the first service on the
cloud. As now a day many computing industry shifting
toward providing Platform as a Service (PaaS),
Infrastructure as a Service (IaaS) and Software as a
Service (SaaS) for consumers and enterprises to access on
demand regardless of time and location, this helps in
avoiding the over-supplying of the resource when used
with utility pricing, which meets the demands of millions
of users. There will be an increase in the number of Cloud
platforms available. To get cloud computing to work, you
need three things: thin clients (or clients with a thick-thin
switch), grid computing, and utility computing. Grid
computing links disparate computers to form one large
infrastructure, harnessing unused resources. Utility
computing is paying for what you use on shared servers
like you pay for a public utility (such as electricity, gas,
and so on) [1].
But it seems that Cloud computing cannot be suitable for
all the kind of companies, because there may be need that
company has very secured data they may not proceed with
cloud computing mainly for the reasons, stored data
might not be secure. With cloud computing, all your data
is stored on the cloud. How secure is the cloud? Can
unauthorized users gain access to your confidential data?
Cloud computing companies say that data is secure, but
it's too early in the game to be completely sure of that.
One more negative of cloud computing it, it needs the
constant high speed internet to access your own data,
dead Internet connection means no work, when you are
offline cloud computing simply does not work. Cloud
computing is a very specific type of computing that has
very specific benefits. But it has specific negatives as
well. One thing that is hoped to be accomplished with this
paper is not only a clear picture of what the cloud does
extremely well and a brief overview of them, but also a
short survey on their criteria and challenges ahead of
them.
Cloud Computing, to put it simply, means Internet
Computing. The Internet is commonly visualized as
clouds; hence the term cloud computing for
computation done through the Internet. With Cloud
Computing users can access database resources via the
Internet from anywhere, for as long as they need, without
worrying about any maintenance or management of actual
resources. Besides, databases in cloud are very dynamic
and scalable. Cloud computing is unlike grid computing,
utility computing, or autonomic computing. In fact, it is a
very independent platform in terms of computing. The
best example of cloud computing is Google Apps where
any application can be accessed using a browser and it
can be deployed on thousands of computer through the
Internet. [2]
Cloud computing has captured popular imagination with
the immense possibilities this computing paradigm seems
to offer. The term cloud computing itself is variously
defined it encompasses a broad range of IT capabilities
that are accessible irrespective of the users geographic
location. These capabilities are offered as a high-
availability service by a third party on a pay-as-you-go
basis, and the end user interacts with them over the
Internet cloud. [3]
You can distinguish among the cloud computing services
different vendors offer on the basis of the level of
Job Scheduling In Cloud Computing: A Review
of Selected Techniques

Garima Mahajan
1


1
Assistant Professor, Department of Computer Science and Engineering, Guru Nanak Dev University
Regional Center,Gurdaspur, Punjab, India
International Journal of Emerging Trends & Technology in Computer Science (IJETTCS)
Web Site: www.ijettcs.org Email: [email protected], [email protected]
Volume 3, Issue 3, May-June 2014 ISSN 2278-6856

Volume 3, Issue 3 May June 2014 Page 254


abstractions they provide: hardware-as-a-service or
infrastructure cloud (e.g., Amazon Elastic Compute
Cloud), platform (e.g., Google App Engine), and
applications (e.g., Web-based e-mail services)[2].

2. WHAT IS CLOUD COMPUTING?
Cloud computing provides the facility to access shared
resources and common infrastructure, offering services on
demand over the network to perform operations that meet
changing business
needs. The location of physical resources and devices
being accessed are typically not known to the end user. It
also provides facilities for users to develop, deploy and
manage their applications on the cloud, which entails
virtualization of resources that maintains and manages
itself.


Figure 1.1 Cloud Computing

Some Generic examples include:
1. Amazons Elastic Computing Cloud (EC2)
offering computational services that enable people
to use CPU cycles without buying more computers
2. Storage services such as those provided by
Amazons Simple Storage Service (S3)
3. Companies like Nirvanix allowing organizations to
store data and documents without adding a single
on-site server.
4. SaaS companies like Salesforce.com delivering
CRM services, so clients can manage customer
information without installing specialized
software.

3. WHY CLOUD COMPUTING
The main advantages of cloud computing over the
parallel, grid and utility computing are Cloud Computing
is a form Distributed computing vs. Parallel Computing:

1) Distributed Operating systems are also referred to as
Loosely Coupled systems whereas parallel processing
systems are referred to as tightly coupled systems.
2) A Loosely coupled system is one in which the
processors do not share memory and each processor has
its own local memory whereas in a tightly coupled system
there is a single system wide primary memory shared by
all the processors.
3) The processors of distributed operating systems can be
placed far away from each other to cover a wider
geographic area which is not the case with parallel
processing systems.
4) The no. of processors that can be usefully deployed is
very small in a parallel processing operating system
whereas for a distributed operating system a larger no. of
processors can be usefully deployed.
5) Global clock is used for controlling SIMD and MIMD
in parallel computing. But in distributed computing no
any global clock present in this synchronization
algorithms are used.
6) In the distributed operating system there is an
unpredictable communication delays between processors
whereas the processors in the parallel processing system
share over an interconnection network.
To get cloud computing to work, you need three things:
thin clients (or clients with a thick-thin switch), grid
computing, and utility computing. Cloud computing has
the facility of on-demand resource providing or supplying
which is not possible in utility computing, which helps in
avoiding the over-supplying the resource when used with
utility pricing, which meets the demands of millions of
users. As the Grid computing act as the back end of the
cloud computing.
Compute-intensive Application: Compute-intensive is a
term that applies to any computer application that
demands a lot of computation, such as meteorology
programs and other scientific applications. A similar but
distinct term, computer intensive, refers to applications
that require a lot of computers, such as Grid computing.
The two types of applications are not necessarily mutually
exclusive: some applications are both compute- and
computer-intensive.

4. CLOUD TYPES
PUBLIC CLOUD:
Public cloud or external cloud describes cloud computing
in the traditional mainstream. Public clouds are run by
third parties, and applications from different customers
are likely to be mixed together on the clouds servers,
storage systems, and networks. A public cloud provides
services to multiple customers.

HYBRID CLOUD:
Hybrid clouds combine both public and private cloud
models. This is most often seen with the use of storage
clouds to support Web 2.0 applications.

PRIVATE CLOUD:
Private clouds are built for the exclusive use of one client,
providing the utmost control over data, security, and
quality of service . The company owns the infrastructure
and has control over how applications are deployed on it.
Private clouds can be built and managed by a companys
own IT organization or by a cloud provider.
International Journal of Emerging Trends & Technology in Computer Science (IJETTCS)
Web Site: www.ijettcs.org Email: [email protected], [email protected]
Volume 3, Issue 3, May-June 2014 ISSN 2278-6856

Volume 3, Issue 3 May June 2014 Page 255


5. MOTIVATION
As not much research work is contributed till now in the
scheduling in cloud computing. The main motivation of
this review work is to throw the light on the above said.
In a cloud, all the nodes need to be managed in a proper
and careful manner so as to avoid any kind of unwanted
anomalies. Jobs are handled by the schedulers [2] and the
resources by resource handlers which are they itself,
embedded with the application and they demand for the
subsequent number of resources as needed by them and
make sure that they are used in the most appropriate
manner. Web application remains in contact with the user
to work in real-time with the users requests to avoid any
kind of delay. Web application access the web server to
execute all the operations. Web application is made
intelligent enough to take some decisions by itself with
the help of schedulers and handlers. Web server can be on
the same system on which application is installed or can
be on any other system completely alien to this
application, still working in a dignified and expected
manner.

6. LITERATURE REVIEW
The following section provides the review of already done
literature work on scheduling in cloud computing. The
review work presented here provides base to the new
researchers in cloud computing scheduling.

A). Praveen K. Gupta, Nitin Rakesh [5] presents, Cloud
computing has come out to be an interesting and
beneficial way of changing the whole computing world.
In this paper, we deal with the various methodologies
adopted to handle all the processes and jobs concurrently
executing and waiting into the web application and web
server housed into the same system or different systems.
Also, these different methods will be compared taking
into account the same number of jobs, but varied
environmental conditions and hence, the result would be
formulated. Various issues like virtual resources, queuing
strategies, resource managers etc. has been discussed here
apart from the main coverage points. All these aspects
will be closely studied, observed and proved with proper
explanations.

B). Meng Xu, Lizhen Cui, Haiyang Wang, Yanbing Bi
[1] presents that cloud computing has gained popularity
in recent times. As a cloud must provide services to many
users at the same time and different users have different
QoS requirements, the scheduling strategy should be
developed for multiple workflows with different QoS
requirements. In this paper, we introduce a Multiple QoS
Constrained Scheduling Strategy of Multi-Workflows
(MQMW) to address this problem. The strategy can
schedule multiple workflows which are started at any
time and the QoS requirements are taken into account.
Experimentation shows that our strategy is able to
increase the scheduling success rate significantly.

C). Luqun Li [2] presents that job scheduling system
problem which is a core and challenging issue in Cloud
Computing. How to use Cloud computing resources
efficiently and gain the maximum profits with job
scheduling system is one of the Cloud computing service
providers ultimate goals. In this paper, firstly, by
analysis the differentiated QoS requirements of Cloud
computing resources users jobs, build the corresponding
non-preemptive priority M/G/1 queuing model for the
jobs.

D). HUANG Qiyi, HUANG Ting-lei [3] discusses cloud
computing refers to constructed data center or "super
computer" by virtualization technology and provide
computing and storage resources, as well as the
application container environment of software running, to
software developers in a manner of free or hiring. The
Cloud Computing is promoted by the business rather than
academic which determines its focus on user applications.
Different users have different QoS Requirements. So
according to the given deadline and budget, this article
conducts research on scheduling model from the user's
perspective.

E). Yujia Ge, Guiyi Wei [4] discusses task scheduling
problems that of paramount importance which relate to
the efficiency of the whole cloud computing facilities. In
Hadoop, the open-source implementation of Map Reduce,
scheduling policies, such as FIFO or delay scheduling in
FAIR scheduler is used by the master node to distribute
waiting tasks to computing nodes (slaves) in response to
the status messages of these nodes it receives.

F). S.Selvarani1, Dr. G.Sudha Sadhasivam [6] concludes
cloud computing has been build upon the development of
distributed computing, grid computing and virtualization.
Since cost of each task in cloud resources is different with
one another, scheduling of user tasks in cloud is not the
same as in traditional scheduling methods. The objective
of this paper is to schedule task groups in cloud
computing platform, where resources have different
resource costs and computation performance.

G). Jorge Ejarque et al [7] presents about the license
management which is one of the main concerns when
Independent Software Vendors (ISV) try to distribute
their software in computing platforms such as Clouds.
They want to be sure that customers use their software
according to their license terms. The work presented in
this paper tries to solve part of this problem extending a
semantic resource allocation approach for supporting the
scheduling of job taking into account software licenses.

H). Baomin Xu et al [8] provides and considers the
commercialization and the virtualization characteristics
of cloud computing, the Paper proposed for the first time
an algorithm of job scheduling based on Berger model. In
the job scheduling process, the algorithm establishes dual
fairness constraint. The first constraint is to classify user
International Journal of Emerging Trends & Technology in Computer Science (IJETTCS)
Web Site: www.ijettcs.org Email: [email protected], [email protected]
Volume 3, Issue 3, May-June 2014 ISSN 2278-6856

Volume 3, Issue 3 May June 2014 Page 256


tasks by QoS preferences, and establish the general
expectation function in accordance with the classification
of tasks to restrain the fairness of the resources in
selection process. The second constraint is to define
resource fairness justice function to judge the fairness of
the resources allocation. We have expanded simulation
platform CloudSim, and have implemented the job
scheduling algorithm proposed in this paper. The
experimental results show that the algorithm can
effectively execute the user tasks and manifests better
fairness.

I). Ramendu Bikash Guin et al [9] presents and discusses
cloud computing focuses about delivery of reliable, fault
tolerant and scalable infrastructure for hosting Internet
based application services. Our work presents the
implementation of an efficient Quality of Service (QoS)
based smart-scheduler along with Backfill strategy based
light weight Virtual Machine Scheduler for dispatching
jobs. The user centric smart-scheduler deals with
selection of proper resources to execute high level jobs.
The system centric Virtual Machine (VM) scheduler
optimally dispatches the jobs to processors for better
resource utilization.

J). Srinivasa Rao V, Nageswara Rao N K , E Kusuma
Kumari [10] gives overview about the basic concept,
defines the terms used in the industry, and outlines the
general architecture and applications of Cloud computing.
It gives a summary of Cloud Computing and provides a
good foundation for understanding.

K). Norman W. Paton et al [11] presents and discusses
cloud computing services to potentially numerous remote
users with diverse requirements. Although predictable
performance can be obtained through the provision of
carefully delimited services, it is straightforward to
identify applications in which a cloud might usefully host
services that support the composition of more primitive
analysis services or the evaluation of complex data
analysis requests. In such settings, a service provider
must manage complex and unpredictable workloads. This
paper describes how utility functions can be used to make
explicit the desirability of different workload evaluation
strategies, and how optimization can be used to select
between such alternatives. The approach is illustrated for
workloads consisting of workflows or queries.

7. CONCLUSION
We presented a review of detailed working of different job
scheduling algorithms behind the web application on a
web server on the same system or on different systems in
a virtual cloud computing environment [1]. The various
terminologies and concepts were thoroughly looked and
thus explained.

This work will give way to more future findings
regarding the scheduling techniques in a cloud
environment. More efficient and faster ways to schedule
jobs and increase CPU throughput [2] needs to be
discovered. Also, this will fuel the greater knowledge and
popularity of cloud environment among the peoples.

REFERENCES
[1] A Multiple QoS Constrained Scheduling Strategy of
Multiple Workflows for Cloud Computing Meng
Xu, Lizhen Cui, Haiyang Wang, Yanbing Bi School
of Computer Science and Technology Shandong
University Jinan, China. 2009
[2] An Optimistic Differentiated Service Job Scheduling
System for Cloud Computing Service Users and
Providers Luqun Li Department of Computer
Science and Technology Shanghai Normal University
100 #Guilin Road, Shanghai, China . 2009
[3] An Optimistic Job Scheduling Strategy based on
QoS for Cloud Computing HUANG Qiyi, HUANG
Ting-lei School of Computer Science and
Engineering Guilin University of Electronic
Technology Guilin, China. 2010
[4] GA-Based Task Scheduler for the Cloud Computing
Systems Yujia Ge, Guiyi Wei, School of Computer
and Information Engineering Zhejiang Gongshang
University Hangzhou, china. 2010
[5] Different Job Scheduling Methodologies for Web
Application and Web Server in a Cloud Computing
Environment Praveen K. Gupta, Nitin Rakesh,
Member,2010
[6] [6] IMPROVED COST-BASED ALGORITHM
FOR TASK SCHEDULING IN CLOUD
COMPUTING Mrs.S.Selvarani1, Dr.G.Sudha
Sadhasivam Department of Information Technology,
Tamilnadu College of Engineering, Coimbatore,
India. 2010
[7] Job Scheduling with License Reservation: A
Semantic Approach Jorge Ejarque, Andras Micsik,
Raul Sirvent, Peter Pallinger , Laszlo Kovacs and
Rosa M. Badia Grid Computing and Clusters Group -
Barcelona Supercomputing Center (BSC), Barcelona,
Spain. 2011
[8] Job scheduling algorithm based on Berger model in
cloud environment Baomin Xu, Chunyan Zhao ,
Enzhao Hua, Bin Hu. 2011
[9] ScheduleSuite Modelling & Simulation of a Smarter
Job Scheduling System for Cloud Computing Service
Providers and Users Ramendu Bikash Guin, Sayan
Chakrabarti, Chinmoy Tarafdar Computer Science &
Engineering Department Kalyani Government
Engineering College Kalyani, Nadia- 741235, West
Bengal (INDIA). IEMCON 2011
[10] Cloud Computing: An Overview Srinivasa Rao V,
Nageswara Rao N K , E Kusuma Kumari.2011
[11] Optimizing Utility in Cloud Computing through
Autonomic Workload Execution Norman W. Paton,
Marcelo A. T. de Aragao, Kevin Lee, Alvaro A. A.
Fernandes, Rizos Sakellariou School of Computer
Science, University of Manchester, U.K. 2009

International Journal of Emerging Trends & Technology in Computer Science (IJETTCS)
Web Site: www.ijettcs.org Email: [email protected], [email protected]
Volume 3, Issue 3, May-June 2014 ISSN 2278-6856

Volume 3, Issue 3 May June 2014 Page 257


AUTHOR

Garima Mahajan Received her B.Tech
(2010)and M.Tech(2012) (CSE) degrees from
Punjab Technical University, Jalandhar and
Guru Nanak Dev University,Amritsar
respectively. Her research Interest includes: Network
Science, Theoretical Computer Science, Cryptography,
HCI.

You might also like