These days, not a single day goes by without talking, hearing or reading something about Cloud Computing. It appears, the whole cloud (I mean the world; don’t blame me for overusing the word ‘cloud’, I just want to make a point) is totally excited about ‘Cloud’ suddenly.
In a way, Cloud Computing is the new web2.0, in terms of hype, buzz and activity all around. Every business has something to offer ‘on cloud’. Every consultant is busy selling strategies to cash in on the cloud. And every analyst is preparing a report on the cloud. Every developer is trying to equip to engineer applications on the cloud.
Simply put ..
What is really Cloud computing is all about? Why not look up the definition of Cloud Computing by going to the Encyclopedia on the cloud (??), Wikipedia.
The term cloud is used as a metaphor for the Internet, based on how the Internet is depicted in computer network diagrams and is an abstraction of the underlying infrastructure it conceals. – Wikipedia
Though Cloud Computing could be everything for everybody (just like Web2.0), most stakeholders would agree to confine Cloud Computing in three forms.
Three Forms of Cloud Computing
1. Software-As-A-Service (SaaS)
Refers to Software Applications offered over the internet as a service. SalesForce.com is an excellent example and one of the most successful SaaS offerings. BaseCamp for Project Management, Google Apps are few other successful and well known SaaS offerings.
2. Infrastructure As A Service (IaaS)
Refers to Servers, Storage and Networks offered as a service over the internet. Most Internet hosting providers fall in to this space. Amazon ECS, Rackspace, AT&T, Akamai are very good examples. They offer servers, databases, storage area networks, networking gear, content delivery networks as a service.
3. Platform As A Service (PaaS)
These providers offer Infrastructure as a Service with a limitation or leverage (depends on what you are looking for) that all applications must be built and run on top of their often proprietary platforms or technology stacks. PaaS inherently include IaaS. Google App Engine, Microsoft Azure, SalesForce Force.com are fine examples for this service.
SaaS and IaaS have been offered in the market for a while. Though there are lots of advances in the technicalities of managing them and lot more new players in the market, these services are not entirely NEW.
What is new in Cloud Computing is the third service, Platform-As-A-Service (PaaS). Not only Infrastructure to run your Business applications but a full platform to develop those applications. It is quite unlikely that these PaaS offerings (at least initially) will not provide a smoother migration for Enterprises to adopt Cloud Computing as this means re-developing most of their business applications.
Easier Adoption Path for Enterprises
For most enterprises, the only option that make sense at this point is IaaS. Instead of running their own data centers, applications can be moved to a public Cloud or a private cloud or managed cloud with little to no impacts. Cost of migrating to a Cloud will be quite insignificant and offer the best level of cost savings, while not forcing a vendor lock-in as applications run on generic platforms. This is the best option.
Or Enterprises can migrate to SaaS offerings, if there are comparable applications are available. For instance, instead of running your own CRM solution on premises, can migrate to SalesForce.com. But it is a big question for how much generic application like SalesForce.com can offer unique capabilities for each organization, a primary reason why Enterprises developed their own software in the first place. Vendor + Application lock-in is implicit. All Employees and Customers need to be retrained in new sets of applications. Extensive customization is required.
The latest entry in to Cloud Computing, the PaaS is the most Unlikely path of migration of any Enterprise application to the cloud, as this needs re-architecture of their applications and Migration of application software as well along with data migration. And this would be quite expensive and time consuming for any non-trivial, uncommon business application. Vendor + Platform lock-in is implicit. Need to retrain Software Development groups and it could be quite extensive as the Platform could be significantly different from generic platform most software developers are comfortable with.
That’s my 2 cents on the Cloud. You can read a little more on the Wikipedia. Or anywhere on the Cloud (:-)).