Friday, July 1, 2011

What is Cloud Computing

I hear the term, "cloud computing" used in a lot of different ways. I think at this point, cloud computing is just a broad marketing term or buzz word that different tech services can throw around to mean whatever they want. It's really similar to how the term 4G doesn't have to follow any technical specification anymore. AT&T, Verizon, and T-Mobile can create whatever technology they want and brand it as 4G. Just like any company can create any service and call it cloud computing.  I don't have any problem with these terms being thrown around like this except that it can sometimes be confusing. Check out these Windows 7 commercials to see what I mean:




To me, commercials like these talk about these neat features while saying the word, “cloud,” but don't really pinpoint the connection between the feature, and what cloud computing is. So here is my attempt at a basic definition.

Cloud computing can be categorized into three basic functions. It can probably be further split into more specialized uses but I don't think the differences beyond these categories are important.

Infrastucture as a Service (IaaS) – The first category is IaaS. In the Academic world, many professions need the power of massive super computers to analyze large sets of data, or run complex simulations. In the past, this meant that every researcher had to solve this problem individually.

For example, say I had a company that was interested in researching tornado path prediction methods. One of my employees wants to look at every single recorded tornado in the U.S. And check if there are any correlations between tornado path, temperature, ground slope, wind speeds, humidity, and hundreds of other variables. The only way I can run through the millions of possibilities and check for patterns is with the help of a super computer.

In the past, a company like this may not have the money to purchase expensive super computers, and hire technical staff to maintain and troubleshoot any problems that occur. However IaaS means that a cloud provider already has this equipment and wants to rent it out as a service to people like me. IaaS is renting computing time on high quality hardware so you don't have to buy and maintain it yourself. One such service is Amazon's EC2 service allowing you to rent its computing power by clock speed, bandwith, or time. This means I no longer need to worry about purchasing, installing and maintaining new equipment, or sinking money into something I may not need a month from now. All I have to do is pass the simulation and data to my new army of rented super computers and wait for the results.

Platform as a Service (PaaS) – Platform as a Service is a way of giving the developer somewhere to host his software. Time for another example. Lets say I'm starting a new online gaming company. I'll have to buy some servers and networking equipment to host my software on the internet where customers can find and play the games I create.

The problem I've encountered is I have no way of knowing how much traffic I'm going to receive, which in turn gives me no clue as to how much servers I'll need to start off with. Overestimating my traffic could leave my company in debt with no way to pay off the huge server farm I just built. Underestimating the amount of traffic would be even worse. My games wouldn't be able to reach anyone at all if my equipment is overwhelmed. Even if I somehow do manage to guess the correct amount of equipment to buy at first, I'll need to throw it out and move to larger and more powerful equipment once my company starts to grow. PaaS allows me to just give my software to a provider, and pay for the actual traffic I receive with no guesswork or upgrading involved. Just pay as you go.

Software as a Service (SaaS) – This one is the category that most consumers are concerned with. All this means is that someone somewhere has built a service and can offer you any amount of features through some type of data connection. For example, dropbox gives me access to my files anywhere I have a data connection, the Amazon music locker gives me access to my music from any internet connected device, or I can collaborate on a document from remote locations on something like google wave.   

No comments:

Post a Comment