Cloud computing is an extension of parallel computing, grid computing and utility computing. It is distributed in nature hence it is a pool of independent resources which are distributed on remote locations. Cloud Computing has developed from distributed
computing and progressed through numerous stages. Although
many definitions are given for cloud computing however the definition given by National
Institute of Standards and Technology (NIST) is broadly accepted. "Cloud computing is a
model for enabling ubiquitous, convenient, on-demand network access to a shared pool of
configurable computing resources (e.g., networks, servers, storage, applications, and
services) that can be rapidly provisioned and released with minimal management effort or
service provider interaction".
Cloud computing is the result of improvement in numerous technologies including
hardware virtualization, multi-processor chips, distributed computing, autonomic
computing and datacenter automation. Grid computing allows aggregation of distributed
computing and storage resources and provides transparent access to these resources. Grid
computing mainly focuses on accelerating a wide variety of scientific applications
including climate modeling and protein analysis. But grid computing fails to deliver
resources with diverse software configuration. Virtualization technology is introduced to
overcome these drawbacks. Utility computing enables consumers to use services on payper-
use basis. Autonomic computing solves the problem of managing large datacenters by
performing various tasks including service level management of application, automation of
VM provisioning and hands-on disaster recovery.
Cloud computing appeared as the typical computational technology without the
need for the consumer to know the minute details of the implementation and functioning of
the network. It's gaining more and more attraction every day because of the unlimited
scalability and the capability to deliver the services instantly over the web. The beauty of
the cloud computing lies in the fact that system resources (i.e. storage, processing power
etc.) are available as and when consumer needs them and only need to pay for the usage.