Computational grids have emerged as the next phase in distributed computing. They offer a degree of resource sharing that will surpass even the World Wide Web as they will not only change the way in which data is accessed but also how this data is produced, consumed and stored.
Grid computing aims to make all computing resources available constantly on a 24/7 basis. Many large corporations such as Boeing and Pratt & Whitney are currently using computational grids to improve their operations.
However future grids will allow an organisation to take advantage of computational grids without having to develop a custom in-house solution.
As commercial use of grid computing develops improved efficiency and reduced business costs will be a catalyst for economic expansion and business growth, benefiting industries across multiple sectors.
Grid computing is basically taking a number of inexpensive personal computers and connecting them via a network to build a supercomputer which can utilise the idle processing time on each machine to carry out tasks that would have previously required an expensive mainframe.
One comparison that is often used to describe a computational grid is that of the electrical grids responsible for providing electricity.
The notion is that computational grids will offer users the ability to simply plug into the network and make use of computing resources such as mass storage systems (MSS) and large processing capabilities which are available on a 24/7 basis.
Clients are able to access resources through a middle tier that routes information and implements various services.
What the grid offers
What a grid offers will vary depending upon the size of the implementation. However a common feature of all grids is the availability of massive parallel CPU capacity.
This has proved to be an attraction for fields such as bio-medical, financial modelling, oil exploration and movie special effects creation.
Although these examples come from different application domains the applications will all need algorithms that have been developed so that they can be partitioned into independently running components, a problem that has faced the developers of parallel computing applications for years.
Grid computing will provide a richer means for collaboration on a scale that surpasses those currently available with distributed computing.
With the grid these resources will be provided on a much larger scale and standard communication mechanisms will allow collaboration between heterogeneous environments.
With this mechanism for collaboration the user will have the ability to perceive the grid as a virtual super computer.
Virtual organisations will also play a key role in facilitating grid collaboration as they will allow groups of users to be assigned to a virtual organisation each of which can have various privileges applied to it.
Alongside under-utilised CPU cycles many system are also not making complete utilisation of storage. Therefore with the introduction of a grid the unused storage capacity of each node attached to the grid can be utilised in the same manner as idle CPU cycles.
This use of grid technology to share storage capacity has given rise to the term, 'data grid'. Data grids could be simply a matter of using available space on all the workstations attached to a cluster grid, or they could involve MSS attached to the grid.
One advantage of a data grid is the ability to replicate the data at various sites throughout the grid, therefore improving the reliability of it.
As all resources are connected via the grid the software can be developed in such away that it will automatically route jobs to parts of the grid which are under less pressure than others.
Alongside the processing and storage resources that a grid can make available additional resources such as dedicated hardware or specialised services which were only available to large well funded organisations can now be available to all.
Grid applications for business
Currently many of the applications developed to take advantage of computational grids have been designed for large commercial or research organisations. However there are now increasing applications being developed for the average consumer that take advantage of grid computing.
One such example of a company utilising the grid is a centuries old financial publishing firm, Bowne & Co.
In 2004, Bowne launched a modest production grid and as a result, the company has cut in half processing time for a key application that helps mutual fund customers meet financial reporting regulations (Joch, 2004).
Now, with the help of DataSynapse's LiveCluster distributed-computing software, reports that used to take two hours to complete are done in an hour, which is a significant reduction for a company that has to churn out hundreds of thousands of reports within production windows that might last only a few days.
Using the power of their internal company grid IBM have created a Microprocessor design grid which enables 80 per cent utilisation of resources for chip simulation, resulting in lower errors in microprocessor design and reducing the development cycle for chips (IBM, 2003).
Boeing has used grid clustering technology to help in the aerodynamics analysis of their new set of rockets. After 16 months the system was found to perform better than expected and may become the standard for developing rockets (Linux, 2001).
Butterfly.net and IBM (Butterfly, 2003) hope to use the advantages of grid computing combined with BladeCentres to improve the way in which users play network-based computer games on Playstation 2 consoles.
This is being hailed by many as potentially the first commercial use of grid technologies. The potential for online gaming is seen as the application that will potentially drive the demand for broadband internet connections in homes beyond its current market share. As a result Sony and Microsoft are set to battle for supremacy in the market.
Potential pitfalls for grid computing
However simply providing resources is not enough to ensure the success of a computational grid.
Access to these resources must be controlled, otherwise computational grids will simply evolve to become a victim of their own success, unable to offer a suitable quality of service (QoS) to any user.
Dan Bricklin wrote the essay 'The Cornucopia of the Commons' (Oram, 2001) in which he applied the same principles to the field of file-sharing.
In these essays he described a situation in which too many users were using a resource without contributing, such as downloading files without providing any of your own.
Such a scenario places excess burden on the system and eventually if enough users abuse the system in this manner the overall performance for everyone will degrade.
The same situation could easily arise with computational grids if companies were simply to consume resources without contributing any in return.
Some proposals for a 'points' based scheme in which users earn points by providing resources and can hence consume resources based upon the 'points' they have accumulated.
This scheme would be adequate if all points and users on the grid were equal and thus capable of providing the same volume of resources that they need to consume.
As every grid resource provider (GRP) will have various pricing mechanisms and each will offer slightly different resources, an organisation will therefore require an effective means of discovering available GRPs and constantly monitoring performance so that they can dynamically change the current GRP when performance falls below acceptable limits.
In addition, much grid software is still focused on jobs that require heavy computation, and it is not dedicated to discovering where or when to carry out a task which is one of the key requirements of real-time transactional environments.
It is also of little use in cases where a task requirement is all communication and no computation, or where an action is dependent upon the result of a previous one such as in CRM or accounting applications (Joch, 2004).
Conclusion
Getting the most out of IT investments is indeed a grid selling point as some large organisations might utilise less than 10 per cent of their available computing resources at any given time and by allocating idle processors across a network, grid middleware can focus resources during demand spikes and bring utilisation rates close to 90 per cent.
However, the benefits of grid environments go beyond reduced cost and total cost of ownership, directly impacting bottom line financials and increasing productivity.
Many of the early grid success stories have demonstrated the inherent business value of accelerating time to market, improving product quality, or improving collaboration within and between organisations.
Grid computing is no longer viewed as a speculative, high-risk proposition with vague benefits, but rather as a proven technology (Rosenberg, 2005).