WritableComparable是继承的排序类 ,只需要单独写一个类继承WritableComparable,
在这个继承类中定义一个私有的private int number;覆写compareTo方法设置自定义排序,
需要在需要用到这个自定义类的map和reduce的输入输出中按逻辑设置即可
WritableComparator是继承的分组类,需要单独写一个类继承WritableComparator类,
然后覆写compare方法,两个参数是决定比较所有key的分组条件,分好组后一个组的key都会设置为最开头的key,
如果倒排序就是最后的key
Driver设置
//注册分组比较器job.setGroupingComparatorClass(MyselfGroupComparator.class);
Partitioner是分区类,
需要单独写一个类继承Partitioner类,覆写getPartition方法,第一个参数是map中传的key,第二个参数是value
然后自定义分区规则,返回值为分区,如 return 0是分到0区
Driver设置
//设置自定义分区 job.setPartitionerClass(MySelfPartitioner.class);
//指定reduce个数 job.setNumReduceTasks(2);