Feature comparison
The features of both schedulers have become similar over time. The current feature list and differences between the two schedulers is listed in the tables.
Supported Features
Feature List | Capacity Scheduler | Fair Scheduler | Comments | |
Queues | Hierarchical Queues | yes | yes | |
Elastic Queue Capacity for better resource sharing | yes | yes | ||
Percentage Based Resource Configuration in Queues | yes | yes | Percentages and absolute resources settings cannot be used simultaneous. | |
Auto Queue Creation | yes | yes | ||
User Mapping (user/group to queue mapping) | yes | yes | ||
CLI/REST API support to manage queues | yes | yes | ||
Move applications between queues | yes | yes | ||
Dynamic Queue creation/deletion/modification | yes | yes | ||
Reservation support in queues | yes | yes | ||
Authorization | Authorization control (ACLs in Queues for submit/manage/admin) | yes | yes | |
Third party ACL control (Ranger) | yes | yes | ||
Application Placement | Node Labels support | yes | no | |
Hive placement integration | yes | yes | ||
Node Attributes support | yes | no | ||
Placement constraints support | yes | no | Supported constraints are limited in the current implementation. | |
Node Locality | yes | yes | ||
Locality Delay control | yes | yes | ||
User limit quota management | yes | yes | ||
AM resource quota management | yes | yes | ||
Queue Priority | yes | no | Indirectly managed through queue weights. | |
Maximum and Minimum allocation limit per container unit | yes | yes | ||
Scheduling | Asynchronous scheduling support | yes | yes | Implementation differs between the schedulers and should not be treated as equivalent. |
Multiple resource types support (CPU, Memory, GPU, and so on) | yes | yes | ||
Queue Ordering Policies (Fair, FIFO, and so on) | yes | yes | ||
Multiple container assignments per heartbeat | yes | yes | ||
Preemption | Inter Queue preemption support | yes | yes | |
Intra Queue preemption support | yes | yes | ||
Reservation based preemption | yes | yes | ||
Queue Priority based preemption | yes | no | Queue weights are taken into account when preempting decisions are made. | |
Application Support |
First class Concept of application | yes | yes | |
Application priority | yes | yes | ||
Application timeout | yes | yes | ||
Moving Application across queues | yes | yes | ||
High Availability stateful application recovery | yes | yes |
Roadmap Features
Feature List | Capacity Scheduler | Fair Scheduler | Comments | |
Queues | Absolute Resource Configuration in Queues | yes | yes | Percentages and absolute resources settings cannot be usedsimultaneously. |
Application Placement | Maximum number of applications | no | yes | Indirectly managed through AM resource quotas. |
Scheduling | Application Size Based Fairness | no | yes |