Cloud computing has become a huge buzz-phrase in the past few months, but you'd be forgiven for not knowing what the term really means. While our own Webopedia defines cloud computing, different people interpret "cloud computing" in different ways. That's a problem because computing "in the cloud" may be important for you and your organization, but if it's not clear what it actually means, how will you know?
Cloud vs. Grid
What, for example, is the difference between "cloud computing" and "grid computing"? Both imply data centers filled with computing resources available over the network, so are they, in fact, the same thing?
Actually, no. Grid computing implies the provision of computing resources as a utility that can be turned on or off as required. Computing on tap, so to speak. You pay for what you consume, without worrying about how where it comes from or how much is available.
A good example of this is Amazon's Elastic Compute Cloud (EC2) offering. Customers create their own Amazon Machine Images (AMIs) containing an operating system, applications and data, and they control how many instances of each AMI run at any given time. They pay for the instance-hours (and bandwidth) they use, adding computing resources at peak times and removing them when they are no longer required. Amazon calls this a cloud, but really it's a grid. The cost of this utility? 10 cents an hour for 1.7 GB of memory, 1 virtual core, and 160 GB of instance storage, plus data transfer costs.
Cloud computing is slightly different. It implies the supply of applications to end users, rather than just computer cycles. "Cloud-based computing is a type of IT service usually delivered over the Internet, but the defining characteristic is scale the ability to service millions of users," said Matt Cain, a research vice president at Gartner. Cloud computing also implies quick and easy provisioning and a simple cost structure, generally on a per-user, per-month basis, if it is billed at all, he said.
Microsoft's Live Hotmail is a perfect example of an application run in the cloud: It is supplied over the Internet from one or more data centers who-knows-where, it has millions of users, easy self-provisioning, and a very simple cost structure (of no charge per month).
Is It Really All That New?
If some of this sounds familiar, it's because, apart from the scale, it is an almost perfect description of the application service provider (ASP) model that was in vogue briefly eight or nine years ago. ASPs, you'll recall, were supposed to manage data centers and use their expertise to run and maintain all sorts of applications for customers, who accessed these applications down the wire. New applications were written or existing applications were "ASP-enabled," and these were either shared by multiple customers or hosted on a separate server for each customer.
The problem was that very few ASPs managed to get many, and in some cases any, customers. Most disappeared as quickly as they arrived. There were a few successes: Hosted Exchange was a popular offering, and Salesforce.com successfully promoted the idea of software as a service a low-cost solution to fill a particular need, a commodity rather than a differentiator.
So what's the difference between the ASP model and computing in the clouds? You could argue that the cloud is just a fancy 21st-century way of talking about back-end systems that supply software as a service. "The difference is scale," said Cain. "ASPs never got millions of customers."
It's interesting to note that just as ASPs discovered hosted Exchange was one of the few things for which customers were willing to pay, it's also an application that runs well in the cloud. "E-mail is the poster child of cloud computing," said Cain.
ASPs had very little luck offering productivity apps like Office down the wire to customers. Partly for technical reasons, and partly because very few enterprises wanted their confidential documents and spreadsheets stored offsite. Besides, what was the benefit of not running Office on your own local machine, and who knew whether the ASP would even be in business in a few months' time?
This hasn't stopped Google offering its Google Docs suite of productivity and collaboration applications from the cloud. Companies, including IBM and Microsoft, have announced plans to give the cloud increased attention. It's likely other large organizations, such as Oracle, will join the fray. Cain suggests hardware vendors like Dell and HP may also be looking to get in on the act.
A New View From the Cloud
What's different today is that although most of the players in the ASP market were startups, the companies getting involved in cloud computing are all very big. They have the resources to build enormous data centers with the vast amounts of storage and computing capacity required to service millions of customers reliably. Cost of entry is high, but it will be worth it to the likes of Google if companies can get their hands on a sizeable proportion of the money enterprises are currently spending on mass market applications like Office.
But they will find customers only if they can demonstrate real benefits from taking applications from the cloud. The question remains: Why would anyone want Office (or other applications such as e-mail) as a service rather than simply installing software on a computer or getting it from the corporate data center?
The answer to this question may also be familiar. The ASP model promised a much simpler way of accessing applications, with a very short provisioning time, a predictable per-user, per-month fee, and lower overall costs due to economies of scale and the harnessing of expertise provided by specialists.
This is precisely what computing in the cloud offers but with less choice of applications and more economy of scale. Google, Dell, Amazon, IBM and others of similar ilk can build data centers all over the world, in places that have inexpensive and plentiful power supplies. They can offer applications, such as productivity tools and e-mail, to millions of end users with vast economies of scale, so that the cost per-user, per-month is almost nothing. And the customers, or users, are already there.
Users will likely be more receptive to the idea since the old knee-jerk worries about security and allowing third parties to run applications are less prevalent these days. And let's face it Google is not likely to run out of money any time soon and is probably far more likely to be around in 10 years time than many of its potential cloud computing customers.
When put like that, cloud computing starts to make sense. After all, e-mail and productivity apps are commodities everyone uses. They are not strategic apps that give a company a competitive advantage. Therefore, why not let a handful of mega-corporations like Google run and maintain them from data centers built near hydro-electric facilities offering unlimited free power for a fraction of the price now spent to license, install, maintain and run them yourself.
It may not give you a competitive advantage if everyone else is getting their commodity apps from the cloud as well, but it sure does reduce costs. Or, to paraphrase Yossarian from Joseph Heller's classic novel Catch-22, "if everyone else is getting their apps from the cloud, you'd certainly be a damned fool to get yours any other way ..."