What is a Grid?
A grid is a collection of machines (also called nodes, resources, hosts, or engines) that contribute resources to work together as a unified system.
Types of Resources in a Grid
1. Computation The most common resource. Processors across machines handle computing tasks in three main ways — running existing apps remotely, splitting work to run in parallel, or running the same app many times across multiple machines. Scalability measures how efficiently this is done.
2. Storage The second most common resource. Includes fast but temporary memory (RAM) and permanent secondary storage (hard drives). Grid file systems unify storage across machines, and techniques like data striping improve speed, while journaling improves reliability.
3. Communications Network bandwidth is critical — both within the grid (moving jobs and data internally) and externally (e.g., internet access). Redundant paths handle failures and heavy traffic.
4. Software & Licenses Expensive software doesn't need to be on every machine. Jobs are sent only to machines where the software is installed, saving costs. License management software controls how many copies run simultaneously.
5. Special Equipment & Policies Different machines have different architectures, operating systems, and policies. Admins can create custom resource types (e.g., "medical research only") to control which jobs run where.
Jobs and Applications
- An application is the highest-level unit of work, made up of one or more jobs.
- Jobs can break down further into subjobs.
- Jobs may depend on each other (one job needs another's output before it can start), creating a workflow hierarchy.
Scheduling, Reservation & Scavenging
These three methods manage how grid resources are allocated:
- Scheduling — automatically finds the best available machine for each job.
- Scavenging — uses idle machines; grid jobs pause if the machine's owner needs it back.
- Reservation — books resources in advance (like reserving a meeting room) to meet deadlines and guarantee quality of service.
All three can be combined for maximum efficiency.
Grid Topologies (Intragrid vs. Intergrid)
Grids grow in size and complexity:
- Small/Homogeneous grid — few machines, same hardware/OS, one department. Simple, sometimes called a cluster.
- Intragrid — heterogeneous machines, multiple departments within one organization. Requires scheduling, file sharing, and some security.
- Intergrid — crosses organizational boundaries, used for collaboration. Requires the highest levels of security and can involve resource trading/brokering.