hadoop - 在MapReduce中获得第二名得分手

标签 hadoop mapreduce

我是MapReduce的新手,正在研究为输入的状态找到第二高分的问题
以下是数据

用户输入CA并需要找出最高的第二得分,在这种情况下,Raphel的得分为900(马丁是最高得分者)

enter image description here

最佳答案

这是我为达成解决方案所要执行的逻辑步骤。

  • 读取输入文件,其中记录可能包含state as keyscore as a value。这可以是一个Map作业。
  • 发布此消息,您需要将其传递给reduce作业。 IMO,由于选择了state作为键,因此洗牌和排序阶段应将状态相同的所有记录放在一起。
  • Reduce作业中,您可以通过对得分进行排序来选择第二个最高得分。
  • 关于hadoop - 在MapReduce中获得第二名得分手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38060288/

    相关文章:

    java - 无法初始化集群。请检查您的配置中的 mapreduce.framework.name 和相应的服务器地址

    java - CSV 类未找到异常

    java - 尝试将数据写入 HCatalog(MapReduce 之外)时出现 InvalidProtocolBufferException

    sql-server - Sqoop 无法从 Sql Server 导入数据

    hadoop - mapper和reducer类是否需要部署在一个Hadoop集群的所有节点上

    hadoop - 控制和监视 YARN 中同时进行的 mapreduce 任务的数量

    hadoop - Hadoop 不应该只基于 hashCode 在reducer中分组<key,(值列表)吗?

    hadoop - PIG 脚本根据指定的单词将大文本文件拆分成多个部分

    hadoop - 使用我自己构建的 hadoop 运行 spark-submit

    hadoop - 执行sqoop作业时找不到文件错误