What Cloud Computing and Grid Computing have in common is that they are both over-hyped buzzwords for particular subclasses and combinations of distributed computing and client server architectures, neither of which is especially new. Otherwise, they're different.
Cloud computing refers to a client server architecture where typically the servers (called "the cloud") reside remotely and are accessed via the internet, usually via a web browser. Applications like word processors that have traditionally run locally or on a server and accessed via a dumb terminal are instead run on the remote servers and accessed via a web browser. The same goes for services, such as file storage. Often, the servers are run by a third party and host a set of applications for a variety of clients. One example is Google Docs. Microsoft and Amazon have similar offerings, as do many others.
Grid computing refers to a distributed computing architecture where a set of networked computers ("the grid", typically PCs) are utilized en masse for large computational tasks, typically ones that are embarrassingly parallel. For example, a bank might use such a network to price all their holdings each night. From the point of view of the application doing the calculations, it's just submitting a large number of independent jobs to the grid, and receives the results back. The grid infrastructure handles forwarding each job to a computer, balancing loads, etc.
Where they intersect is that it's common to use a grid computing infrastructure to implement a cloud computing solution.
I wouldn't say grid is the backbone of cloud computing. It would be more accurate to say cluster computing is the backbone of cloud computing.
One of the essential differences between grid and cloud is that grid computing federates resources located within different organisations. Cloud computing is typically provided within a single organisation (e.g. Amazon), which simplifies many aspects, particularly security, availability and heterogeneity.
People are now looking at how to federate clouds from different providers, and finding that the solutions developed in grid computing are relevant.
What Cloud Computing and Grid Computing have in common is that they are both over-hyped buzzwords for particular subclasses and combinations of distributed computing and client server architectures, neither of which is especially new. Otherwise, they're different.
Cloud computing refers to a client server architecture where typically the servers (called "the cloud") reside remotely and are accessed via the internet, usually via a web browser. Applications like word processors that have traditionally run locally or on a server and accessed via a dumb terminal are instead run on the remote servers and accessed via a web browser. The same goes for services, such as file storage. Often, the servers are run by a third party and host a set of applications for a variety of clients. One example is Google Docs. Microsoft and Amazon have similar offerings, as do many others.
Grid computing refers to a distributed computing architecture where a set of networked computers ("the grid", typically PCs) are utilized en masse for large computational tasks, typically ones that are embarrassingly parallel. For example, a bank might use such a network to price all their holdings each night. From the point of view of the application doing the calculations, it's just submitting a large number of independent jobs to the grid, and receives the results back. The grid infrastructure handles forwarding each job to a computer, balancing loads, etc.
Where they intersect is that it's common to use a grid computing infrastructure to implement a cloud computing solution.
Both are different technologies, grid computing does not offer the services as Cloud computing offers. The idea of grid computing was derived from electric poles while the cloud idea is entirely different as it is base on pay as per us like utility computing.
You can find a better explanation from the book " Distributed and Cloud Computing: from Parallel Processing to the Internet of Things by Kai Hwang, G C. Fox and J J Dongarra from MORGAN KAUFMANN
Cloud Computing and Grid Computing go together. Maybe some well installed it without realizing. Are connected via two networks, perhaps one higher capacity and speed than the other.
In a Client Server environment, such as the Internet, cloud computing services are broadcast or published on the public computer network, they access their "clients". A private network of Grid Computing, the servers that require access to data and calculations using specific software requirements.
Specific differences: the Grid Computing receives sorted by software requirements (data storage, calculation scripting) servers that have connected to this network of super high speed. The software running on Grid Computing is not the same as in Cloud Computing. Cloud computing is the part of the mesh that "penalties that kick saves customers", and does so with specific software.
Grid computing is local setup inside any organisation(s), while in cloud computing, one can use the resources which may or may not belong to that organisations.
The notion of Cloud is linked to the notion of services. A Cloud offers services to a user (applications, data storage, ...) through the Internet. The idea is that the user does not have any idea of where its data is stored, or where the applications are ran. This must be highly transparent for him. The key idea behind this, is that the user can access and work on its data from any computer connected to the Internet. A Cloud service, could be implemented on a single big server, even if it would not be efficient in terms of fault tolerance or load balancing. There is no obligation to implement a Cloud service above a distributed infrastructure.
A grid, is basically a set of clusters that put their resources together in order to offer more computing power, more storage capacity, etc... A grid can perfectly be a set of clusters that belong to the same organization, even if in practice this is rarely the case (the idea is to get more computing resources that you cannot afford alone).
In practice, a Cloud service will be implemented at least on a cluster, and very often on a grid. The use of a cluster allows to improve the fault tolerance of the Cloud service that does not rely anymore on a single server, and it obviously improves the load balancing, and therefore the response time for the end user. The most interesting thing when you implement a Cloud service on a grid is that you further improve the load balancing, allowing the access to the cloud from anywhere on the Internet, and distribute the load to each cluster that form the grid according to the localization of the user. For example its continental geo-localization.
I think Xavier is partially correct and Jonathan is partly correct. Cloud does refer to services-at-a-cost and does involve Distributed Computing and services environments. But I do not believe that cloud and cluster are directly related. Clouds use a distributed model for data, services and hardware. Clusters are more homogeneous with regard to communications among nodes, architecture, hardware and purpose. The SETI Program is illustrative as a cloud model.
There is very common and simple difference between Cloud and Grid :
Cloud computing eliminates the costs and complexity of buying, configuring, and managing the hardware and software needed to build and deploy applications, these applications are delivered as a service over the Internet, while Grid computing is a form of distributed computing whereby resources of two or many computers in a network is used at the same time, to solve a single problem. Grid systems are basically designed for the collaboration of sharing resources.
To understand the differences you need a little bit of understanding operating system concept and computer hardware architecture in addition to aware of internet applications. Grid computing is the base concept of cloud computing. Grid computing is a form of distributed computing share CPUs, data buses and RAMs and storages through network infrastructure LAN or WAN. This used to solve complex computation problems. However, cloud computing is high speed TCP/IP based network. It is high performance and reliable system architecture with big memory and fast CPUs. The cloud offer services through the internet scaled for small to large companies. These services are divided into three categories. Infrastructure-as-a services (IaaS), platform- as-a- services (PaaS) and software-as-a-services (PaaS). Cloud computing is heterogeneous computing environment different services and application connected through computer networks (internet) to achieve high speed computational.
Although cloud and grid computing have much in common, but they remain two different concepts. The major difference between cloud computing and grid computing is in the architecture (modus-operandi). Cloud computing divides large tasks into chunks (small portions), disburse these portions across many machines for simultaneous processing, as well as then gather all of it. Grid computing uses the best resource available from the pool without breaking up tasks. Local resources undertake the processing at the grid site, and also wait in queue for access to the resource. In clouds, the location of the processing center remain hidden, but in grids this is transparent, and also users even have the option of selecting the location based on the list of available resources. Grids mainly operate in a project-oriented model, to address large-scale computing problems where Clouds mainly address internet-scale computing problems. Cloud computing and grid computing are not mutually exclusive, and also many organizations use both together to speed up tasks. For instance, organizations use grid computing when, select the best available resource to perform a task, but use cloud computing to execute the task faster using the different devices available within such resource.