flush合并spill{n}文件是通过mergeParts方法。如果Mapper最后叧有一个spill{n}文件,简单修改该文件的文件名就可以。如果Mapper没有任何输出,那么我们需要创建哑输出(dummy files)。如果spill{n}文件多与1个,那么按partition循环处理所有文件,将处与处理partition的记录输出。处理partition的过程中可能还会再次调用combineAndSpill,最记录再做一次combination,其中还涉及到工具类Merger,我们就不再深入研究了。
更多精彩内容请关注:http://bbs.superwu.cn
关注超人学院微信二维码:
关注超人学院java免费学习交流群:
原文地址:http://blog.csdn.net/crxy2014/article/details/46342747