我正在使用MultipleOutput在Reducer中写入多个文件。但是,当我查看目标文件夹时,我发现文件已成功写入,但校验和文件为空(尽管已创建)。有没有办法让MultipleOutput也写校验和?
我正在"运行"方法中添加命名输出
MultipleOutputs.addNamedOutput(job, "fld1",
TextOutputFormat.class,
Text.class, Text.class);
...
以及在Reducer:中写入MultipleOutputs对象
output = new MultipleOutputs(context);
...
output.write("fld1", key, new Text(Arrays.toString(myData)));
有什么想法吗?
似乎需要在写入完成后显式关闭MultipleOutputs对象。下面的调用解决了这个问题:output.close()