Tuesday, February 10, 2009

Understanding Cloud Computing

Now a days a cloud computing can be hear every where. But actually what is the cloud computing. Why such name ?

If we open any book and find the diagram depicting the Internet its always a cloud so the term cloud is used as a metaphor for the Internet. It is abstraction of the complex infrastructure of the Internet. But we don't care much about what that cloud contains or what it have. We know its used for sending and receiving data. So cloud is internet.

Now a days we use web application for almost all the tasks. Take an example of gmail,yahoo or any other web mail . What we do their ? We open the page give our login information. Data is retrieved from the server. So the client part is doing almost nothing in this case. A simple but powerful example of Cloud Computing. In this case we can say, We open web mail enter credential details and the cloud takes care of the rest. So a great workload shift from client.

Cloud is nothing but various computers, servers , data storage etc... In general term anything that involves delivering hosted service over the internet is cloud computing. These services can be divided in three categories:
1. IaaS - Infrastructure-as-a-service
2. PaaS - Platform-as-a-service
3. SaaS - Software-as-as-service

Infrastructure-as-a-Service like Amazon Web Services provides virtual server instances with unique IP addresses and blocks of storage on demand.

Platform-as-a-service in the cloud is defined as a set of software and product development tools hosted on the provider's infrastructure. Developers create applications on the provider's platform over the Internet. PaaS providers may use APIs, website portals or gateway software installed on the customer's computer. GoogleApps are examples of PaaS. Developers need to know that currently, there are not standards for interoperability or data portability in the cloud. Some providers will not allow software created by their customers to be moved off the provider's platform.

In the software-as-a-service cloud model, the vendor supplies the hardware infrastructure, the software product and interacts with the user through a front-end portal. SaaS is a very broad market. Services can be anything from Web-based email to inventory control and database processing. Because the service provider hosts both the application and the data, the end user is free to use the service from anywhere.

Again a cloud can be public, private or hybrid. Eg: Public Cloud - Amazon Web Service. So public clouds sells a service to everyone on the internet. Private coluds is a proprietary network that supplies hosted services. Hybrid cloud consist of many internal / external providers.

So main goal of cloud computing is to provide easy, scalable access to computing resources.

Key Features as described on wiki are :
- Agility
- Device and location independence
- Multi - tenancy
- Reliability
- Scalability
- Security
- Sustainability

Why cloud computing ?

- Cost cutting on client hardware side
- Clients can access data anytime anywhere.(In n/w)
- No need to buy for each user/employee.
- Storng data on someone else PC no client storage
- Less hardware issues at client side

Useful links
1. http://en.wikipedia.org/wiki/Cloud_computing