Ling,
Thanks for the response!  I could use more clarification on item 1.  
Specifically

*         mapred.reduce.parallel.copies  limits the number of outbound 
connections for a reducer, but not the inbound connections for a mapper.  Does 
tasktracker.http.threads limit the number of simultaneous inbound connections 
for a mapper, or only the size of the thread pool servicing the connections?  
(i.e. is it one thread per inbound connection?).

*         Who actually creates the listen port for serving up the mapper files? 
 The mapper task?  Or something more persistent in MapReduce?
Thanks,
John

From: erlv5...@gmail.com [mailto:erlv5...@gmail.com] On Behalf Of Kun Ling
Sent: Wednesday, May 22, 2013 7:50 PM
To: user
Subject: Re: Shuffle phase replication factor

Hi John,


   1. for the number of  simultaneous connection limitations. You can configure 
this using the mapred.reduce.parallel.copies flag. the default  is 5.

   2. For the aggressively disconnect implication, I am afraid it is only a 
little. Normally, each reducer will connect to each mapper task, and asking for 
the partions of the map output file.   Because there are about 5 simultaneous 
connections to fetch the map output for each reducer. For a large MR cluster 
with 1000 node, and a Huge MR job with 1000 Mapper, and 1000 reducer, for each 
node, there are only about 5 connections. So the imply is only a little.


  3.  What happens to the pending/ failing coonection, the short answer is: 
just try to reconnect.    There is a List<>, which maintain all the output of 
the Mapper that need to copied, and the element will be removed iff the map 
output is successfully copied.  A forever loop will keep on look into the List, 
and fetch the corrsponding map output.


  All the above answer is based on the Hadoop 1.0.4 source code, especially the 
ReduceTask.java file.

yours,
Ling Kun

On Wed, May 22, 2013 at 10:57 PM, John Lilley 
<john.lil...@redpoint.net<mailto:john.lil...@redpoint.net>> wrote:
Ummmm, is that also the limit for the number of simultaneous connections?  In 
general, one does not need a 1:1 map between threads and connections.
If this is the connection limit, does it imply  that the client or server side 
aggressively disconnects after a transfer?
What happens to the pending/failing connection attempts that exceed the limit?
Thanks!
john

From: Rahul Bhattacharjee 
[mailto:rahul.rec....@gmail.com<mailto:rahul.rec....@gmail.com>]
Sent: Wednesday, May 22, 2013 8:52 AM

To: user@hadoop.apache.org<mailto:user@hadoop.apache.org>
Subject: Re: Shuffle phase replication factor

There are properties/configuration to control the no. of copying threads for 
copy.
tasktracker.http.threads=40
Thanks,
Rahul

On Wed, May 22, 2013 at 8:16 PM, John Lilley 
<john.lil...@redpoint.net<mailto:john.lil...@redpoint.net>> wrote:
This brings up another nagging question I've had for some time.  Between HDFS 
and shuffle, there seems to be the potential for "every node connecting to 
every other node" via TCP.  Are there explicit mechanisms in place to manage or 
limit simultaneous connections?  Is the protocol simply robust enough to allow 
a server-side to disconnect at any time to free up slots and the client-side 
will retry the request?
Thanks
john

From: Shahab Yunus 
[mailto:shahab.yu...@gmail.com<mailto:shahab.yu...@gmail.com>]
Sent: Wednesday, May 22, 2013 8:38 AM

To: user@hadoop.apache.org<mailto:user@hadoop.apache.org>
Subject: Re: Shuffle phase replication factor

As mentioned by Bertrand, Hadoop, The Definitive Guide, is well... really 
definitive :) place to start. It is pretty thorough for starts and once you are 
gone through it, the code will start making more sense too.

Regards,
Shahab

On Wed, May 22, 2013 at 10:33 AM, John Lilley 
<john.lil...@redpoint.net<mailto:john.lil...@redpoint.net>> wrote:
Oh I see.  Does this mean there is another service and TCP listen port for this 
purpose?
Thanks for your indulgence... I would really like to read more about this 
without bothering the group but not sure where to start to learn these 
internals other than the code.
john

From: Kai Voigt [mailto:k...@123.org<mailto:k...@123.org>]
Sent: Tuesday, May 21, 2013 12:59 PM
To: user@hadoop.apache.org<mailto:user@hadoop.apache.org>
Subject: Re: Shuffle phase replication factor

The map output doesn't get written to HDFS. The map task writes its output to 
its local disk, the reduce tasks will pull the data through HTTP for further 
processing.

Am 21.05.2013 um 19:57 schrieb John Lilley 
<john.lil...@redpoint.net<mailto:john.lil...@redpoint.net>>:

When MapReduce enters "shuffle" to partition the tuples, I am assuming that it 
writes intermediate data to HDFS.  What replication factor is used for those 
temporary files?
john


--
Kai Voigt
k...@123.org<mailto:k...@123.org>








--
http://www.lingcc.com

Reply via email to