私は Hadoop を初めて使用するので、質問がばかげている場合はご容赦ください。ローカルの単一ノード クラスターがあります。RHadoop で単純な MapReduce ジョブを実行しようとすると、次のメッセージが表示されます。
> wordcount('/data/complete_works_of_shakespeare.txt')
Error creating temp dir in hadoop.tmp.dir /app/hadoop/tmp due to Permission denied
Show Traceback
Rerun with Debug
Error in mr(map = map, reduce = reduce, combine = combine, vectorized.reduce, :
hadoop streaming failed with error code 255 Also warnings:
1: In rmr.options("backend") :
Please set an HDFS temp directory with rmr.options(hdfs.tempdir = ...)
2: In rmr.options("hdfs.tempdir") :
Please set an HDFS temp directory with rmr.options(hdfs.tempdir = ...)
3: In rmr.options("backend") :
Please set an HDFS temp directory with rmr.options(hdfs.tempdir = ...)
4: In rmr.options("backend.parameters") :
Please set an HDFS temp directory with rmr.options(hdfs.tempdir = ...)
このすべてのオプションを設定するにはどうすればよいですか? hdfs.tempdir へのパスはどのようになりますか? 一時ディレクトリを次のように設定したいと思います(Rが私に何を望んでいるかを正しく理解している場合)):
hduser@nina:~$ hadoop fs -ls /
14/08/10 12:52:47 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 6 items
...
drwxr-xr-x - hduser supergroup 0 2014-08-10 00:04 /temp
ところで、私はすでに試しました
rmr.options(backend="hadoop")
NULL
Warning:
In rmr.options(backend = "hadoop") :
Please set an HDFS temp directory with rmr.options(hdfs.tempdir = ...)
助けてください。どうもありがとう。
更新:
また試しました:
hduser@nina:~$ sudo chmod -R 777 '/app/hadoop'
hduser@nina:~$ sudo chmod -R 777 '/tmp'
役に立ちません。