Overview of Grid Management

Most organizations that use SAS consist of a variety of categories of users, with each category having its own needs and expectations. For example, your organization might have these users:
SAS Enterprise Guide users
these users are usually running interactive programs, and expect immediate results.
SAS Enterprise Miner users
these users might be using multiple machines to train models.
SAS Web Report Studio users
these users might be scheduling reports to run at a specified time.
SAS Risk Dimensions users
these users might be running jobs at night.
Some users in your environment might be running jobs that have a high priority. Other users might be running jobs that require a large number of computing resources. A SAS grid environment must be able to account for all of these different needs, priorities, and workloads.
In order to manage this type of environment, you must be able to control when and where jobs can run in the grid. If your grid environment uses Platform Suite for SAS, you can manage competing priorities and workloads three ways:
  • Job slots. They let you control how many jobs can run concurrently on each machine in the grid. This enables you to tune the load that each machine in the grid can accept. For example, you can assign a higher number of job slots to higher-capacity machines, which specifies that those machines can process more jobs concurrently.
  • Queues. They let you control when jobs can run and what computing resources are available to each job that is submitted to the queue. You can create queues based on factors such as job size or priority. You can also define job dispatch windows and run windows for each queue. When you submit a job to a particular queue, the queue settings determine when the job runs and what priority the job has compared to other jobs that have been submitted to the grid. You can also specify the number of job slots across the grid that a queue can use. By combining the job-slot specification on the hosts and queues, you can specify how work is distributed across the grid.
  • Partitions. They let you specify where jobs are run on the grid. Partitions are defined and used by specifying resource names on hosts and using matching resource names on jobs. The resource names are specified on machines in the grid to indicate what type of job each machine should run. When you submit jobs to the grid, you can specify resource names to specify which machines should be used to process the job.