Grid computing is a slightly more complex idea reflecting its specialised nature and is a subset of cloud computing. Grid computing consists of applying the resources of many computers, typically PCs or UNIX workstations plus multiple storage devices and redundant interconnections, which together form what seems to the users as a single highly available system. These are usually applied to a scientific/technical problem requiring vast numbers of computer processing cycles and/or access to large amounts of data in a network to a single problem at the same time. Grids are a form of distributed computing creating a “super virtual computer” composed of many networked loosely coupled computers acting together to perform large tasks.
At the risk of repetition, clustering computers; a technology in use since the 1980s consists of taking many computers and using a piece of clustering middleware making them act in concert so as to appear a single system. The difference between clustering and grid computing is that grids are more heterogeneous, loosely coupled, and geographically dispersed. Although a single grid can work on one application alone, a grid is usually used for a variety of purposes. Again this cluster appears to the user as a single machine that delivers very high levels of availability owing to the redundancy inherent in the use of many distributed machines.
One of the main advantages of grid computing is that it is a low cost method of facilitating parallel processing. This is where a program is divided into various instructions which are in turn sent to various processors simultaneously with the object of reducing time to complete the whole. These characteristics have advantages in resolving certain problems; in data mining for instance, there is a requirement for multiple searches of a static database. In artificial intelligence, there is the need to analyse multiple alternatives, such as in a chess game.
Grid computing appears promising for three reasons:
- The ability to make cost-effective use of a defined amount of computer resources.
- As a means of solving problems that can only be approached with an enormous amount of computing power.
- Grid computing suggests the resources of many computers may be cooperatively and even synergistically harnessed and managed collaboratively toward a common objective.
In some grid computing systems, computers may act collaboratively rather than being directed by one single computer acting as a manager. A likely field for grid computing is in pervasive computing applications; i.e. where computers pervade our environment without our immediate awareness.
A well-known example of grid computing in the public sphere is http://setiathome.berkeley.edu/ which is the SETI (Search for Extraterrestrial Intelligence) @Home project where thousands of people are sharing the unused processor cycles of their PCs in the vast search for signs of intelligent signals from outer space by analysing data from radio telescopes.