我正在排查如何多次对数据进行排序,而不必每次都返回映射器。
我想设置:mapper 1 - >减速机1 --->减速机2 --->减速机3
我想制作减速机1输出(键,数据),然后直接使用减速机2 ......这可能吗?
我从故障排除中了解到您可以链接作业,但这需要每个步骤都有一个映射器吗?
每当我尝试在没有映射器的情况下运行时,它都会以错误结束。如果我可以根据需要从reducer 1输出它,似乎每个步骤运行mapper会浪费时间/资源。
思想?
答案 0 :(得分:1)
简而言之,如果您使用的是Java,那么ChainReducer和ChainMapper就是您所需要的。使用这些类,您可以按任意顺序在链中添加任意数量的reducer或mappers。
“Hadoop in Action”一书在第5章中描述了这个过程。