hadoop-mapreduce-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Arun C Murthy (Updated) (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (MAPREDUCE-279) Map-Reduce 2.0
Date Tue, 18 Oct 2011 06:30:19 GMT

     [ https://issues.apache.org/jira/browse/MAPREDUCE-279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Arun C Murthy updated MAPREDUCE-279:

Re-factor MapReduce into a generic resource scheduler and a per-job, user-defined component
that manages the application execution.

Re-factor MapReduce into a generic resource scheduler and a per-job, user-defined component
that manages the application execution.

Check it out by following [the instructions|http://goo.gl/rSJJC].

    Release Note: 
MapReduce has undergone a complete re-haul in hadoop-0.23 and we now have, what we call, MapReduce
2.0 (MRv2).

The fundamental idea of MRv2 is to split up the two major functionalities of the JobTracker,
resource management and job scheduling/monitoring, into separate daemons. The idea is to have
a global ResourceManager (RM) and per-application ApplicationMaster (AM).  An application
is either a single job in the classical sense of Map-Reduce jobs or a DAG of jobs. The ResourceManager
and per-node slave, the NodeManager (NM), form the data-computation framework. The ResourceManager
is the ultimate authority that arbitrates resources among all the applications in the system.
The per-application ApplicationMaster is, in effect, a framework specific library and is tasked
with negotiating resources from the ResourceManager and working with the NodeManager(s) to
execute and monitor the tasks.

The ResourceManager has two main components:
* Scheduler (S)
* ApplicationsManager (ASM)

The Scheduler is responsible for allocating resources to the various running applications
subject to familiar constraints of capacities, queues etc. The Scheduler is pure scheduler
in the sense that it performs no monitoring or tracking of status for the application. Also,
it offers no guarantees on restarting failed tasks either due to application failure or hardware
failures. The Scheduler performs its scheduling function based the resource requirements of
the applications; it does so based on the abstract notion of a Resource Container which incorporates
elements such as memory, cpu, disk, network etc. 

The Scheduler has a pluggable policy plug-in, which is responsible for partitioning the cluster
resources among the various queues, applications etc. The current Map-Reduce schedulers such
as the CapacityScheduler and the FairScheduler would be some examples of the plug-in.

The ApplicationsManager is responsible for accepting job-submissions, negotiating the first
container for executing the application specific ApplicationMaster and provides the service
for restarting the ApplicationMaster container on failure.

The NodeManager is the per-machine framework agent who is responsible for launching the applications'
containers, monitoring their resource usage (cpu, memory, disk, network) and reporting the
same to the Scheduler.

The per-application ApplicationMaster has the responsibility of negotiating appropriate resource
containers from the Scheduler, tracking their status and monitoring for progress.

Editorial pass over hadoop-0.23 content.
> Map-Reduce 2.0
> --------------
>                 Key: MAPREDUCE-279
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-279
>             Project: Hadoop Map/Reduce
>          Issue Type: Improvement
>          Components: mrv2
>            Reporter: Arun C Murthy
>             Fix For: 0.23.0
>         Attachments: MR-279-script-20110817.sh, MR-279-script-final.sh, MR-279-script.sh,
MR-279-script.sh, MR-279.patch, MR-279.patch, MR-279.sh, MR-279_MR_files_to_move-20110817.txt,
MR-279_MR_files_to_move.txt, MR-279_MR_files_to_move.txt, MapReduce_NextGen_Architecture.pdf,
NodeManager.gv, NodeManager.png, ResourceManager.gv, ResourceManager.png, capacity-scheduler-dark-theme.png,
hadoop_contributors_meet_07_01_2011.pdf, multi-column-stable-sort-default-theme.png, post-move-patch-20110817.2.txt,
post-move-patch-final.txt, post-move.patch, post-move.patch, post-move.patch, yarn-state-machine.job.dot,
yarn-state-machine.job.png, yarn-state-machine.task-attempt.dot, yarn-state-machine.task-attempt.png,
yarn-state-machine.task.dot, yarn-state-machine.task.png
> Re-factor MapReduce into a generic resource scheduler and a per-job, user-defined component
that manages the application execution.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message