001数据算法--二次排序

二次排序

各个列分别为:
年,月,日,当天温度
2012,01,01,5
2012,01,02,15
2012,01,03,25
2012,01,04,18
2012,01,05,10
2012,02,01,15
2012,02,02,16
2012,02,03,22
2012,02,04,11
2012,02,05,16
2012,03,01,25
2012,03,02,17
2012,03,03,24
2012,03,04,13
2012,03,05,17
需求:
输出每个’年-月’(year-month)的温度,而且值按升序排序。
输出结果为:
第一列:year-month
第二列:已排序的温度。

hadoop M/R 实现二次排序

MapReduce范式:
map(keya,valuea) -> list(kb,vb)
reduce(kb,list(vb)) -->list(kc,vc)

使用MR框架对规约器值排序:
使用键值转换设计模式:
构造一个组合中间键(k,valuea),其中valuea是次键(secondary key)。在这里,k称为自然键(natural key)。要在规约器键中注入一个值(即 valuea),只需要创建一个组合键,在本例子中valuea 就是温度数据 (temperature) 。

spark 实现二次排序

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值