[ 
https://issues.apache.org/jira/browse/HADOOP-3674?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12640074#action_12640074
 ] 

Vivek Ratan commented on HADOOP-3674:
-------------------------------------

There's definitely an advantage, in some cases, to looking ahead and not 
necessarily always assigning a task to a free TT. This is, however, hard to do, 
as the JT currently has no idea of the order in which the TTs will ask for 
tasks. There have been many discussions on basing scheduling decisions on a 
more global view of the  system (see HADOOP-3136, for example). 

Do you have any ideas on how the JT can predict the order of the TTs? 

> dynamic heartbeat interval for the locality-aware task scheduling
> -----------------------------------------------------------------
>
>                 Key: HADOOP-3674
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3674
>             Project: Hadoop Core
>          Issue Type: Wish
>          Components: mapred
>            Reporter: Leitao Guo
>            Priority: Minor
>
> In current hadoop release (0.17.0), there is no special scheduling policy for 
> those tasktrackers who have no data for some jobs. So, there would be 
> inefficient in some senarios. For example, tasktracker A has the data for a 
> job, but tasktracker B, which has no data for this job, sends the heartbeat 
> message to the jobtracker for a new task before tasktrack A. The task may be 
> scheduled to B instead of A. While Jobtracker has to find a new task for 
> tasktracker A when A ask for a new task. 
> In this situation, if jobtracker has some reservation policy, such as reserve 
> the task for tasktracker A and let B ask for new task in the next heartbeat 
> message, that would be more efficient. Because before tasktracker B asking 
> for new task the second time, tasktracker A has applied for a new task and 
> jobtracker has scheduled the task to A.
> Here is a rough idea to deal with the senario above:
> (1) Jobtracker receives the heartbeat message sent by tasktracker B, which 
> has no data for any job.
> (2) Jobtracker send response message to tasktracker B with a new heartbeat 
> message interval, but does not schedule new task to B.  The new heartbeat 
> interval should be shorter the current heartbeat interval, for example, 
> current_heartbeat_interval/2.
> (3) Tasktracker B receive the response from jobtracker, and sends another 
> heartbeat message for a new task after a period of 
> current_heartbeat_interval/2 .
> (4) Jobtracker then find a new task for tasktracker B.
> This is just an primary idea for the improvement of the locality-aware 
> scheduling. Any comments are welcome.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to