如果我使用相同的目录进行输入和输出,MR是否会覆盖记录?

时间:2014-12-31 18:04:52

标签: java hadoop mapreduce

我想在MR运行期间过滤掉过时的记录并添加新记录。我打算编写一个映射器,它将从临时目录(新输入)和存储库目录(以前的结果)中读取记录。当映射器运行时,它将使用旧的摄取新的。如果映射器仅写出时间戳小于30天的记录,并且我也使用存储库目录进行输出,新结果是否会覆盖旧结果,有效地添加新内容并删除过时内容?我在Java 1.7中使用了Apache库。

1 个答案:

答案 0 :(得分:1)

会抛出错误。 Hadoop不会输出到现有目录。它总是创建目录。因此,输出目录不能存在。如果是,它将引发错误。我假设您使用的是标准FileOutputFormat或其扩展名。