Unit 2 introduced the fundamental concepts of grid computing and explained how different components of a grid system work together. From this unit, I learned that a grid is a collection of interconnected machines (nodes) that share various types of resources such as computation power, storage, communication capacity, software, and specialized equipment.
Key Resources in a Grid
The most important resource in a grid is computation. Machines contribute processor power (CPU cycles) and applications can use these resources in three main ways:
- Running a program remotely instead of locally.
- Splitting a program into parallel tasks that run on multiple machines.
- Executing the same program many times on different machines.
A critical concept here is scalability, which measures how effectively additional processors reduce execution time. However, scalability can be limited by task dependencies and communication overhead.
The second major resource is storage. In a data grid, storage from multiple machines is combined to increase capacity and performance. Grid file systems allow data to be shared across machines using a unified namespace. Techniques such as data striping distribute data across multiple storage devices to improve speed. Additionally, journaling and synchronization mechanisms improve reliability and data integrity.
Communication is another essential resource. Jobs and data must move efficiently between machines. Network bandwidth, redundancy, and topology directly affect performance. Poor communication can create bottlenecks that limit the grid’s effectiveness.
The grid may also manage software and licenses. Expensive applications may only be installed on certain machines. The scheduler must consider license limits and ensure that only allowed numbers of software instances run simultaneously.
Finally, grids must handle differences in architecture, operating systems, policies, and security requirements. Administrators may define special resource categories to enforce policies, such as restricting certain machines to specific types of research.
In a grid environment, resources are accessed through jobs. An application may consist of multiple jobs, and each job may have sub jobs. Some jobs can run in parallel, while others depend on the results of previous tasks. After execution, results from all jobs must be collected and assembled into a final output.
Scheduling, Reservation, and Scavenging
The grid system assigns jobs to machines using a scheduler (or resource broker). Scheduling decisions are based on resource availability, policies and job requirements.
- Scavenging allows idle machines to run grid jobs without interrupting their primary users. If the machine becomes busy, the grid job is paused.
- Reservation allows resources to be booked in advance to guarantee quality of service and meet deadlines.
Optimal scheduling is complex and often relies on heuristic methods to improve performance and resource utilization.
Grid Structures: Intragrid and Intergrid
Grids can range from small homogeneous clusters within one department to large systems spanning multiple organizations and countries.
- A small, homogeneous grid is often similar to a cluster.
- An intragrid connects heterogeneous systems within one organization.
- An intergrid connects multiple organizations and requires stronger security, policy enforcement, and hierarchical management.
As grids expand, security, communication reliability, and management complexity increase
Overall Understanding
From this unit, I learned that grid computing is not simply about connecting computers. It is about efficiently managing diverse resources, coordinating jobs, enforcing policies and ensuring scalability and reliability. The interaction between computation, storage, communication, scheduling and management software determines how effectively a grid operates.
This unit strengthened my understanding of key grid terminology and gave me the ability to explain how grid components work together in practical scenarios.