Cloud Computing: Today and Tomorrow

Won Kim, Sungkyunkwan University, Suwon, S. Korea

space REFEREED
COLUMN


PDF Icon
PDF Version

Abstract

During the past few years, cloud computing has become a key IT buzzword. Although the definition of cloud computing is still "cloudy", the trade press and bloggers label many vendors as cloud computing vendors, and report on their services and issues. Cloud computing is in its infancy in terms of market adoption. However, it is a key IT megatrend that will take root. This article reviews its definition and status, adoption issues, and provides a glimpse of its future and discusses technical issues that are expected to be addressed.


1  STATUS

Perhaps the simplest working definition of cloud computing is "being able to access files, data, programs and 3 rd party services from a Web browser via the Internet that are hosted by a 3 rd party provider"[Hodson08] and "paying only for the computing resources and services used".

Often cloud computing is used synonymously, inaccurately in my view, with such terms as utility computing (or on-demand computing), software as a service (SaaS), and grid computing. Of these, as I will show below, utility computing and SaaS are merely two of several forms of service cloud computing can provide. Grid computing is simply one type of underlying technologies for implementing cloud computing.

The term "cloud" in cloud computing is used synomously with "data center". Today the computing field is able to envision transitioning into the cloud computing era because of the breath-taking advances in computing and information technologies during the past three decades. The advances include the buildup of the Internet backbone, the widespread adoption of broadband access to the Internet, the powerful network of servers and storage in data centers, the advances in high performance and scalable software infrastructure for the data centers and the Web, etc.

The architecture of a cloud includes several key modules [Wikipedia]: user interaction interface, system resource management module with a services catalog, and resource provisioning module. The system resource management module manages a massive network of servers running in parallel. Often it also uses virtualization techniques to dynamically allocate and deallocate computing resources.

Advantages

Cloud computing offers the following major advantages to the users.

  1. The 3rd party provider owns and manages all the computing resources (servers, software, storage, and networking) and electricity needed for the services. The users only need to "plug into" the cloud. The users do not need to make a large upfront investment on computing resources; the space needed to house them; electricity needed to run the computing resources; and the cost of maintaining staff for administering the system, network, and database.
  2. The users can increase or decrease the level of use of the computing resources and services flexibly and easily.
  3. The users pay most likely much less for the services, because they pay only for the computing resources and services they use, and the subscription-based or pay-per-use charges are likely much lower than the cost of maintaining on-premises computing resources. If the users are to maintain on-premises computing resources, they also need to make the worst-case plan to account for the occasional or seasonal peak needs.
  4. The users can in practice access the cloud for services anytime from anywhere.

The above advantages make cloud computing a compelling paradigm for servicing computing needs for both enterprises and end customers. As such, many players, both large and small, are now entering or planning to enter the emerging cloud computing market.

Forms of Service and Players

The forms of service that cloud computing provides today may be broken down into managed services, SaaS, Web services, utility computing, and platform as a service (PaaS) [Gruman08]. The ideas behind these forms of service are not new. The fact that the users can tap into these services from Web browsers via the Internet makes them "cloud" services.

A managed service is aimed at delivering an application to an enterprise, rather than to end customers directly. This form of service has been available for a decade. There are many types of managed services provided via the Internet, including virus-scanning services for email, spam-filtering services (Google/Postini, etc.), security services (SecureWorks, IBM, Verizon, etc.), desktop management services (CenterBeam, Everdream, etc.) [Gruman08].

There are numerous SaaS vendors (formerly known as application service providers). They run a single application in a data center, and deliver the functionality via the Internet to the users. Enterprise SaaS vendors include salesforce.com (for sales force applications), Oracle/Siebel (CRM applications), Workday (for ERP applications), Citrix (meeting applications), and numerous others. SaaS desktop applications for end users, include Google Apps, Zoho Office, Microsoft WindowsLive, etc. Google Apps include Gmail, Google Talk, Google Calendar, Google Docs (documents, spreadsheets, presentations, collaboration), etc. Microsoft Windows Live includes Hotmail, Messenger, and Photo Gallery. Internet portal sites, Internet search engines, and Internet social networking sites are essentially SaaS vendors for end customers.

Web services are similar to SaaS. Web service providers offer APIs that application developers can use in developing applications. Examples of Web services APIs include Google Maps, ADP payroll processing, the U.S. Postal Service, Bloomberg, credit-card processing services, etc. [Gruman08].

Many players have recently started to offer computing resources, that is, virtual servers and storage as utility computing service. These include such heavyweights as Amazon, Sun Microsystems, IBM, and AT&T; and new vendors such as Nirvanix, Hatsize, Joyent, Cloudworks, etc [Foley08b][Hoover08a][Wikipedia]. Amazon offers Amazon Web Services (AWS), which today consists of Simple Storage Service (S3), Elastic Compute Cloud (EC2), Simple Queuing Service (which uses S3), and SimpleDB. Amazon charges 15 cents a month per gigabyte of S3 storage, and 10 to 80 cents per hour for EC2 server. Amazon has 370,000 AWS customers. Amazon offers a 10% credit if S3 availability falls below 99.9% in any month. Many startup SaaS vendors provide their services on AWS [Hoover08a]. Some vendors offer entire virtual desktops with the look and feel of Microsoft Windows to those who cannot afford real desktops. Examples are Desktop Two, Zimdesk, GOPC, and Sun Microsystems' Secure Global Desktop. These virtual desktops come with open source Web applications that run with Flash or Java [Naone07].

PaaS also is a variation of SaaS. PaaS delivers an application development environment (platform) as a service, typically with computing resources for hosting the applications developed on the platform. Vendors include salesforce.com (Force.com), Coghead, Google (Google App Engine), Yahoo (Pipes), and Dapper.net [Bruman08]. Google's application development platform, Google App Engine, lets application developers develop Python-based applications, and hosts the application at no cost with up to 500 MB of storage [Hoover08a].

2  ADOPTION ISSUES

There are several concerns that the users have regarding the adoption of cloud computing. They include availability, security and privacy, support, interoperability, and compliance. Of these, compliance is generally relevant to only the enterprise. All of the concerns are the same ones that the users have always had even with on-premises computers and software. To a good extent, the users become newly conscious of the concerns, because their data, applications, and computing resources will no longer be under their control.

  1. availability
    The Amazon S3 suffered two outages in 2008 (2 hours in February and 8 hours in August). Google Gmail was unavailable for 2 hours twice in August. Citrix's GoToMeeting and GoToWebinar were out for a while. RIM's BlackBerry service was out for 18 hours. These outages received wide coverage by the bloggers and trade press [Hoover08b]. Despite the concerns raised by these outages, the availability of cloud services, in my view, has been rather high (more than 99%), and may actually be no worse than on-premises availability. It is impossible to provide 100% availability, unless a high availability architecture is adopted and both the platform and applications are fully tested. Enterprise users should seek service level agreements (SLAs) that will motivate the vendors to ensure desired levels of availability. Besides the SLA, users who require 100% availability may take a combination of precautionary measures. With data, they may maintain a backup on on-premises storage, or use a backup cloud, or simply not store mission-critical data on the cloud. With applications, the users may keep an on-premises version of the application, so that they may work offline while the cloud is down. There is one serious availability concern with cloud computing. This is when the cloud computing vendor goes out of business, or becomes unable to deliver the service as the users may have initially been led to expect. The users must select viable vendors, and even then have a contingency plan.
  2. security and privacy
    The integrity of personal information has become a major issue not only for cloud computing but also for on-premises computing. It is nearly impossible to guarantee 100% security and privacy protection against all possible sources of violation, including the inevitable software bugs, the growing sophistication of the hackers, inadequate procedures, human malfeasance, and human errors. Cloud computing vendors must adopt the most sophisticated and up-to-date tools and procedures, and strive to provide better security and privacy than is available for on-premises computing.
  3. support
    Both enterprise users and end users require support for problem resolution. This is the case for both cloud computing and on-premises computing. Today's free SaaS cloud users are left pretty much on their own. Enterprise users pay for support. Cloud computing vendors must hire and train adequate support staff to provide better support than what the users are accustomed to with on-premises computing. In fact, cloud services should be designed for easier usability than on-premises computing in the first place.
  4. vendor lockin and interoperability
    Vendor lockin is a concern that the users always have but in practice they live with. Interoperability and industry-wide standards have alleviated this concern in the case of other technologies. Interoperability means easy migration and integration of applications and data between different vendors' clouds. This does not seem to have received much press as a major concern yet, probably because the market is in its infacy and not many users have faced the problems yet.
  5. compliance
    Enterprise users must maintain business legal documents and assure their integrity in order to comply with various laws, such as Sarbane-Oxley (SOX) and health insurance portability and accounting act (HIPAA). Cloud computing vendors have to adopt technologies to ensure that their enterprise users' data satisfy their compliance requirements. Again, this does not seem to have received much press as a major concern yet.

3  PROGNOSIS

In this section, I will outline my views on how the cloud computing market will evolve in the next few years, and key technical issues that will be given serious attention over the next several years.

Market Prognosis

  1. emergence of lots of clouds in the sky
    Given the four forms of cloud service, there is ample room for hundreds or even thousands of players in the market. As such, there will be many "large clouds" and a lot more "small clouds". Many of the small clouds will live on some of the large clouds, that is, many small cloud computing vendors will offer their services on the utility computing services provided by large cloud computing vendors.
  2. emergence of cloud integration services
    Once the users start using services from multiple cloud service providers, the need will arise for migrating and integrating applications and data from different clouds. This will bring about a new form of cloud service, that is, cloud integration service. The integration technology will leverage such technologies as EAI (enterprise application integration), EII (enterprise information integration or federated database), and ESB (enterprise service bus).
  3. formation of a cloud computing ecosystem
    An ecosystem of cloud computing vendors will form. It will include various types of player, besides the vendors that offer cloud services to the users. One type of player already offers solutions that help enterprises to provision and manage virtual data centers from commodity servers and storage. They include 3Tera (AppLogic), Cohesive Flexible Technologies (Elastic Server on Demand), Liquid Computing (LiquidQ), Terremark, Layered Technologies, and XCalibre [McLaughlin08][Gruman08]. A second type of player, such as Elastra and Maavo [Foley08], will offer solutions for deploying and managing applications in a data center (within an enterprise). Other types of player will include cloud computing platform vendors, the usual application software and middleware vendors, system integrators, and consultancies.
  4. adoption of hybrid systems
    Because one cannot reasonably expect cloud computing to guarantee 100% availability and security, many users will adopt hybrid systems of clouds and on-premises systems. The on-premises systems may include private clouds, that is, virtual data centers running within the firewall [blogspot][Foley08a].
  5. rising subscription fees
    The current low subscription fees are likely to go upwards significantly, as vendors harden their clouds (for higher performance, scalability, availability, and security), make their services richer, provide better support, and inevitably become profit-driven.

Technical Issues

To help cloud computing take root, it will be necessary to adapt various mature technologies to the cloud computing paradigm. I list some of them below.

  1. cloud computing software platform
    As cloud computing software platform is the heart of a cloud computing system, it will require considerable further research. Hadoop is an open source cloud computing software platform, as an alternative to the platforms developed by Google and others. It appears to be a good vehicle as a launching point for research. Yahoo is a major sponsor of the Hadoop project. IBM has adopted Hadoop for its Blue Cloud solution. Facebook uses Hadoop in its data analysis. Google, IBM, and Yahoo have donated cloud computing platforms to 6 US universities. The computing platforms all include Hadoop. Hadoop may become the Linux of cloud computing [Han08].
  2. collaboration applications
    Such means of collaboration as chat, instant messaging, Internet phone calling, etc. will be added to various popular applications. Google Docs spreadsheets already makes it possible for multiple users to chat while editing a spreadsheet together [Zeman08].
  3. application and data integration across clouds
    The research on these subjects can leverage the available EAI, EII, and ESB technologies.
  4. continuing work on multimedia transmission and data mining
    Transmitting the bulky multimedia data across the network will continue to be a challenge, and it needs further research to speed up cloud computing. Further, as more data gets pushed to the clouds, including user-created data, the need to analyze (mine) such data to derive business-useful knowledge will increase. The data mining and machine learning communities will need to address this need.
  5. service management
    As the clouds proliferate and the users start plugging into multiple clouds, the problems of discovering and composing services that have been subjects of research in the service-oriented architecture context will need to be revisited in the cloud computing context.

CONCLUDING REMARKS

In t his article, I first reviewed the definition, major advantages, forms of cloud services and some of the key providers of each form of cloud service. I then summarized the adoption status, issues, and my views on them. Next, I offered my prognosis of how the market may evolve, and a list of research issues. Because of the compelling advantages, and because of the readiness of the enabling technologies, I expect that cloud computing will become a key computing paradigm for the next 5 to 10 years. It will have far reaching consequences on the distribution model for software, and even commodity hardware. It will also make it easier for small to medium businesses to offer new services, as we are already seeing startups offer SaaS services on Amazon's Web Services.

ACKNOWLEDGMENTS

This research was supported by the MKE (Ministry of Knowledge Economy), Korea, under the ITRC (Information Technology Research Center) support program supervised by the IITA (Institute of Information Technology Advancement) (IITA-2008-(C1090-0801-0046))

 


REFERENCES

[blogspot] http://cloudcomputing.blogspot.com/Cloud computing: adoption fears and strategic innovation opportunities",

[Foley08a] John Foley: "Private Clouds Take Shape", InformationWeek, August 9, 2008.

[Foley08b] John Foley: "20 Cloud Computing Startups You Should Know", InformationWeek, September 20, 2008.

[Gruman08] Galen Gruman: "What Cloud Computing Really Means", InfoWorld, April 7, 2008. (Also in The New York Times, with Eric Knorr)

[Han08] Jaesun Han: "The Future of Cloud Computing and Server Platform", http://www.web2hub.com/blog/82 (in Korean) February 1, 2008.

[Hodson08] Steven Hodson: "What Is Cloud Computing?", http://www.winextra.com/2008/05/02/what-is-cloud-computing, May 2, 2008.

[Hoover08a] J. Nicholas Hoover and Richard Martin: "Demystifying the Cloud", I nformationWeek Research & Reports, pp. 30 -3 7, June 23, 2008.

[Hoover08b] J. Nicholas Hoover: "Outages Force Cloud Computing Users To Rethink Tactics", I nformationWeek, August 16, 2008.

[InformationWeek] "Amazon's S3 Cloud Service Turns Into A Puff of Smoke", I nformationWeek NewsFilter, August, 2008.

[McLaughlin08] Laurianne McLaughlin: "11 Cloud Computing Vendors to Watch", NetworkWolrd, March 13, 2008.

[Naone07] Erica Naone: "Computer in the Cloud", MIT Technology Review, September 18, 2007.

[Stone08] Brad Stone: "Web Filtering Moves to the Cloud", The New York Times, April 4, 2008.

[Weber08] Jonathan Weber: "Cloud Computing", Times Online, May 5, 2008.

[Wikipedia] "Cloud Computing", http://en.wikipedia.org/wiki/Cloud_computing

[Zeman08] Eric Zeman: "Google Posts an Article to Explain the Benefits of Cloud Computing to the Enterprise", InformationWeek, June 18, 2008.

About the author



 

Won Kim is professor and university fellow at Sungkyunkwan University (SKKU) in Suwon, South Korea. He is also a senior advisor to Xener Systems (www.xener.com) in Seoul. He is one of the pioneers of object-oriented and object-relational database technologies. He was founder of UniSQL and Cyber Database Solutions, both in Austin, Texas, USA. He was founding Editor-in-Chief of ACM Transactions on Internet Technology, and Editor-in-Chief of ACM Transactions on Database Systems. He was founding Chair of ACM Special Interest Group on Knowledge Discovery and Data Mining, and Chair of ACM Special Interest Group on Management of Data. He received the 2001 ACM Distinguished Services Award. He is an ACM Fellow. He received a B.S. and M.S. from the Massachusetts Institute of Technology, and a Ph.D. in computer science from the University of Illinois at Urbana-Champaign. He can be contacted under wonkim at skku dot edu, or wonkimtx at gmail dot com


Won Kim: "Cloud Computing: "Status and Prognosis", in Journal of Object Technology, vol. 8, no. 1, January-February 2009, pp. 65-72 http://www.jot.fm/issues/issue_2009_01/column4/


Previous column

Next column