Hadoop Streaming和多个reducer步骤,每个步骤之间没有映射器

时间:2012-09-11 21:43:13

标签: hadoop streaming mapreduce mapper

我正在排查如何多次对数据进行排序,而不必每次都返回映射器。

我想设置:mapper 1 - >减速机1 --->减速机2 --->减速机3

我想制作减速机1输出(键,数据),然后直接使用减速机2 ......这可能吗?

我从故障排除中了解到您可以链接作业,但这需要每个步骤都有一个映射器吗?

每当我尝试在没有映射器的情况下运行时,它都会以错误结束。如果我可以根据需要从reducer 1输出它,似乎每个步骤运行mapper会浪费时间/资源。

思想?

1 个答案:

答案 0 :(得分:1)

简而言之,如果您使用的是Java,那么ChainReducer和ChainMapper就是您所需要的。使用这些类,您可以按任意顺序在链中添加任意数量的reducer或mappers。

“Hadoop in Action”一书在第5章中描述了这个过程。