Mind the Cloud - Home
Cloud Computing: A New Label on Old Technologies?
Thoran Rodrigues
OCT 03, 2012 05:52 AM
A+ A A-

Cloud computing shares characteristics with many technologies or technological buzzwords that have been around for a while. It relies directly on virtualization, which has been used by companies to improve datacenter efficiency for a long time; it has the concept of computing resources being delivered on-demand, to be paid for on a usage basis, similar to the idea of utility computing; most, if not all, cloud-based software is sold on a pay-as-you go based, using a software-as-a-service model; cloud platforms are designed around service-oriented architectures. All these similarities and borrowed technologies have led many people to question if cloud computing is really something new, or only a rebranding of existing technologies in order to improve sales.

To complicate matters further, we can see everywhere instances of cloudwashing, where vendors slap the cloud label on their products regardless of it being true or not. And this isn’t limited to small companies: Oracle is a big offender here, and many other large technology vendors are just as guilty of this practice. Unfortunately, the only thing it does is increase the feeling that cloud computing is just a new label on old technology, invented to renew marketing messages and improve sales.

A Close Look at Cloud Layers

To see and understand how and why the cloud is different from previous technologies, we must take a close look at its different aspects. The cloud has three distinct layers: infrastructure, platform and software. Each one of these layers is responsible for a different aspect of the confusion that surrounds cloud computing, and we must look at each one in detail.

From the Infrastructure-as-a-Service (IaaS) layer, exemplified by Rackspace and Amazon’s EC2, comes the confusion with utility computing. Utility computing, as the name implies, refers to selling computing resources as a metered, pay-as-you-go service, so that end users can simply hire these resources from providers, instead of buying their own. In a sense, this is exactly what the IaaS providers deliver when you rent their servers: you get to use their computing resources, paying only for the amount used: the time that a server stays online, the amount of RAM you need for your server, the amount of storage space occupied.

Some providers, however, are showing us that they can deliver much more than the traditional utility computing model. With its Spot Instances, Amazon has in essence created an exchange market for computing power, where the cost is entirely regulated by supply and demand. Vendors are also extending their offerings with additional value-added services, such as monitoring (both automated and manual) and alerts, which further differentiate cloud offerings from being simply utility computing.

At the other end of the stack, we have cloud software. The name of this layer (Software-as-a-Service, or SaaS) is another great source of confusion. Since almost all web-based software is sold on a “service model”, with monthly usage prices, people think that web-based software and cloud software are the same thing when, in fact, they are not. While all cloud software runs on the web, not all software that runs on the web should be labeled as cloud. To receive the cloud label, applications should be built on top of a cloud stack, with all the benefits that the cloud can offer: scalability, reliability and so on. This means that cloud software should be designed to easily scale to multiple servers transparently, should be reliable enough so that there is no single point of failure, and should be able to handle as many users as required without problems.

The middle layer, of Platform-as-a-Service (PaaS) is perhaps the greatest differentiator. Behind it is the idea of an operating system whose components (file system, messaging, process execution, etc.) can be consumed on a service model. Applications built on top of such a platform would be able to automatically and transparently scale up or down its resource usage as demand increases or decreases. This layer creates an abstraction over the physical infrastructure, so that the same application can be running distributed on multiple locations, not concerning itself on the underlying basic resources such as CPU power, memory or networking.

More than Just a Label

Cloud computing is a result of the intersection and application of dozens of technologies and concepts. The infrastructure layer is an implementation of the utility computing model, but with many additional services being offered. It relies heavily on virtualization to deliver computing resources to end users, but while virtualization can be employed even on a laptop computer, when talking about the cloud we’re talking about virtualizing hundreds of standardized servers, so that they can be easily swapped out in case of failure, and so that the underlying hardware becomes transparent for the user. On the software layer, while cloud software is always web-based and sold on a service model, it has many other characteristics (reliability, scalability) that differentiate it from traditional web-based software.

The cloud, then, is more than simply a new label for old technological ideas. It’s a truly new model that encompasses not only technological elements, but also economical ones, related to distribution and pricing models, service delivery and many other things. Once we stop focusing on the similarities with previous or existing technologies, we can start exploring the future implications of the cloud, and discussions can become much more meaningful.

[%= name %]
[%= createDate %]
[%= comment %]
Share this:
Please login to enter a comment: