[
https://issues.apache.org/jira/browse/MAPREDUCE-824?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
rahul k singh updated MAPREDUCE-824:
------------------------------------
Attachment: HADOOP-824-1.patch
Uploaded the patch:
Patch implements the model discussed above. This is first cut of the
implementation.
Some Class level details:
======================
The hierarchial queue follows composite pattern.
Component
----------------
AbstractQueue :
------------------------
- This is abstraction for all the queues.
- implements default behavior for some of the abstraction.
- declares interfaces to access the children and its components.
- defines an interface for accessing a queue's parent in the recursive
structure.
Composite
-----------------
ContainerQueue:
- This provides functionality mentioned as the part of Sub-Queues.
- consists of composition of AbstractQueue.
- provides functionality to manipulate children
- delegates respective children component calls.
Leaf
----------
JobQueue:
- This provides functionality similar to Leaf Queue mentioned in the document
above.
- Jobs would be submitted only to this queue.
- Consists of list of jobs and acts on the JobInProgressListener events.
JobQueuesManager no more maintains list of runningJob and waitingJobs , they
are maintained by JobQueue. It simply delegates
the call to JobQueue.
AbstractQueue have QueueSchedulingContext ,defined , it consists of all the
queue related information required for scheduling decision.
Some refactoring has been done in terms of moving out some of the inner classes
from CapacityTaskScheduler , esp the QueueSchedulingInfo and TaskSchedulingInfo.
I ll be uploading patch with testcases.
> Support a hierarchy of queues in the capacity scheduler
> -------------------------------------------------------
>
> Key: MAPREDUCE-824
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-824
> Project: Hadoop Map/Reduce
> Issue Type: New Feature
> Components: contrib/capacity-sched
> Reporter: Hemanth Yamijala
> Attachments: HADOOP-824-1.patch
>
>
> Currently in Capacity Scheduler, cluster capacity is divided among the queues
> based on the queue capacity. These queues typically represent an organization
> and the capacity of the queue represents the capacity the organization is
> entitled to. Most organizations are large and need to divide their capacity
> among sub-organizations they have. Or they may want to divide the capacity
> based on a category or type of jobs they run. This JIRA covers the
> requirements and other details to provide the above feature.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.