0

パスにネストされたディレクトリが含まれている場合、たとえばa/b/c/、を呼び出すとcreate、パス上にそれらすべてのディレクトリが作成されるようです...

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

..への呼び出しに似ていますFile.mkdirs

これはHDFSの文書化された機能ですか?

4

1 に答える 1

1

FileSystemAPIのcreate(…)メソッドのデフォルトの動作(HDFS特に実装で使用される場合)はcreate-parent、サーバーにフラグを送信し、親がまだ存在しない場合は自動的に作成されるように要求します。

FileSystemの実装はプラットフォームごとに動作が異なるため、これは、ローカルファイルシステム(file://パス)の作成呼び出しには当てはまらないと予想されます。

トグル機能は、Hadoop2.x以降で使用可能なFileContextのcreateAPIOptions.CreateOptions.donotCreateParent()使用できます。これにより、この動作を禁止または制御するためのオプションを提供できます。

于 2012-12-30T23:49:14.847 に答える