我正在尝试在C ++中实现reducer的清理方法。 我尝试了以下测试工作。
class WordCountReducer : public HadoopPipes::Reducer {
public:
WordCountReducer(HadoopPipes::TaskContext& context) {}
// Reduce function
void reduce(HadoopPipes::ReduceContext& context) {
//dont emit anything in reducer
}
void cleanup(HadoopPipes::ReduceContext& context) {
//emit key and value as 1
context.emit(context.getInputKey(), HadoopUtils::toString(1));
}
};
虽然作业成功运行,但它不会在输出文件中打印任何内容。做完全相同的事情,但在减速器中发射效果非常好。
将此link用于java实现,它就像魅力一样!
我是C ++和管道的业余爱好者。