注意一个问题
有如下数据
订单id | 商品id | 成交金额 |
---|---|---|
0000001 | Pdt_01 | 222.8 |
Pdt_02 | 33.8 | |
0000002 | Pdt_03 | 522.8 |
Pdt_04 | 122.4 | |
Pdt_05 | 722.4 | |
0000003 | Pdt_06 | 232.8 |
Pdt_02 | 33.8 |
mapreduce默认的是先排序,后分组。如果我们编写Bean时,按照成交金额倒序排序就会发生以下情况,分成6组。因为reduce阶段,对排序好的数据,进行分组的规则是,当前key和下一个key是否一致,一致则是一组,不一致就是两组。