0

似乎如果路径包含嵌套目录,例如a/b/c/然后调用create在路径上创建所有这些目录......

fileSystem.create(new Path(path), true);

..类似于调用File.mkdirs

这是 HDFS 的记录功能吗?

4

1 回答 1

1

FileSystemAPIcreate(…)方法的默认行为(HDFS特别是在实现上使用时)将向服务器发送一个create-parent标志,如果父级不存在,则要求自动创建它们。

由于每个平台的 FileSystem 实现在行为上是不同的,因此对于本地文件系统(file://路径)创建调用来说,这是预期的。

切换功能在 FileContext 的create API 中可用,在 Hadoop 2.x 及更高版本中可用,它允许提供一个Options.CreateOptions.donotCreateParent()选项以禁止或控制此行为。

于 2012-12-30T23:49:14.847 回答