0

次の hadoop コマンドを使用してディレクトリを作成します

 hdfs dfs -mkdir /tmp/testing/morehere1

次のメッセージが表示されます。

 log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).

log4j:WARN log4j システムを適切に初期化してください。

エラーを理解していないので、コマンドを再度実行すると、次のメッセージが返されます。

 log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).
 log4j:WARN Please initialize the log4j system properly.
 mkdir: `/tmp/testing/morehere2': File exists

次に、作成したばかりのディレクトリに移動しようとすると、そこにはありません。

cd /tmp/testing/morehere2
 -bash: cd: /tmp/testing/morehere2: No such file or directory

私が間違っていることはありますか?

4

3 に答える 3

5
 hdfs dfs -mkdir /tmp/testing/morehere1

このコマンドにより、 hdfs にディレクトリが作成されました。log4j の警告について心配する必要はありません。コマンドはディレクトリを正常に作成しました。そのため、エラー mkdir: を受け取っ/tmp/testing/morehere2': File existsたのは、コマンドを 2 回目に実行したときです。

ディレクトリはローカル ファイル システムではなく hdfs に作成されるため、次のコマンドは機能しません。

cd /tmp/testing/morehere2

以下のコマンドを使用して、 hdfs で作成されたディレクトリを確認します。

hdfs dfs -ls /tmp/testing

そこに新しいディレクトリが表示されるはずです。

log4j 警告について: Hadoop コマンドが失敗する原因にはならないため、無視してかまいません。しかし、これを修正したい場合は、File アペンダを log4j.properties に追加できます。

于 2012-09-08T06:04:12.797 に答える
1

HDFSとローカルファイルシステムには違いがあることに注意してください。投稿した最初の行は、ローカルシステムではなく、HDFSにディレクトリを作成します。したがって、それにCDを挿入したり、直接挿入したりすることはできません。アクセスしたい場合は、hadoopを使用する必要があります。また、ファイルの追加が十分にサポートされていないため、HDFSにログを記録することは非常にまれです。実際にそのディレクトリをローカルに作成したいと思っているのではないかと思いますが、それが問題の一部である可能性があります。

于 2012-09-07T20:24:31.567 に答える