パスにネストされたディレクトリが含まれている場合、たとえばa/b/c/
、を呼び出すとcreate
、パス上にそれらすべてのディレクトリが作成されるようです...
fileSystem.create(new Path(path), true);
..への呼び出しに似ていますFile.mkdirs
これはHDFSの文書化された機能ですか?
FileSystem
APIのcreate(…)
メソッドのデフォルトの動作(HDFS
特に実装で使用される場合)はcreate-parent
、サーバーにフラグを送信し、親がまだ存在しない場合は自動的に作成されるように要求します。
FileSystemの実装はプラットフォームごとに動作が異なるため、これは、ローカルファイルシステム(file://
パス)の作成呼び出しには当てはまらないと予想されます。
トグル機能は、Hadoop2.x以降で使用可能なFileContextのcreateAPIでOptions.CreateOptions.donotCreateParent()
使用できます。これにより、この動作を禁止または制御するためのオプションを提供できます。