大数据hadoop入门案例–对手机号码排序
文章目录
1.排序
MapTask和ReduceTask均会对数据按 照key进行排序。因此在实现排序任务时,需要将排序数据传入Key中。
默认排序是按照字典顺序排序,且实现该排序的方法是快速排序。
1.部分排序:MapReduce根据输入记录的键对数据集排序。保证输出的每个文件内部有序。
2.最终输出结果只有一个文件,且文件内部有序。实现方式是只设置一个ReduceTask。
3.在自定义排序过程中,如果compareTo中的判断条件为两个即为二次排序。
2.代码
bean 对象做为 key 传输,需要实现 WritableComparable 接口重写 compareTo 方法,就可以实现排序。
在Mapper文件中输出<key,value>转化为<FlowBean,Text>形式,Reducer输入<FlowBean,Text>形式,输出<Text,FlowBean>形式。
最后在Driver中加载驱动。
2.1FlowBean 序列化代码
使用二次排序,就是在第一次排序的基础上再增加一个判断条件。
package