Introduction
The term “cluster computing” and “grid computing” are used interchangeably when describing networked computers designed to run distributed applications in order to share resources. However, they are used to in describing the varied set of distributed computing with ambiguous solutions. Both cluster and grid computing are used simultaneously to improve the performance of the application. The both help in sharing available resources such as printers, scanners and speakers (Dongarra et al., 2004). Nonetheless, grid and cluster computing have different approaches in problem solving since they differ in terms of their infrastructure and technologies. Grid and cluster computing can be run concurrently on the same network where cluster is used to contribute some resources to a grid (Kaur et al., 2014).
One unique thing with both grid and cluster computing are rooted on UNIX operating system. Since the operating system is evolving, more of such operating systems are adapted by grid and cluster for use. This study focusses on cluster and grid computing with respect to windows operating system and how grid and cluster computing complement each other (Dongarra et al., 2004). Computers are represented by nodes located on the cluster network and are tightly coupled to each other on the same subnet domain. Many at times, the nodes are homogenous and each one of them is a dedicated resource within a cluster. Message passing interface in a cluster is an advantage because it provides an interface for programming allowing distributed applications to communicate to each other (Kuzmin, 2003). It also enables clusters to work more efficiently in solving short task problems and tasks that depend on previous ones. In contrast, the computers on grid inform of nodes are loosely coupled and sometimes exist on the same domain since they are heterogeneous.
Cluster Computing on Widows
Windows cluster server 2003 provides cluster computing on windows from Microsoft. It is a 64 bit windows server version packaged with several software components in order to ease cluster computing management. It literately removes obstacles imposed from other solutions by enabling users to integrate well with other existing windows infrastructures such as SQL server and Active Directory. The figure 1.0 below shows cluster architecture.
Figure 1.0 Cluster Architecture
The overall speed of any given network technology depends largely on latency and bandwidth, meaning latency is the time taken by network device to completely process a data frame while the bandwidth is the amount of information processed at a particular time (Dongarra et al., 2004). Therefore cluster architecture is optimized by high performance computing where it comprises of a cluster of servers that includes a single head node as shown in figure 1.2 below.
Figure 1.2 Cluster topology
Grid Computing on Windows
Grid computing provides solutions through a digipede network. It allows developers to create grid-enabled applications since it comprises of a server and several agent nodes used in executing the distributed work (Kahanwal et al., 2012). Digipede server is used in maintaining prioritized queue and job requests to be done and monitoring the results. It is always installed on every compute node in order to initiate what kind of job can be processed at a particular time (Kaur et al., 2014). The figure2.0 below shows the grid architecture.
Figure 2.0 Grid architecture
Grid computing is considered as a single computational resource managed by software referred to as grid middleware. Thousands of jobs can be submitted by users at the same time based on resource management policies (Kalaiselvan, 2011). It is possible to scale the grid from single systems to supper computers that utilizes thousands of processors depending on the type of application. Digipede servers execute the jobs such as .NET object, scripts and other executable tasks.
The Digipede network supports both traditional and graphical user interface where jobs that involve command-line applications can be submitted and defined using Digipede workbench. The figure 2.2 below shows Grid network topology works (Kalaiselvan, 2011).
Figure2.2. Digipede Network topology
Grid networks provide scalable, high performance mechanisms, access to remote resources, secure and reliable network topology.
Grid or Cluster Computing Working together
Grid and cluster computing when coupled together are able to solve problems associated with performance. Each class of applications is flexible and has true power of distributed computing (Kaur et al., 2014). Grid network application can take advantage of the power produced when cluster node is used more so when it is in the idle state. Most companies prefer using grid and cluster as one because they are able to offload jobs from the cluster onto the grid making it a possibility to free cluster and create space for jobs that requires features associated with the cluster network (Kahanwal et al., 2012). Grid computers tend to be geographically dispersed and more heterogeneous than cluster computers. Super virtual computers is composed of loosely coupled computers that act together in order to perform huge tasks. Problems such as protein folding, earthquake simulation, climate modeling and financial modeling are solved by use of grid computing (Dongarra et al., 2004).
Limitations of using Grid or Cluster high performance computing
Grid standards and software are in the process of evolving therefore they are not stable (Bell et al., 2002). With grid computing, high internet connection is required since gathering all the resources across the geographical sites prompting designers to incur higher costs while doing the implementation. It is a must to have different administrator domains therefore because of the political challenges and managing different environments such as opsware and cfengine.
On the other hand, the limitations of using cluster computing include programmability issues where different components are dissimilar in terms of software making it difficult to bring then into a single entity (Kuzmin, 2003). It is difficult to be understood by laymen since there are different emergence different components that are programmability and could be difficult to manage and finally, it’s not easy to troubleshoot in case a problem occurs within the system.
Storage for Grid and Cluster computing
With grid computing, Virtual servers are used making it to have virtual storage devices that can be accessed from anywhere (Dongarra et al., 2004). Data security is assured when using grid computing since both the local hard drive and virtual server provides storage platforms that can store very large information at a particular time with their back-ups (Kuzmin, 2003). For Cluster computing, the host machine is used in facilitating storage of data takes place on the hard drive. However, users are allowed to store their data in their local machines, the backup are taken and stored on the virtual server for easy access more so when cluster and grid computing work together. Shared storage devices are also implored for information sharing and learning experience from users connected into the grid or cluster (Dongarra et al., 2004).
Conclusion
With the increase in technology across the world, virtual servers are being used with grid computing being on focus. However, challenges such as the cost of implementation are put into consideration and thus many developers adopting cloud computing rather than cluster and grid computing. In this way, implementation cost becomes a past tense (Dongarra et al., 2004). Portability issues, availability, scalability and security are the greatest concerns in the world of technology where companies and individuals perform transactions through the internet. Cluster computers can be used concurrently with grid computers to facilitate data processing and sharing across the networks without many problems. Currently, software developers are working on the developments of suitable parallel problem solving classes by using algorithms associated with an already existing computing designs and architectures in order to make data processing, storage and transfer much simpler to understand and use (Kahanwal et al., 2012). However, cluster computing is more scalable than grid computing making it an easier implementation platform that can be used by developers. It is also much easier to integrate cluster computers to the grid computers where laptops, desktops, PDAs are used to access the network. Most companies have found out that with cluster computing, there are a backlog job requests making it a necessity to adopt grid to ease the backlog of jobs (Dongarra et al., 2004). With the developments made so far in developing cloud computing, many companies have resorted to adopting cloud computing rather than both cluster and grid computing.
References
Bell, G., Gray, J. (2002). What’s next in High-performance computing? Available at: <http://research.microsoft.com/en-us/um/people/gbell/supers/cacm_what%27s_next_in_hpc_bell_and_gray 0202.pdf>
Dongarra, J., Lastovetsky, A. (2004). An overview of heterogeneous high performance and grid computing. Available at: <http://www.netlib.org/utk/people/JackDongarra/PAPERS/hetero-dist-survey-2004.pdf>
Kahanwal, B., Singh, T.P. (2012). The Distributed Computing Paradigms: P2P, Grid, Cluster, Cloud, and Jungle. Available at: <http://arxiv.org/ftp/arxiv/papers/1311/1311.3070.pdf>
Kalaiselvan, K. (2011). Cluster, Grid, Cloud-Concepts. Available at: <http://www.garudaindia.in/html/pdf/ggoa_2011/Day%201/cluster_grid_cloud_concepts.pdf>
Kaur, K., Rai, A.K. (2014). A Comparative Analysis: Grid, Cluster and Cloud Computing. Available at: <http://www.ijarcce.com/upload/2014/march/IJARCCE9B an anjan A Comparative Analysis Grid Cluster and Cloud Computing.pdf>
Kuzmin, A. (2003). Cluster approach to high Performance computing. Available at: <http://www1.cfi.lu.lv/teor/pdf/LASC_short.pdf>