Cloud Computing as an Innovation in GIS & SDI: Methodologies, Services, Issues and Deployment Techniques

Abstract

Cloud computing is one of the main issues of interest to the scientific community of the spatial data. A cloud is referred to computing infrastructure for a representation of network. From the perspective of providers, the main characteristics of cloud computing is being dynamic, high power in computing and storage. Also cloud computing is a cost benefit and effective way for representation of web-based spatial data and complex analysis. Furthermore, cloud computing is a way to facilitate distributed computing and store different data. One of the main features of cloud computing is ability in powerful computing and dynamic storage with an affordable expense and secure web. In this paper we further investigate the methodologies, services, issues and deployed techniques also, about situation of cloud computing in the past, present and future is probed and some issues concerning the security is expressed. Undoubtedly cloud computing is vital for spatial data infrastructure and consequently the cloud computing is able to expand the interactions for spatial data infrastructure in the future.


Share and Cite:

M. Naghavi, "Cloud Computing as an Innovation in GIS & SDI: Methodologies, Services, Issues and Deployment Techniques," Journal of Geographic Information System, Vol. 4 No. 6, 2012, pp. 597-607. doi: 10.4236/jgis.2012.46062.

1. Introduction

Cloud computing, with the revolutionary promise of turning computing into a 5th utility, after water, electricity, gas, and telephony, has the potential to transform the face of Information Technology (IT), especially the aspects of service-rendition and service management. Though there are myriad ways of defining the phenomenon of cloud computing, we put forth the one coined by NIST (National Institution of Standards and Technology). According to them, cloud computing is defined as “A model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction” [1]. Loosely speaking, cloud computing represents a new way to deploy computing technology to give users the ability to access, work on, share, and store information using the internet [2]. The cloud itself is a network of data center, each composed of many thousands of computers working together that can perform the functions of software on a personal or business computer by providing users access to powerful application, platforms, and services delivered over the internet. It is in essence a set of network enabledservices that is capable of providing scalable, customized and inexpensive computing infrastructures on demand, which could be accessed in a simple and pervasive way by a wide range of geographically dispersed users. The could also assures application based Quality-of-Services (QoS) guarantees to its users.

Thus, Cloud Computing provides the users with large pools of resources in a transparent way along with a mechanism for managing unnecessary performance overhead. The ideal way describe cloud computing then would be to term it as “Everything as a Service” abbreviated as XaaS [3]. Below, we sum up the key feature of cloud computing:

• Agility—helps n rapid and inexpensive re-provisiong of resources.

• Location Independence—resources can be accessed from anywhere and everywhere.

• Multi-Tenancy—resources are shared amongst a large pool of users.

• Reliability—dependable accessibility of resources and computation.

• Scalability—dynamic provisioning of data helps in avoiding various bottleneck scenarios.

• Maintenance—users (companies/organization) have less work in terms of resource upgrades and management, which in the new paradigm will be handled by service providers of cloud computing.

However, cloud computing doesn’t imply that it consists of only one cloud. The term “cloud” symbolizes the Internet, which in itself is a network of networks. Also, not all forms of remote computing is cloud computing. On the contrary, cloud computing is nothing but services offered by provides who might have their own systems in place [4].

2. Cloud Computing: Past, Present, and Future

A hundred years ago, companies stopped generating their own power with steam engines and dynamos and plugged into the newly built electric grid.

The cheap power pumped out by such electric utilities did not just change how businesses operated it set off a chain reaction of economic and social transformations that brought the modern world into existence. Today, a similar revolution is under way. Hooked up to the Internet’s global computing grid, massive information-processing plants have begun pumping data and software code into our homes and businesses. This time, it’s computing (instead of electricity) that’s turning into a utility. Nicolas Carr in his book The Big Switch: Rewiring the world from Edison to Google [5] has finely portrayed the transition of Cloud from its past till its present form. Cloud computing has integrated various positive aspects of different computing paradigms, resulting in a hybrid model that has evolved gradually over the years beginning in 1960 when John McCarthy rightfully stated that “computation may someday be organized as a public utility” [6]. History of computing shows in Figure 1.

“The Cloud” is based on the idea of generating computing facility on demand. Just the way one turns on a

Figure 1. History of computing.

faucet to get water or plug into an electric socket on the wall to get electricity, similarly Cloud Computing intends to create a paradigm where most of the features and functions of stand-alone computers today can be streamed for a user over the Internet [7]. Further probing into the philosophy of cloud computing will reveal that the concept dates back to the era of “Mainframes”, where resources (like memory, computational capabilities) of centralized powerful computers owned by large organizations were used/shared by several users over a small geographical local area. Today Cloud Computing boasts of an architecture where the powerful computers are replaced by supercomputers and perhaps even a network of supercomputers and the users are dispersed over vast geographic areas, accessing these computing resources via the Internet (network of networks). In the past, issues like dearth of bandwidth, perception, loss of control, trust and feasibility proved to be major road blocks in realizing the cloud concept of service rendition.

The concept of Cloud Computing as nascent as it might appear itself has undergone significant evolution. The first generation of Cloud Computing which evolved along with the “Internet Era” was mainly intended for “e-business services”. The current generation of Cloud services has progressed several steps to now include “IT as a Service” which can be thought of as “consumerized internet services”. Using standardized, highly virtualized infrastructure and applications, IT can drive higher degrees of automation and consolidation, thus reducing the cost of maintaining existing solutions and delivering new ones. In addition, externally supplied infrastructure, software, and platform services are delivering capacity augmentation and a means of using operating expense funding instead of a heavy duty capital [8].

Today, “the network is the (very big, very powerful) computer”. The capabilities of the Cloud as a centralized resource can match to industrial scales. This implies that processing power involving thousands of machines embedded in a network has surpassed even the capabilities if the very high-performance supercomputers. By making this technology available through the network on an on-demand and as-needed basis, the Cloud holds the promise of giving individuals, business, organization and governments around the world access to extraordinary computing power from any device. It is a fact that data and information is growing at a break-neck pace. HP predicted that within three more years (by 2012) there will be information produced and consumed than in the history of mankind. Thus, the next version of Cloud will enable access to information through services that are set in the context of the consumer experience. This is significantly different it means that data will be separated from the application a paradigm where processes can be broken into smaller pieces and automated through a collection of services, woven together with access to massive amounts of data. It will eliminate the need for large scale, complex applications that are built around monolithic processes. Changes can be accomplished by refactoring service models, and integration achieved by subscribing to new data feeds. This will create new connections, new capabilities, and new innovations surpassing those that exist today [8]. Thus it is envisioned that by 2020 most people will access Most technologies and industrialists believe that cloud computing will continue to expand and come to dominant information transactions because it offers many advantages, allowing users to have easy, instant, and individualized access to tools and information they need wherever they are, locatable from any networked device. To validate this claim, the PEW INTERNET & AMERICAN LIFE PROJECT carried out a survey with a highly diverse population set. 71% of the survey takers believed that by 2020, most people won’t do their work with software running on a general-purpose PC. Instead, they will work in Internet-based applications such as Google Docs, and in applications run from smart phones [9]. However, quality of service guarantees, interoperability between existing working platforms and security concerns are some of the issues that still continue to plague the growing popularity of cloud computing. Figure 2 shows clouds past, present and future.

3. Cloud Computing Methodologies

Cloud computing is based on two main techniques: a) Service Oriented Architecture and b) Virtualization

3.1. Service Oriented Architecture (SOA)

Sincethe paradigm of Cloud computing perceives of all tasks accomplished as a “Service” rendered to users, it is said to follow the Service Oriented Architecture. This architecture comprises a flexible set of design principles used during the phases of system development and integration. The deployment of a SOA-based architecture will provide a loosely-integrated suite of services that can be used within multiple business domains. The enabling technologies in SOA allow services to be discovered, composed, and executed. For instance, when an end-user wishes to accomplish a certain task, a service can be employed to discover the required resources for the task. This will be followed by a composition service which will plan the road-map to provide the desired functionality and quality of service to the end-users [10, 11].

3.2. Virtualization

The concept of Virtualization is to relieve the user from the burden of resource purchases and installations. The

Figure 2. Clouds past, present and future.

cloud brings the resources to the users. Virtualization may refer to Hardware (execution of software in an environment separated from the underlying hardware resources), Memory (giving an application program the impression that it has contiguous working memory, isolating it from the underlying physical memory implementation), storage (the process of completely abstracting logical storage from physical storage, Software (hosting of multiple virtualized environments within a single Operating System (OS) instance), Data (the presentation of data as an abstract layer, independent of underlying database systems, structures and storage) and Network (creation of a virtualized network addressing space within or across network subnets) [11]. Virtualization has become an indispensable ingredient foe almost every cloud; the most obvious reasons being the ease of abstraction and encapsulation.Amongst the other important reasons for which the clouds tend to adopt virtualization are:

a) Server and application consolidation—as multiple applications can be run on the same server resources can be utilized more efficiently.

b) Configurability—as the resource requirements for various applications cloud differ significantly, (some require large storage, some require higher computation capability) virtualization is the only solution for customized configuration and aggregation of resources which are not achievable at the hardware level.

c) Increased application availability—virtualization allows quick recovery from unplanned outages as virtual environments can be backed up and migrated with no interruption in services.

d) Improved responsiveness—resource provisioning, monitoring and maintenance can be automated, and common resources can be cached and reused [12].

In addition, these benefits of virtualization tend to facilitate the cloud to meet stringent SLA (Service Level Agreement) requirements in a business setting which otherwise cannot be easily achieved in a cost-effective manner. Without virtualization, systems have to be over provisioned to handle peak load and hence waste valuable resources during idle periods.

4. The Cloud Architectureand Cloud Deployment Techniques

Created with the knowledge of SOA and virtualization, we now take a look at the overall Cloud architecture. From the end user’s perspective, Figure 3 depicts a basic Cloud Computing architecture involving multiple components. Cloud architecture closely resembles the UNIX philosophy of involving multiple components which work together over universal interfaces [13]. Recall that the cloud computing paradigm represents a Service oriented mechanism of managing and dispatching resources. Before we delve into studying the actual architecture of cloud computing it will be beneficial to examine the possible characteristics that will be required to realize such a system. It is common knowledge that the architectural requirements of cloud will vary depending on the application for which the cloud is being used.

For instance, social networking application like Facebook and Orkut will have a very different set of requirements, constrains and deliverables from the architecture in comparison to, say, a remote patient health monitoring application. However, some common architectural characteristics can still be identified. For instance: 1) the system should be scalable with the ability to include thousand to perhaps tens of thousands of members; 2) It should be able to interoperate between various service requirements and effectively share resources amongst its users; 3) The system should be easy to maintain and upgrade, maintaining user transparency during these processes; 4) As outlined earlier, managing resources like servers and storage devices virtually, thereby creating a virtual organization, is absolutely crucial.

To mitigate the problem of designing customized Cloud architecture foe each and every application and also to streamline the architecture design process of the cloud, scientists resorted to the age old concept of a generalized “Layered approach” [14]. As with the classical 7-layer OSI model of data networks [15], the layered model in cloud computing serves the same general purpose. Depending on the service requirement of an application, these layers are shuffled to create a customized architecture. The layered architecture adheresto the prin-

Figure 3. Basic cloud computing architecture.

ciple of Service Oriented architecture (SOA) which forms the core of the cloud computing paradigm. The components of a basic layered architecture are shown in the Figure 4, below [9], namely the client, its require Services, the applications that the client runs, the platform on which these applications run, the Storage requirement and finally the Infrastructure required to support the Client’s computing needs.

We devote a few sentences on each component below.

4.1. Clients

The Clients of a cloud comprise computer hardware and/or computer software that relies on the computational capability of the cloud for application or service delivery. Examples include computers, mobile devices, operating systems, and browsers.

Services: this refers to different service models made available by the cloud like SaaS (Software-as-a-Service), IaaS (Infrastructure-as-a-Service) and PaaS (Platform-asa-Service). This layer acts as a middleman between the user and the vast amount of resources accessible to the user. A resource includes “products, services and solution that are delivered and consumed in real time over the Internet” [9]. Examples include location services and Search Engines among others.

4.2. Application

The cloud enables resource management and user activity tracking from central locations rather than customer’s site, enabling customers to access application remotely via the Internet. cloud application services deliver software

Figure 4. Layered Architecture for acustomized Cloud Service.

as a service over the Internet, eliminating the need to install and run the application on the customer’s own computer, thereby simplifying (almost eliminating) maintenance and support at the customer’s end. Examples include Web Application and Peer-to-Peer computing.

4.3. Platform

It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers. This layer delivers a computing platform and/or solution stack as a service, often consuming Cloud infrastructure and sustaining cloud application. Examples include Web Application Frameworks like Ruby on Rails and Web Hosting.

4.4. Storage

The storage layer consists of computer hardware and/or computer software products that are specifically designed for the storage of cloud services computer hardware comprises huge centers that are used for resource sharing. Examples include Amazon SImpleDB, and Nirvanix SDN (Storage Delivery Network).

4.5. Infrastructure

This layer delivers computer infrastructure, typically a platform virtualization environment as a service. It includes management of virtual resources too. Rather than purchasing servers, software, data center space or network equipment, clients instead by those resources, as a full outsourced service. Examples include Network Attached Storage and Database services.

The main advantage of such a layered architecture is the ease with which they can be modified to suit a particular service. The way in which these components interact leads to various architectural styles. There are two basic architectural styles on which most of the services are based. They are:

4.5.1. Outside-In

This architectural style is inherently a top-down design emphasizing the functionality of the components. Implementing this style leads to a better architectural layering with various functionalities. It infuses more feasibility enabling better integration and interoperation of components.

4.5.2. Inside-Out

This architectural style, on the other hand, is inherently a bottom-up design which takes an infrastructure point of view of the components. This style is more application oriented than service oriented [16].

It is to be noted that incorporating new functionality in a pre-existing architectural scheme is done in an incremental fashion. The ease of transforming an existing architecture into another depends on the complexity of the architecture, the functionalities of the components and their integration. The vast landscape of the service and their growing complexity has led to implementation of innovative architectural styles and several hybrid architectures [16,17].

5. Cloud Deployment Techniques

Cloud deployment is the manner in which a cloud is designed to provide a particular service. Obviously these deployment methods will vary according to the way in which a cloud provides service to the users. Thus, their deployment techniques are user specific [18]. For instance, a deployment technique might depend on the level of security commissioned for a particular user.

Figure 5 depicts the various cloud deployment techniques which predominantly comprise: a) the Public deployment; b) the Private deployment; or c) the Hybrid deployment. We discuss each of these deployment strategies briefly below.

Conflicts of Interest

The authors declare no conflicts of interest.

References

[1] Janna Anderson, Elon University and Lee Rainie. “Technical Seminar Report on Cloud Computing,” Intel Executive Summary, 2005.
[2] Wikipedia, “Cloud Computing,” 2nd International Symposium on Information Science and Engineering, Ternopil, 23-25 July 2010.
[3] Everything as a Service, “Gathering Clouds of XaaS,” 2nd International Symposium on Information Science and Engineering, Ternopil, 23-25 July 2010.
[4] “What Is Cloud Computing,” Journal of Parallel and Distributed Computing, 2008.
[5] N. Carr and Y. Yu, “It Is No Longer Important: The Internet Great Change of the High Ground-Cloud Computing. The Big Switch: Rewiring the World, from Edison to Google,” CITIC Publishing House, Beijing, 2008
[6] B. P. Rimal, E. Choi and I. Lumb, “A Taxonomy and Survey of Cloud Computing Systems,” 5th International Joint Conference on INC, IMS and IDC, Seoul, 25-27 August 2009, pp. 44-51.
[7] W. Kim, “Cloud Computing: Today and Tomorrow,” Journal of Object Technology, Vol. 8, No. 1, 2009, pp. 65-72.
[8] J. F. Rayport and A. Heyward, “Envisioning the Cloud: The Next Computing Paradigm,” 2009.
[9] U. Sait, “The Future of Cloud Computing. Intel Executive Summary,” 2008
[10] P. Goyal, R. Mikkilineni and M. Ganti, “The FCAPS in the Business Services Fabric Model,” Proceedings of WETICE 2009: 18th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, Groningen, 29 June-1 July 2009, pp. 45-51.
[11] I. Lumb, E. Choi and B. Prasad Rimal, “Virtualization for Dummies,” 2nd International Symposium on Information Science and Engineering, Ternopil, 23-25 July 2010.
[12] H. Q. Yu and S. Reiff-Marganic, “A Method for Automated Web Service Selection,” IEEE Congress on Services—Part I, Honolulu, 6-11 July 2008, pp. 513-520.
[13] Amazon, “Amazon Elastic Compute Cloud (Amazon EC2),” Journal of Parallel and Distributed Computing, 2008.
[14] J. Carolan and S. Gaede, “Introduction to Cloud Computing Architecture, Sun Microsystems Inc. White Paper,” Sun Microsystems Inc., Santa Clara, 2009.
[15] Wikipedia, “Wikipedia, Free Encyclopedia. 3rd International Conference on Grid and Pervasive Computing-gpcWorkshops,” 2008.
[16] A. Aamodt and E. Plaza, “Case-Based Reasoning: Foundational Issues, Methodological Variations, and System Approaches,” AI Communications, Vol. 7, No. 1, 2008, pp. 39-59.
[17] M. D. Dikaiakos, D. Katsaros, P. Mehra, G. Pallis and A. Vakali, “Cloud Computing: Distribute Internet Computing for It and Scientific Research,” IEEE Internet Computing, Vol. 13, No. 5, 2011, pp. 10-13.
[18] M. Armbrust, A. Fox, R. Griffith, A. Joseph, R. Katz, A. Konwinski, G. Lee and I. Stoica, “Above the Clouds: A Berkeley View of Cloud Computing,” Technical Report No. UCB/EECS-2009-28, University of California, Berkeley, 2009.
[19] H9Labs, “Cloud Computing Explained—Part 2,” 3rd International Conference on Grid and Pervasive Computing (GPC) Workshops, Kunming, 25-28 May 2008.
[20] B. Raghavan, K. Vishwanath, S. Ramabhadran and A. C. Snoeren, “Cloud Control with Distributed Rate Limiting,” ACM SIGCOMM Computer Communication Review, Vol. 37, No. 4, 2010, p. 337.
[21] M. C. Jaeger, G. Muhl and S. Golze, “QoS-Aware Composition of Web Services: A Look at Selection Algorithms,” Proceedings of the IEEE International Conference on Web Services (ICWS), Orlando, 11-15 July 2005, pp. 1-2.
[22] D. R. Augustyn and L. Warchal, “Volume 79: Cloud Service Solving N-Body Problem Based on Windows Azure Platform,” In: Communications in Computer and Information Science, Springer, Berlin, Heidelberg, 2010, pp. 84-95.
[23] M. Turner, D. Budgen and P. Brereton. “Tuning Software into a Service,” IEEE Computer, Vol. 36, No. 10, 2003, pp. 38-44.
[24] T. Dillon, C. Wu and E. Chang, “Cloud Computing: Issues and Challenges,” 24th IEEE International Conference on Advanced Information Networking and Application, Perth, 20-23 April 2010, pp. 27-33. doi:10.1109/AINA.2010.187
[25] M. Jensen, J. Schwenk, N. Gruschka and L. L. Iacono, “On Technical Security Issues in Cloud Computing,” IEEE International Conference on Cloud Computing, Bangalore, 21-25 September 2009, pp. 109-116.
[26] E. J. Domingo, J. T. Nino, A. L. Lemos and J. Miguel Gomez Berbis. “CLOUDIO: A Cloud Computing-Oriented Multi-Tenant Architecture for Business Information Systems,” IEEE 3rd International Conference on Cloud Computing, Miami, 5-10 July 2010, pp. 532-533.
[27] M. A. Vouk, “Cloud Computing-Issues, Research and Implementations,” 30th International Conference on Information Technology Interfaces, Dubrovnik, 23-26 June 2008, 2010, pp. 31-40.
[28] D. Bernstein and E. Ludvigson, “Networking Challenges and Resultant Approaches for Large Scale Cloud Construction,” Workshops at the Grid and Pervasive Computing Conference, Geneva, 4-8 May 2009, pp. 136-142.

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.