Cloud computing and grid computing almost have the same vision of providing services to the users through sharing capabilities and resources. Although the terms are differentiated based on application focus, architecture, resource usage patterns, number of services, interoperability, business models etcetera.
Cloud computing banish the need of buying the hardware and software which requires complex configuration and costly maintenance for building and deploying applications instead it delivers it as a service over the internet. On the other hand, in grid computing, a cluster of computers work together to solve a massive problem by splitting it into several small units which are distributed over computers (part of a grid).
In Cloud computing, the resources are centrally managed whereas in grid computing resources are distributed where each site has its own administrative control.
Content: Cloud computing Vs Grid computing
|Basis for comparison||Cloud computing||Grid computing|
|Application focus||business and web-based applications.||Collaborative purposes.|
|Architecture used||Client-server||Distributed computing|
|Business model||Pay per use||No defined business model|
|Accessibility of services||High because it is real-time||Low because of scheduled services.|
|Programming models||Eucalyptus, Open Nebula, Open stack etc, for Iaas but no middleware exists.||Different middlewares are available such as Globus gLite, Unicore, etc.|
|Resource usage patterns||Centralized manner||Collaborative manner|
|Interoperability||Vendor lock-in and integration are some issues||Easily deals with interoperability between providers.|
Definition of Cloud computing
Cloud computing is a modern computing paradigm which provides scalable and flexible IT infrastructure and essential services to the users through the internet. It enables omnipresent, convenient, on-demand network access to a shared pool of configurable computing resources such as networks, storage, servers, application, and services that can be immediately served as well as released with minimal management effort.
It follows client-server architecture. Its billing method is effective where a user needs to pay according to the use or can be called as metered billing. The concept of virtualization is used in cloud, and it also uses a hypervisor (VM) through which user can run multiple operating systems.
Services offered by cloud :
- Saas (Software as a service) – This service provides the complete product applications to the users hence eliminating the needs of the underlying services where the user need not to worry about hardware and platforms for the generation of the final product. Even the updation, licensing and maintenance is done by the service provider. For example, Google Apps, Salesforce etc.
- Paas (Platform as a service) – These types of service emphasizes on providing a high-level integrated environment to design, build, test and deploy an online custom application, eliminating the need of Iaas for the users. For example, Google’s App Engine, Microsoft Azure provides Paas services.
- Iaas (Infrastructure as a service) – This service provides computing resources on virtual or dedicated hardware, the services offered by Iaas are network, disk storage, processing power, etc. AWS, Eucalyptus, Open stack and Flexiscale are some of the Iaas providers.
There are four types of cloud deployment models which are – public cloud, private cloud, community cloud and hybrid cloud.
Definition of Grid computing
Grid computing serves computing resources such as network, server, applications to the individual users. Grid involves the loosely coupled systems in which jobs are managed and scheduled in a distributed way. It divides a massive job in smaller chunks and processes those chunks separately. Grid computing is a combination of non-centralized computing resources where each geographically separate, independent site has its own administrative control over it.
In grid computing, the resources are reserved that is the reason it is not flexible and scalable as cloud computing. It follows distributed architecture. Grid computing projects do not have any time dependency associated with them, and it uses hardware present in the grid and which are in idle state.
Key Differences Between Cloud computing and Grid computing
- The applications build on the cloud are business specific applications such as web-based application typically used by thin clients or for handheld devices. On the other hand, Grid focuses on the research-based application with the help of distributed independent administrative units working altogether for solving a larger computing problem.
- Cloud uses client-server architecture, in contrast, grid uses distributed computing architecture.
- The cloud computing infrastructure is operated by a centralized management whereas in grid computing there is a decentralized management system where different sites are spread globally, and each site has an independent administration.
- The cloud users pay as they use (i.e., utility pricing or metered billing), where a user doesn’t have to pay as he/she releases the resources. As against, there is no defined business model in grid computing.
- Services on the cloud are highly flexible and real time and it can scale up rapidly. On the contrast, the grid provides scheduled services with low flexibility.
- Grid infrastructure can deal with interoperability with ease whereas cloud doesn’t support interoperability and can lead to vendor lock-in, which makes it difficult to migrate from one cloud service provider to another.
- Resources can be pooled in a centralized or seldom in a decentralized manner in Cloud computing. On the other hand, resources are used in a decentralised manner in grid computing.
- In grid infrastructure, the resources are limited while in the cloud there is a magnificent pool of resources. Grids can be made using cloud infrastructure.
Cloud computing is emerging technology and is a successor of Grid computing. Cloud computing provides real-time user-friendly services on a dedicated, high bandwidth internet connection and unlimited resources but its main disadvantage is that it needs a high-speed internet connection. Grids are heterogeneous, more loosely coupled and geographically distributed and better than traditional clusters. Although security could be a major issue while using grid computing.