Помогите с демонстрацией Taste Grouplens на hadoop - PullRequest
2 голосов
/ 25 октября 2010

Я пытаюсь создать систему рекомендаций на основе совместной фильтрации в рамках академического проекта. Я думаю, что у проекта Mahout большой потенциал, и я хочу его использовать.

Я установил Mahout, hadoop и Java на свою Ubuntu 10.1. Hadoop и Java были проверены на совместимость. (Выполнен пример работы с подсчетом слов Hadoop)

Я следую этому уроку , чтобы запустить «Пример Taste Grouplens» с набором данных в 1 миллион. Я набрал следующее

chirayu@chirayu-laptop:~/hadoop-0.20.2$ mvn -e exec:java 

-Dexec.mainClass="org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluato

rRunner" -Dexec.args="-i /home/chirayu/mahout_source/trunk/examples/data/ratings.dat"

Затем я последовал его запуску в кластерной части hadoop. я установил mvn в каталог с примерами, он сгенерировал файлы jar в каталоге examples / target /, Затем я перешел к следующей части, где я должен выполнить задание на Hadoop я набрал следующее:

    chirayu@chirayu-laptop:~/hadoop-0.20.2$ sudo bin/hadoop jar /home/chirayu/mahout_source
/trunk/examples/target/mahout-examples-0.5-SNAPSHOT.jar 

org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluatorRunner 

я получаю следующую ошибку:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/mahout/cf/taste/eval/RecommenderEvaluator
    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)
Caused by: java.lang.ClassNotFoundException: org.apache.mahout.cf.taste.eval.RecommenderEvaluator
    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)
    ... 3 more

Я не очень уверен, что поставить вместо Я не слишком уверен, правильно ли я внедряю jar-файл, у кого-нибудь есть идеи?

1 Ответ

4 голосов
/ 25 октября 2010

Цитирую мой ответ по электронной почте: пример GroupLens не имеет ничего общего с Hadoop.Вам не нужно это вообще.Похоже, вы пытаетесь запустить пример через Maven, но из каталога установки Hadoop.Hadoop не Mahout, поэтому, конечно, он не может найти классы Mahout таким образом.Попробуйте убежать от Mahout dir.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...