Capacity Scheduler is designed to run Hadoop jobs in a shared, multi-tenant cluster in a friendly manner. Its main strength is that it guarantees specific capacity for a certain group of users by supporting multiple queues and allowing users to submit their queries into their dedicated queues.
Each queue is given a fraction of total cluster capacity — both RAM and CPU — ensuring that no single group monopolises resources. This makes Capacity Scheduler a practical choice for organisations where multiple teams or departments share the same Hadoop infrastructure.
How Queue Priority Works
Queue priority in the Capacity Scheduler is not a simple numeric ranking. Instead, it is implemented by assigning higher or lower capacity percentages to queues. A queue with a larger guaranteed capacity effectively receives higher priority when the cluster is under contention.
Administrators can also set a maximum percentage of cluster resources that each queue may consume. This cap prevents a high-priority queue from starving others even when demand spikes. Together, the guaranteed minimum and the configurable maximum create a balanced, predictable scheduling environment across the cluster.
Key Takeaways
- Capacity Scheduler guarantees specific capacity for groups of users via dedicated queues.
- Queue priority is expressed through capacity allocation — higher capacity means higher effective priority.
- Maximum resource percentages can be set per queue to prevent resource starvation.
- The scheduler is well-suited for multi-tenant Hadoop clusters where fairness and predictability matter.
The BI Palace