2

入力ファイル「input.txt」と「users.txt」を HDFS に正常に追加しました。Hadoop と Mahout のジョブを個別にテストして成功しました。ただし、次のコマンドラインで RecommenderJob を実行すると:

bin/hadoop jar /Applications/mahout-distribution-0.9/mahout-core-0.9-job.jar org.apache.mahout.cf.taste.hadoop.item.RecommenderJob -Dmapred.input.dir=/user/valtera45/input /input.txt -Dmapred.output.dir=/user/valtera45/output --usersFile /user/valtera45/input2/users.txt --similarityClassname SIMILARITY_COOCCURRENCE

これは私が得る出力です:

スレッド「メイン」での例外 java.io.IOException: 組織の org.apache.hadoop.hdfs.DFSClient$DFSInputStream.openInfo(DFSClient.java:1444) でファイル名 /user/valtera45/temp/preparePreferenceMatrix/numUsers.bin を開けません.apache.hadoop.hdfs.DFSClient$DFSInputStream.(DFSClient.java:1435) org.apache.hadoop.hdfs.DFSClient.open(DFSClient.java:347) org.apache.hadoop.hdfs.DistributedFileSystem.open( org.apache.mahout.common.HadoopUtil.readInt(HadoopUtil.java:339) の org.apache.mahout の org.apache.hadoop.fs.FileSystem.open(FileSystem.java:351) の DistributedFileSystem.java:178) .cf.taste.hadoop.item.RecommenderJob.run(RecommenderJob.java:172) org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) org.apache.mahout.cf.taste.hadoop .item.RecommenderJob.main(RecommenderJob.java:322) で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) で java.lang.reflect org.apache.hadoop.util.RunJar.main(RunJar.java:156) の .Method.invoke(Method.java:606)

スタンドアロンの Mahout ジョブを実行すると、Mahout ディレクトリ内に一時フォルダーが作成されます。RecommenderJob は、このステップを通過できないようです。何か案は?前もって感謝します。私が使用している入力ファイルが適切にフォーマットされていることはわかっています。

4

1 に答える 1