HDFS原子重命名文件系统依赖

时间:2014-09-04 09:51:16

标签: hadoop hdfs hadoop2

有关堆栈溢出以及hadoop 2.x文档的其他问题表明HDFS重命名操作是原子的。但hadoop 2.x文档还说明了以下内容:

  

请注意,重命名的原子性取决于文件系统   实现。请参阅文件系统文档   细节   资料来源:Hadoop 2.x FileContext documentation

该短语还意味着对底层文件系统的依赖。直到知道我无法理解或阐明该句的确切含义。只是文件系统的重命名操作也必须是原子的吗?什么类型的常用文件系统与该句子冲突?

1 个答案:

答案 0 :(得分:0)

DistributedFileSystem的重命名似乎是原子的。 rename(Path src, Path dst, final Options.Rename... options)方法有一个Javadoc评论说: /** * This rename operation is guaranteed to be atomic. */ latest documentation还表示原子重命名是Hadoop兼容文件系统的核心期望之一,因此我假设经常使用的FileSystems如WebHdfsFileSystem和S3FileSystem支持原子重命名。源代码有点难以理解,所以我不是100%肯定。