2013-08-19 91 views
0

我需要相关地图降低chaining.i有一张地图,减少这样的输入/输出流量减少链

MAP-> reduce->地图

我想减速机的输出链帮助在最后的映射器中使用

例如,在我的reducer中,我正在获取雇员的最高工资,并且此值应该用于下一个映射器,并找到具有该最高工资值的记录。我的最后一个映射器应该得到reducer的输出和文件的内容?有可能吗?如果可以的话问题是什么?有什么更好的解决方案?

回答

0

我不确定我是否理解这个问题,但我会尽力帮忙。
您已将包含员工工资(让我们称之为input1)的一些输入减少为输出(让我们称之为output1),如下所示:
Key: someEmployee Value: max salary
现在你想要另一个映射器来映射来自input1和output1的数据吗?
如果是这样,比你有几个选择,你可以根据你的需要选择一个。

  • 操作第一个减速机输出。创建输出1的格式为
    Key: someEmployee Value: [email protected]@salary_1,salary_2,salary_3...salary_n
    并创建新作业,并将新映射器输入设置为输出1。

  • 尝试阅读this issue解释如何让多个输入到一个映射

+0

对不起IAM新的Hadoop,用它。我这样苦苦会发现在我减速的最大薪水,而这个最高薪水,内容的文件应该是下一个映射器的输入,以便我可以找到最高工资的记录。 – user1585111

+0

所以第一个解决方案应该正是你所需要的。只需创建另一个mapreduce作业,并将第一步生成的输出文件作为输入。 – Roy

+0

我的回答对你有帮助吗?你还需要什么别的吗?如果不是,请标记为答案。 – Roy