代碼:Customer.upsmart.recommend.TestReduceSort
job.setPartitionerClass(PartitionClass.class);
對key取hash值(或其它處理),進入不同的reduce
job.setSortComparatorClass(SortComparator.class);
對進入同一個reduce的 鍵 或鍵的部分 進行排序,按照情況需要;
job.setGroupingComparatorClass(Grouptail.class);
/*
* 進入同一個reduce的key是按照順序排好的,該類使得:
* 如果連續(注意,一定連續)的兩條或多條記錄滿足同組(即compare方法返回0)的條件,
* 即使key不相同,他們的value也會進入同一個values,執行一個reduce方法。
* 相反,如果原來key相同,但是並不滿足同組的條件,他們的value也不會進入一個valeus。
* 最後返回的key是:滿足這些條件的一組key中排在最後的那個。
*/