jump to navigation

Defining the essential characteristics of the cloud – Separating cloud computing from marketing hype and dealing with popular misconceptions May 12, 2012

Posted by pvidosa in Cloud Computing.
trackback

The Cloud

The cloud is this idea that computing resources can be offered by a third party as a service so that each individual organization that wishes to build web applications doesn’t need to build their own datacenter to support it.  This extends down to even the smaller team that is just starting out.  They have the ability to buy access to the cloud cheaply and eliminate unneeded costs of maintaining their own server.  This means that it should be even easier for groups to create and deliver their applications to the web.  There are those who do not believe that the cloud is anything new and that it simply is marketing hype.  I am here to prove them wrong.

The Cloud Is Nothing New

One of the big misconceptions of the cloud is that it is nothing new, just more of the same.  A group at UC Berkeley posted their thoughts on the cloud and they listed three hardware advantages that cloud computing provides:

  • The first is the illusion of infinite computing resources available on demand. [1]  The cloud providers make you believe that your application can grow to unimaginable sizes and they will still be able to support you.  However, because of the setup of the cloud, you will not have to worry about growing too big with most major providers.  The resources are shared between many users so that when one application is not using many resources, another application can take advantage of those unused resources if they need it.
  • The second advantage is that cloud users have to make no up-front commitment.[1]  As described before, this is great for many reasons.  This allows small groups that are just starting out to have access to computing resources without building their own hardware setup.  It is just another thing that they don’t have to worry about, especially when they should be focusing on building their application.
  • The third advantage is having the ability to only pay for how many resources you use and for a short amount of time.[1]  This means that you can cut costs by intelligently managing your resources.  This is another great advantage for startups which will help them save money.

From a hardware perspective, these three points really show how much the cloud can help with many applications today.  The cloud providers focus on setting up great computing resources while the developers can focus on building great applications.  What personally comes to mind when thinking about the advantages of the cloud and developing a new web application is Agile.  An organization that is Agile would love the idea of the cloud.  It would allow them to get up and running with their product very quickly.  Also, if the product doesn’t work out or they decide to take a different path, they don’t have a lot of sunk cost since they were only paying for the service for a short amount of time.  Also, an Agile group may be growing their application, but they don’t need to go out and buy more hardware.  They can simply request or purchase more resources from the provider.  With the take-off of Agile, I think cloud computing will attract attention as Agile organizations realize that it is a solution that will allow them to become even more Agile.  [2]

Watch Out For Vendor Lock-in

Another misconception is that vendor lock-in will create problems if you wish to move to a different provider.  However, I think that in many situations it may make sense to actually use multiple providers to store your data.  There are great benefits that come along with this.  One is that outages are less likely to completely take your application offline.  If you distribute your application, it is less likely that two providers go down at the same time.  Another advantage of using multiple providers is that if one of the providers chooses to make policy changes or increase fees, you won’t have to move as much data since the data may be duplicated across providers and all your data is not likely to be stored with that one provider.  Also, using multiple providers could actually save you money.  You could use one provider to do CPU intensive tasks because that provider is cheaper than the others for CPU time while you use another provider for bandwidth intensive tasks because it offers a more competitive rate for that function.

Aren’t You Worried About Security?

Another major misconception is that if you move to the cloud, you will be sacrificing security.  I think that while there are some new concerns associated with storing your data in the cloud, it is probably overblown.  There are a few things that can be done to prevent data from landing into the wrong hands.  One option is to encrypt all the data that is stored in the cloud.  With a good encryption algorithm, no one will be able to access your data with today’s technology.  Another option is to have the data be self-describing.  The data will need to determine if the user or process that is trying to access it has the sufficient privileges. [4]  Even though there are some new security concerns with the cloud, I think that it is overblown because many organizations would not be able to create a very secure environment for their data anyway.  I think the cloud providers have a great incentive to provide a secure environment.  If it is found out that their cloud is not secure, their customers will leave them.

Conclusion

As you can see, cloud computing isn’t something old repackaged in a new name.  It has many advantages that shouldn’t be ignored.  It can be a cheap way to get your application on the web and it could really make sense if you don’t want to have to worry about that part of the equation.  You are the professional developer and these guys know how to build a great datacenter.  Let the specialist do what he is best at.

References

[1] http://x-integrate.de/x-in-cms.nsf/id/DE_Von_Regenmachern_und_Wolkenbruechen_-_Impact_2009_Nachlese/$file/abovetheclouds.pdf

[2] http://www.developerforce.com/media/ForcedotcomBookLibrary/WP_Agile_112608.pdf

[3] http://pubs.0xff.ps/papers/racs-socc.pdf

[4] http://markus-jakobsson.com/papers/jakobsson-ccsw09.pdf

Comments»

No comments yet — be the first.

Leave a comment