I know in Hadoop we can implement multi-threaded, asynchronous mapping with
class MapRunnable. But this don't exist the similar class to do
multi-threaded in reduce phrase. Could we do milti-thread in reduce phrase?.
Does the following code work?
public void reduce(WritableComparable key, Iterator values,
OutputCollector output, Reporter reporter) {
new SomeThread(output).start(); // transfer OutputCollector to thread
}
public class SomeThread extend Thread {
OutputCollector ouput;
public SomeThread(OutputCollector output) {
this.output = output;
}
public void run() {
output.collect(key, value);
}
}