Job Service
Architecture Overview
The Alluxio Job Service is a task scheduling framework responsible for assigning a number of different types of operations to Job Workers.
The Master is responsible for distributing a job into smaller tasks for the Job Workers to execute and managing the status of the job's completion.
The Job Workers queues tasks from the Job Master and manages a configurable fixed threadpool (alluxio.job.worker.threadpool.size
) to complete these tasks.
Different Types of Jobs
Migrate
Migrate Job is used as part of the fs distributedCp
CLI command and is responsible for copying with a specified WriteType.
Persist
Persist Job is used both indirectly as part of the fs persist
CLI command and background persisting when writing to Alluxio with ASYNC_THROUGH WriteType.
The job is responsible for persisting a file in Alluxio to a particular ufs path.
Evict
Evict Job is indirectly used by fs free
CLI command and replication background process.
The job is responsible for evicting a specified number of replicated blocks from Alluxio.
Move
Move Job is used by the replication background process to move blocks from one worker to another.
Replicate
Replicate job is used by the replication background process to replicate blocks from a worker to a specified number of other workers.
Inspection Commands
The job service provides a number of inspection commands.
fsadmin report jobservice
fsadmin report jobservice
will report a summary of the job service.
job ls
job ls
will list jobs that are running or have run on the job service.
job stat -v <job_id>
job stat -v <job_id>
will list detailed information about a job. (Adding -v includes information about the individual tasks on the workers)
Last updated