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.