MapReduce 排序

MapReduce 默认排序

MapReduce 中Mapper 和 Reducer 中的 <Key,Value> 键值对,Key 值是基本类型,那么将按照基本类型对应的 Key 进行排序(如 int类型的 IntWritable,long 类型的 LongWritable,以及 String类型的 Text,默认都是按照升序排序)

MapReduce 自定义排序

当 MapReduce 的默认排序无法满足业务需求,则需要自定义排序规则,具体如下:

  • 自定义 key 的数据类型

    实现 WritableComparable接口

  • 自定义 key 的排序规则

    重写 compare() 方法

注意事项
  • MapReduce 排序仅局限每个分区,无法实现全局排序
  • MapReduce 排序在 Map 分组后 Reduce 聚合前进行,不会对 Reduce 聚合后的结果再进行排序
posted @ 2021-12-05 20:00  追こするれい的人  阅读(217)  评论(0编辑  收藏  举报