#1
*2
*3
#
Scientist, CSIR Centre for Mathematical modelling & Computer Simulation,
Wind Tunnel Road, Bangalore-37, Karnataka, India
*
B.Tech (CSE) Final yr Student, Dept of Computer Science,
National Institute of Technolog, Rourkela-08, Sundergarh, Odisha, India
Abstract— In the growing age of distributed computing, high performance computing and demands on the various computing platforms for a wide range of application like online shopping to the space research, from business development to the NEWS live telecast etc. In this research survey paper an attempt has been made and presented the answers to the why, how and why of all the aspects of cloud computing, the emerging trend in present world of computer science and engineering.
Keywords— Cloud computing, Grid Computing, SaaS, PaaS,
IaaS.
I.
I NTRODUCTION
The word cloud in cloud computing refers to "the
Internet". Computing is any IT operation carried out by an organisation. Hence in simple words cloud computing can be defined as "Internet-based computing", whereby different services in the form of servers, storage, shared resources and information are provided to an organisation's computers and other devices on demand through the Internet. Cloud computing is the best solution to the growing IT industry. Yet it is considered to be in its infancy with more technologies coming up as time progresses. It is subscription based pay per use service that in real time over the Internet, extends IT's existing capabilities. Cloud computing relies on sharing computing resources rather than have the local servers or personal devices to handle the applications provided by the cloud.
Cloud Computing makes use of SaaS (Software as a
Service).Using this, a single or multiple applications can be delivered to thousands of customers using a network. It can also be achieved through utility computing which makes use of virtualization or virtual machines that increase the storage capability as well as the precision and speed. Platform as a Service (PaaS) provides a scalable compute platform including middleware for applications.
Infrastructure as a Service (IaaS) enables the servers, storage and networks to be provisioned on demand using a pay per use basis. These are discussed in detail afterwards.
II.
C LUSTER , G RID AND C LOUD : A COMPARATIVE STUDY
Cluster computing is the origin of all computing systems.
Cluster computing can be defined as a system of independent computers which are connected together to provide services and computation comparable to a large machine.
A Grid is a hardware and software infrastructure that clusters and integrates high-end computers, networks, databases from multiple sources to form a virtual supercomputer on which users can work collaboratively within virtual organisations. Grid computing is where more than one computer coordinates to solve a problem together mostly using parallelism. A middleware software is used that manages the computers in the grid. Also it detects failures, new computers being added and computers being removed from the grid. This middleware application can be assigned to the grid and they will use whatever CPU utilization and storage the grid can provide for their current demands. Cloud computing evolves from grid computing. On the other hand cloud computing doesn’t access resources it requires directly.
It accesses them through a service. When it requires hard drive for storage or a specific CPU for computation it contacts the service that provides these resources. The service then maps the requests of resources to its physical resources. It then dynamically allocates the resources as they are needed.
In the same way if an application requires only a small amount of some resource, say computation, then the service only allocates a small amount, for example on a single physical CPU. If the application needs a large amount of some resource, then the service allocates CPU according to the requirement, in this case say a grid of CPU’s.
Grids are basically on-premise and owned by an organisation whereas clouds are normally provided by vendors on a pay per use basis by various organisations. Grids do not have the ability to provide servers individually including installing a variety of operating system and software applications like IaaS in a cloud does. A cloud can support a network of grids. It can also run on non-grid environments such as three-tier Web architecture or Web 2.0 Applications.
Also grids are mostly free used by academic research etc whereas cloud is a service in which the service provider charges according to the amount of work requested. Apart from their differences, both grid and cloud computing have some similarities that is both are scalable, on demand compute and require storage.
ISSN: 2231-5381
Page 2453
III.
EVOLUTION OF CLOUD
The evolution of cloud can be dated back to the 1960's from the ideas of pioneers like J.C.R Licklider and John
McCarthy.John McCarthy believed that computation cold some day be organised into a public entity. Cloud can be accessed anytime using the internet. So the development of the Internet was one of the major milestone for cloud computing. ARPAnet was developed in the year 1969 which was the first step in the development of internet. ARPAnet was developed out of a project carried out by Advanced
Research Projects Agency (ARPA). J.C.R Licklider along with other people was responsible for the development of
ARPAnet .TCP/IP made it possible to connect whole subnets to ARPAnet in 1983.This connection of networks came to be known as Internet. At the beginning it was used for military and scientific purposes but with the advent of World Wide
Web in 1989 by Tim Berners-Lee the internet became very popular.
The concept of grid computing started in the late 1980’s when a large number of systems were applied to a single problem using multiple levels of parallel computing. In the 1990’s the concept of virtualization reached a new level beyond virtual servers when a virtual platform which includes storage, network and application was introduced. In 1997, the term
“Cloud Computing” is coined by Information Systems
Professor Ramnath Chellapa.This is the time where clouds first came into existence. small companies and individuals to rent computers to run their own applications.
IV.
COMPONENTS OF CLOUD
The main components in a cloud include the distributed servers, the clients and the databases.
Clients : Clients are the devices that the end users use to interact with the cloud as they require the services of the cloud. They can be personal computers, laptops, smart mobile phones etc. Thin clients are the computers that do not contain internal hard drives and then display the information from the server. Thick cloud is a normal computer that connects to the cloud using web browsers like Internet Explorer, Mozilla
Firefox etc. Thin clients have become a popular solution because of their reduced price and enhanced data security.
Data security is more in case of thin clients as the data processing and storage takes place directly in the server without involving a hard drive.
Data Center : It is a collection of servers where the application to which you have subscribed is stored. It can be placed anywhere and can be accessed via the internet. A better solution is to use virtual servers via a single physical server. A software can be installed that allows multiple instances of virtual servers to run whenever the physical server is accessed.
Databases : These are places in the cloud where the information or data is stored.
Fig. 2Schematic of components of cloud
Fig. 1 Evolution of cloud computing
In 1999, Software as a Service (SaaS) was offered for the first time. This paved the way for the software firms to deliver applications over the internet. In the year 2000
Amazon.com realized that cloud architecture increases internal efficiency and began to update its data centers.
Amazon Web Services was then launched that offered a variety of cloud based services. Soon after that Google launched their cloud based email service-Gmail. Amazon then launched Elastic Compute Cloud (EC2) Service that allowed
V.
TYPES OF CLOUD
Public : These clouds are accessed by the public in general.
It is open to everyone who wants the services offered by the
Service Provider. Gmail is an example of a public cloud by
Google. Generally all customers share the same infrastructure and security over a public cloud. These are less costly and more efficient as compared to other cloud networks but are more prone to cyber attacks.
Private : This type of cloud is used by a single organisation and can be hosted by the same company internally or by a third party vendor externally. These are more expensive than public clouds but more secure and less prone to attack.
ISSN: 2231-5381 http://www.ijettjournal.org
Page 2454
Hybrid : It is the combination of two or more cloud topologies. The clouds can be public, private or community.
The clouds are independent of each other and are bound together to provide the advantages offered by various clouds.
They can also be hosted internally or externally.
Community: This type of cloud is shared among several organisations and is mostly hosted externally but also can be internally hosted by one of the shared organisations.
Examples of DaaS are Microsoft SQL Server Data Services,
Oracle database 11g etc.
TABLE I
DIFFERENT LAYERS IN CLOUD COMPUTING
Fig. 3 Different types of cloud
VI.
L
AYERS IN
C
LOUD
C
OMPUTING
Cloud Application Layer: It is the front end through which the user interacts with the cloud. Services provided by a cloud include many applications and those applications that are available to the end users on a pay-as-you-go basis form the application layer. This model is also referred to as Software as a Service (SaaS). Examples of SaaS are Google Docs-
Spreadsheet and Google Docs-Presentation etc.
Cloud Software Environment Layer: This layer also called the platform layer provides a programming language platform for developers to work on the cloud applications. This service is called as Platform as a Service (Paas).It also offers
Application Programming Interfaces (APIs) which can be utilized for various cloud services. For example Google’s App
Engine provides a platform in which developers can develop applications for Google cloud using the programming language Python.
Cloud Infrastructure Layer: The infrastructure layer offers services in the form of resources, data storage and communication. Computational resources are usually referred to as Infrastructure as a Service. IaaS makes use of virtualization
Technology which allows data center providers to adjust their resources on demand, thus making it more efficient. Data storage within the cloud is referred to as Database as a
Service(DaaS). DaaS allows users to store their data on remote disks which can be accessible from anywhere.
VII.
P ROS AND CONS
Cloud computing is evolving day by day and has set a trend that will continue to grow and develop in the upcoming years. Though cloud computing has been extremely beneficial for the middle sized and large sized companies, it hasn’t been that profitable for the small scale companies. Given below are some advantages of cloud computing.
Cost Efficiency: It is one of the most cost efficient methods that can be used in the IT industry. Purchasing software for each and every desktop and licensing them can be very expensive. On the other hand the cloud is available at much cheaper rates and can lower the expenses of the IT Company.
Maximum storage capacity: Cloud offers almost unlimited storage capacity. Hence one need not worry about running out of storage space. The current capacity can also be increased.
Backup and Recovery: Backup and recovery process is simplified in a cloud as the information is stored in the cloud rather than on a hard drive. In fact the service providers make sure that the cloud itself can be used as a backup for the stored data.
Ease of access: The data in the cloud can be accessed easily from anywhere in the world using an internet connection.
They can be accessed using devices such as personal computers, smart phones, tablets etc. Hence there are no geographical barriers that restrict the access to data stored in the cloud.
Quick deployment: Once you opt for cloud computing, the system can be up and running within a matter of few minutes.
Also addition of a new user to the cloud network happens within a short span of time depending on the type of technology needed for work.
Software Integration: This means that a company or an organization can select the applications that it requires or that is best for its running. There is no restriction to any service unless it affects data security. Also it allows to customize our options based on the services.
ISSN: 2231-5381 http://www.ijettjournal.org
Page 2455
Scalability: Cloud computing can support tens of thousands of users at a time which can extend up to millions depending on the server capacity. As it handles so many users without crashing it is scalable.
Improved Performance and Flexibility: The speed of computations in cloud computing is high. Hence time complexity is reduced or relatively less time is taken to complete the job. Also resource instances can be added for higher performance whenever required provided they are available. Also one can change the applications provided by the cloud without any financial issues at stake thereby more flexible.etc.
Some of the disadvantages of cloud computing are enlisted below :
Security: It is a major issue when it comes to cloud computing. A company’s sensitive information such as an individual‘s personal information which can include name, driver license number, credit card information etc is given away to a third party cloud service provider. Also confidential information about the company and its existence is put at a huge risk. Hence a reliable service provider should be chosen to keep the information in the cloud safe.
Data transfer: Sometimes a user is not happy with the services provided by the cloud. He then wishes to switch to another service provider. It can be really hectic to transfer huge amounts of data from one service provider to another.
Hence one should be careful while choosing a service provider.
Technicality Issues and Prone to Attack: Every technology is prone to some technical issues and so is cloud computing.
Sometimes the number of users exceed the capacity of the server and as a result the users get stuck. The same can happen when the internet connection is not good. The information in the cloud can be attacked by hackers. Hence to protect this information strong security measures such as firewalls, encryption should be installed.
VIII.
APPLICATIONS OF CLOUD COMPUTING
Clouds can prove useful for Interactive Mobile
Applications. These services will profit by storing large sets of data in the cloud and run computations even if the mobile devices are not connected. Parallel batch processing, for example computer animations, data conversion etc provide benefit to analytics.
Cloud Computing can be used to store, analyse big data since it provides unlimited resources on demand. Big data is a collection of large data sets which consists of data collected over the years as well as data generated on a daily basis by the social media and other sources . The data sets are so huge that it is difficult to store, analyse and process the data using conventional softwares such as relational database management systems. For example Hadoop developed by the
Apache Software Foundation supports the processing of multiple sets of data or big data. Google’s MapReduce provides a software platform in which an application is subdivided into many small parts and then processed on the nodes.
Cloud computing has a lot of potential in analyzing data from climatic research and other scientific simulations at a much lower operational cost. Climatic changes and natural catastrophes like cyclone or earthquake can be predicted.
These changes can be stored in the form of big data in the cloud and when similar changes occur in future there is a large probability of the same event taking place. National Energy
Research Scientific Centre (NERSC) will install computing hardware for different computing environments to create a cloud testing application that scientists can use for their computations while testing the effectiveness of cloud in these type of research oriented problems.
Compute-type desktop application like Matlab can be used for evaluation and simulation in the cloud. These applications are suitable as very few data needs to be transferred across the network. Cloud computing can also be useful in domains such as Software Development and Testing as performance tests can be conducted and recorded at a very low cost in the cloud.
Another domain in which cloud can thrive is Disaster
Recovery since the infrastructure of the cloud is spread across different geographical locations.
IX.
RELATED WORK
In the recent times several studies on cloud computing have been carried out by researchers. Comparative study of Grid and cloud were provided by [1]. Evolution of cloud was explained well in [2]. Components in the cloud make up the infrastructure of the cloud [3]. The different types of cloud computing available today in [4]. Different layers are well explained by the [5].There are many benefits of Cloud
Computing usage as described in many studies [4][5][6].
Applications and future prospects of Cloud was discussed by some researchers [7][8][9]. Also the details components and the resource allocation and load balancing are studied by many researchers [10][11][12].
X.
C ONCLUSIONS
In this work cloud computing has been introduced in a very simple and brief manner. The history leading to the development of cloud computing has been depicted. The different components and layers forming the cloud have been mentioned. The various advantages answered the question
“Why cloud computing should be used?” and the disadvantages provided an insight into what data should not be stored in the cloud. The areas in which cloud computing
ISSN: 2231-5381 http://www.ijettjournal.org
Page 2456
should be used and can be used in future are also broadly discussed.
A CKNOWLEDGMENT
Sambeet Kar and Rohan Patra are thankful to SPARK
Program of CSIR C-MMACS for providing the opportunity to carry out their summer research intern at CSIR C-MMACS,
Bangalore. They also thankful to Head, Dept of CS and
Director, National Institute of Technology, Rourkela, Odisha and SIC, CSIR C-MMACS for the necessary permission & support to carry out the summer intern research at CSIR C-
MMACS, Bangalore during May-June 2013.
[1] Judith Myerson .“Cloud Computing versus Grid Computing.”
[2] Marcus Bohm, Stefanie Leimeister, Christopher Riedl, Helmut Krcmar.
“Cloud Computing and computing evolution”
[3] Microsoft TechNet.”Client/Server architecture.
[4] Josh Ames. “Types of Cloud computing.”
[5] Microsoft Perspective:Issues that matter.”The Three layers of Cloud computing.”
[6] Priya Vishwanathan.”Cloud Computing-Is it really that Beneficial?”
[7] Raul F Chong.”Smarter Cloud Solutions-Changing the World:Big Data and the Cloud.”
[8] Raul F Chong.”Big data analytics on IBM SmartCloud Enterprise.”
[9] University of BRISTOL.”re:search High Performance Computing
Issue”
[10] Gouda K C, Radhika T V , Akshatha M, Priority based resource allocation model for cloud computing, International Journal of
Science, Engineering and Technology Research (IJSETR), ISSN: 2278
– 7798, pp 215-219
[11] Gouda, K. C., and Dwaipayan Acharjee. "An Outlook of cloud computing." International Journal of Science, Engineering and
Technology Research 2.6 (2013): pp-1403-1406.
[12] Jamunarani M R., Gouda, K. C., & Nirmala, H. Load Balancing
Technique for Climate Data Analysis in Cloud Computing
Environment, International Journal of Computer Science, Engineering and Technology, 3(5) (2013): pp-183-185
R
EFERENCES
ISSN: 2231-5381 http://www.ijettjournal.org
Page 2457