It seems as though every company that offers a web based or SaaS product is now claiming that they are offering it in the cloud. But are they? Based on what I can tell, it seems like most just have your typical data center. Sure, they may have great features like multiple mirrored locations in case of outages, backups and all the other bells and whistles that come with both a data center and a cloud, but, are they “in a cloud”?
If you Google (or Bing!) and try to find the difference, you will get real frustrated trying to find a quick, easy answer. The main issue is a lack of a single definition for what is cloud computing. The Berkley Report attempts to define cloud computing as “both the applications delivered as services over the Internet and the hardware and systems software in the datacenters that provide those services”, but they also explicitly exclude what they term “private clouds” which include data centers.
What sets apart Cloud Computing from Data Centers is three key elements of the cloud. Again, from The Berkley Report.
- The illusion of infinite computing resources available on demand, thereby eliminating the need for Cloud Computing users to plan far ahead for provisioning.
- The elimination of an up-front commitment by Cloud users, thereby allowing companies to start small and increase hardware resources only when there is an increase in their needs.
- The ability to pay for use of computing resources on a short-term basis as needed (e.g., processors by the hour and storage by the day) and release them as needed, thereby rewarding conservation by letting machines and storage go when they are no longer useful.
Most data centers have been created by, or in support of, companies offering a SaaS based product in order to allow customers to use their product. The customer typically, though not always, enters into a term-based contract for the use of the service (#2). The hardware is provided, in many cases for the use of the product being sold by the company functioning as the data center and getting other software or full access can be troublesome (#1). As you are paying for the service, in most cases, the fee is set regardless of how much you actually use the service (#3). Logging on once a month costs the same as logging in every day.
One other difference, not mentioned above is the ability for the resources to be quickly altered based on usage. From the reading and training I have had on the cloud, this was probably the most useful feature to me. In a typical data center, you have your machines. They may be physical or virtual, but your space and resources are allocated when you sign up for the service. Expanding or contracting the amount of resources is a process that requires someone to set up a new machine or alter the configuration of a virtual machine.
In a cloud environment, they can be easily configured to add additional resources based on the load at a given time. This does not have to be predetermined or even contracted for. As you are only paying for what you use, you are only paying for those extra resources when they are needed. Once they are no longer needed, they shut themselves down and you are back to your normal environment. In fact, during a training on the Amazon Web Services EC2 Cloud Environment, the hardest part was turning off the load balancing so we could shut down our servers.
Obviously, there are other benefits and features that set clouds apart from data centers. These range from virtually unlimited storage, to the flexibility of only paying while you are using the servers to the ease of rolling out new environments.
There are, of course, benefits that data centers have over clouds. Unless this has changed recently, Microsoft currently does not allow its licenses to be used in a cloud environment. I expect this will change as this was announced prior to them launching the Azure Cloud. Also, there is the lack of physical access to the servers in a cloud. You will probably never have access to the server room for Azure or EC2 or any of the other cloud servers out there. In fact, with Amazon’s EC2, they will not even tell you where your servers are physically located. You are pretty much limited to knowing the continent of your server.
Hopefully this helps clear up some things about the differences. We really do need a clear definition of what is Cloud Computing. Until we have that, Larry Ellison, CEO of Oracle, will be able to make comments like his statement that, “I can’t think of anything that isn’t cloud computing with all of these announcements”. This may be a little extreme, but, based on many companies claims, it’s not that far off.
Tags: Amazon EC2, Azure, cloud computing, data center, hosting