The Job Engine is based on a delegation hierarchy made up of coordinator, director, manager, and worker processes.
Figure 11. OneFS Job Engine distributed work allocation model
Note: Additional threads that are not illustrated in the figure relate to internal functions, such as communication between the various JE daemons, and collection of statistics. Also, with three jobs running simultaneously, each node would have three manager processes, each with its own number of worker threads.
Once the work is initially allocated, the Job Engine uses a shared work distribution model to process the work, and a unique Job ID identifies each job. When a job is launched, whether it is scheduled, started manually, or responding to a cluster event, the Job Engine spawns a child process from the isi_job_d daemon running on each node. This Job Engine daemon is also known as the parent process.