有三种方法:
1.定义1个reduce
2.自定义分区函数.
自行设置分解区间。
3.使用hadoop采样机制。
通过采样器生成分区文件,结合hadoop的TotalOrderPartitioner进行分区划分。
TotalOrderPartitioner //全排序分区类,读取外部生成的分区文件确定区间。
使用时采样代码在最后端,否则会出现错误。
//分区文件设置,设置的job的配置对象,不要是之前的conf.
TotalOrderPartitioner.setPartitionFile(job.getConfiguration(),new Path("d:/mr/par.lst"));
TotalOrderPartitioner.setPartitionFile(job.getConfiguration(),new Path("d:/mr/par.lst"));