November 16, 2012 | Written by: Maciej Sztukiewicz
Share this post:
Dear readers – welcome again. I hope my articles about desktop cloud and related users scenarios didn’t bore you to death and you are still in shape to digest my coming brain-leaks.
As time passes we can observe changes in IT trends. One buzz word is replaced by others while underlying ideas are pretty much the same. Sometimes, however we can experience real paradigm shifts with a long-term effect on the industry and I think grid and cloud concepts are such milestones. So, let’s compare these approaches already exciting IT public and forming catchy subjects for IT managers having to convert deserts of new ideas into vivid presentations for their customers and stakeholders.
Being a la mode some years ago meant that you are discussing the grid concept in the cafeteria while your desktop was running grid screensaver software searching for alien civilizations that were desperately seeking contact with humans.
Grid can be seen as a collection of computer resources from multiple administrative domains combined to reach a common goal. The key idea is that each processing node in a grid can be purchased as commodity hardware and all these nodes together can provide processing power that can be compared to supercomputers but with a much lower price tag. Grid is a good choice for applications that can be decomposed into multiple parallel computations that can take place independently without a need to pass intermediate results between threads. This is because the grid nodes are not connected with high-speed connections. This is a contrast to supercomputers that have many processors connected with local high-speed buses.
Grid is greedy – demand for large scale scientific applications required more and more computing power, more than machines located in a single department could provide. Thanks to the internet, distributed machines could be spanned using standard protocols and used to work on the same set of tasks. The term grid came from the electrical engineering field – an electrical power grid recapping its characteristics such as scalability and reliability.
One of interesting grid ideas is CPU scavenging, also called cycle stealing, in which partially unused shared IT resources are joined together to perform processing tasks for grid organization. The popular approach is to use PC or laptop CPU cycles that would be wasted otherwise – like the screensaver approach.
Cloud is a different kind of a beast. Common definitions vary but general understanding is that it’s all about remote provisioning of virtualized IT resources with dedicated self-service portal and automation. As almost every “new” concept it is in fact a merge of old ideas such as utility computing, software as a service, central data centers with additional layers of automation and billing mechanisms.
So how can we compare grid and cloud ideas? What do they have in common? What is fundamentally different? Let’s go through different aspects and compare.
Control and management
Grid is highly decentralized and usually managed by virtual organizations being a collection of organizational bodies such as institutes, universities grouped around a common goal. Cloud is going a step back being data-center centric, looking for economies of scale and controlled typically by one provider.
Grid tends to rely on public funding with several organized sponsors investing in it and sharing access to it. Cloud initiatives are well-thought business vehicles with advanced “pay-as-you-go” charging mechanisms.
Cloud’s primary idea is to facilitate entry to new technology as much as possible with no initial investment required and monthly payments for used resources only. Grid initial investment can be high with necessity of participation in virtual organization funding, training people to use specific grid tools and middleware, writing applications for grid and running grid deployments.
Grid applications are usually batch oriented while cloud apps are usually based on interactive on-line programs with web front-end.
Virtualization is a key approach for the cloud – sharing the hardware resource among a pool of virtual machines makes the solution cost effective, standardized and easier to manage. Grid virtualization is still a song of the future.
Switching between providers
If grid solution is based on industry accepted standard the switch to new platform should be relatively easy and should not cost a fortune. A quite opposite situation exists in a cloud world when solutions are proprietary and lack of common standard is visible. This can change when cloud brokers enter the market but we will wait for this for a while.
Appropriately designed service levels are a real basis for customer-provider relationship in enterprise cloud world. They are not so popular in the grid industry where cooperation of organizational entities around a common goal is dominant and relationships are often not fully formalized.
My view is that while cloud is a “buzz” today, the grid concept seems more modern and advanced to me with its characteristics such as highly distributed processing, spreading application workloads, openness and high level of abstraction from local resources. Cloud is a step-back approach to data-center oriented processing with clear advancements in business models and automation. As such grid suffered from underestimating the business side and charging models that could facilitate its adoption in business world and increase funding. On the other hand which business cloud customer would turn into grid potentially asking himself a question “where is my data today?” Especially that compliance topic has such focus nowadays. Tomorrow’s world will be different. Such as cloud appeared on the top of old concepts it is quite possible that grid ideas equipped with better business models and advanced automation will conquer future IT market under new catchy name. We will see.
The future? Maybe convergence of both – grid computing and cloud worlds with cloud’s automation and charging model and grid’s ability to decompose workloads into multiple nodes exceeding organization boundaries. Imagine your future SAP system stealing the idle CPU cycles from desktops and laptops of people working in your organization. In theory, with appropriate effect of scale you could even get rid of dedicated hardware boxes for SAP that could be an ultimate IT seller nightmare. Another idea – why not build powerful grids stealing processor cycles from smartphones and tablets becoming more and more powerful with their multiple cores? Time will tell.
If you find this comparison interesting and see some other similarities/differences related to grid and cloud, please share your comments under this post. I am really looking for feedback from you. Thanks a lot!