Someone can correct me if I'm wrong, but I'm pretty sure it goes:1. The JT assigns map tasks to TTs based on locality, etc. 2. They finish and report status back to the JT. 3. The JT assigns a reduce task to a TT and informs it as to the TT where the map output is. The TTs fetch the map output via HTTP calls.
The reduce-task itself fetches map-outputs.TaskTrackers on which the maps successfully completed *serve* out the map-outputs to the reduce-tasks via http.
Arun
