我试图弄清楚如何使用 hadoop 运行 mahout jar 示例。我配置了 mahout 和 hadoop,现在我进入 hadoop 目录并输入如下内容:
/Users/hadoop/hadoop-0.20.2/bin/hadoop jar /Users/hadoop/trunk/examples/mahout-examples-0.5-SNAPSHOT-job.jar org.apache.mahout.SpareVectorsFromSequenceFile -w -i ratings -o ratings_vectors
但我正在尝试,我的目标是为 Grouplens 数据集运行 hadoop 作业。我执行了 put 命令将我的 rating.dat 上传到 Hadoop,然后呢?该命令总是给我这样的东西:
Exception in thread "main" java.lang.ClassNotFoundException: org.apache.mahout.SpareVectorsFromSequenceFile
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at org.apache.hadoop.util.RunJar.main(RunJar.java:149)
我的问题是:
- 如何在 hadoop 目录中设置正确的路径来调用 mahout?
- 如何使用
org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluatorRunner
hadoop 计算我的数据 rating.dat?
非常感谢,我从 hadoop 和 mahout 开始;)