hadoop streaming 中 reducer 的输出文件类似:${outputDir}/part-******,其中 ***** 是 reducer 任务的任务号。但有的时候我们希望 reducer 能够输出到多路文件,例如,对于文件符合某个条件的,输出到 part-*****-A,其余的输出到 part-*****-B。
1. hadoop-v2-u7 的版本为 streaming 引入了两个多路输出的插件:SuffixMultipleTextOutputFormat和SuffixMultipleSequenceFileOutputFormat。如果要直接使用这两个插件,需要保证客户端和服务器上的 hadoop 版本均为 hadoop-v2-u7 或者更高。
2.写一个jar包,上传进行设置。操作如:https://www.linuxidc.com/Linux/2012-07/66338.htm