speed up list[located]status calls from input formats
-----------------------------------------------------

                 Key: MAPREDUCE-2349
                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-2349
             Project: Hadoop Map/Reduce
          Issue Type: Improvement
          Components: task
            Reporter: Joydeep Sen Sarma


when a job has many input paths - listStatus - or the improved 
listLocatedStatus - calls (invoked from the getSplits() method) can take a long 
time. Most of the time is spent waiting for the previous call to complete and 
then dispatching the next call. 

This can be greatly speeded up by dispatching multiple calls at once (via 
executors). If the same filesystem client is used - then the calls are much 
better pipelined (since calls are serialized) and don't impose extra burden on 
the namenode while at the same time greatly reducing the latency to the client. 
In a simple test on non-peak hours, this resulted in the getSplits() time 
reducing from about 3s to about 0.5s.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to