多个映射更新日志文件同步问题

时间:2012-07-16 02:19:05

标签: hadoop hdfs

我正在更新HDFS上的文件。

如何确保所有地图所做的更改都存档,即文件上的写入操作是否已同步?

2 个答案:

答案 0 :(得分:0)

根据Hadoop - The Definitive Guide

  

多个作家,任意文件修改
  HDFS中的文件可以由单个写入器写入。写作总是在   文件的结尾。不支持多个编写器或修改   文件中的任意偏移量。 (这些可能在未来得到支持,但它们是   可能效率相对较低。)

由于Hadoop(多个节点/映射器/缩减器等)的性质,实际上不可能进行应用程序级同步。

MapR distribution of Apache Hadoop支持随机读写,同时支持多个读者和编写者。

答案 1 :(得分:0)

HDFS文件不可变。所以你只能附加给他们。 这里将介绍并发附加问题:Is it possible to append to HDFS file from multiple clients in parallel? 简而言之 - 你不应该。
我还要指出,这不是“精神先生”。如果你想从映射器中收集一些数据并将它们聚合在一起 - 它正是reducer的作用。