4

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

我想设置:mapper 1 --> reducer 1 ---> reducer 2 ---> reducer 3

我想让减速器 1 输出(键、数据),然后让它直接进入减速器 2……这可能吗?

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

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

想法?

4

1 回答 1

1

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

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

于 2012-09-26T12:34:26.397 回答