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

Hadoop 多个映射更新日志文件同步问题,hadoop,hdfs,Hadoop,Hdfs,我正在更新HDFS上的文件 如何确保所有映射所做的更改都存在于文件中,即如果文件上的写入操作已同步?根据 多个写入程序,任意文件修改 HDFS中的文件可以由单个写入程序写入。书写总是在同一时间完成的 文件的结尾。不支持多个编写器,也不支持同时进行修改 文件中的任意偏移量。这些可能在将来得到支持,但事实上是这样的 可能效率相对较低 由于Hadoop多节点/映射器/还原器等的特性,应用程序级同步实际上是不可能的 支持随机读写,同时支持多个读写器。HDFS文件是不可变的。因此,您只能附加到它们。 这里

我正在更新HDFS上的文件

如何确保所有映射所做的更改都存在于文件中,即如果文件上的写入操作已同步?

根据

多个写入程序,任意文件修改 HDFS中的文件可以由单个写入程序写入。书写总是在同一时间完成的 文件的结尾。不支持多个编写器,也不支持同时进行修改 文件中的任意偏移量。这些可能在将来得到支持,但事实上是这样的 可能效率相对较低

由于Hadoop多节点/映射器/还原器等的特性,应用程序级同步实际上是不可能的


支持随机读写,同时支持多个读写器。

HDFS文件是不可变的。因此,您只能附加到它们。 这里讨论了并发追加的问题: 简而言之,你不应该这样做。 我还想指出,这并不符合精神先生的要求。若您想从映射器收集一些数据并将其聚合在一起,那个么这正是reducer的作用