如何使用hadoop安装执行mahout

时间:2010-10-31 16:08:58

标签: java hadoop mahout

我正在试图弄清楚如何使用hadoop运行mahout jar示例。我配置了mahout和hadoop,现在我输入hadoop dir并键入这样的内容:

/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命令将我的ratings.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 dir中设置正确的路径来调用mahout?
  • 如何使用org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluatorRunner使用hadoop计算我的数据ratings.dat?

非常感谢,我从hadoop和mahout开始;)

1 个答案:

答案 0 :(得分:1)

你有一个错字。它们是“稀疏矢量”,而不是“备用矢量”。请参阅SpareVectorsFromSequenceFileSparseVectorsFromSequenceFile