即时添加输入数据到Hadoop Map-Reduce Job?

时间:2015-01-26 17:33:39

标签: java hadoop hdfs

在不创建竞争条件的情况下,我可以将输入文件或输入数据附加到map-reduce作业吗?

2 个答案:

答案 0 :(得分:1)

我认为理论上你可以在输入中添加更多文件:

  1. 匹配您的FileInputFormat模式
  2. 在InputFormat.getSplits()调用之前发生,这会在您提交作业后给您很短的时间。
  3. 关于计算拆分后的竞争条件,请注意,只有版本0.21.0后才能附加到现有文件。

    即使你可以修改你的文件,你的分割点已经预先计算好,很可能你的新数据也不会由地图选择器获取。虽然,我怀疑它会导致你的流量崩溃。

    您可以尝试的是禁用文件中的拆分(即为每个文件指定一个映射器)并尝试追加。我认为一些有机会被刷新的数据可能最终出现在一个映射器中(这只是我疯狂的猜测)。

答案 1 :(得分:1)

有效的答案是“不”。分裂是在游戏的早期计算出来的:之后你的新文件将不会包括在内。