Использование mahout и hadoop

Я новичок, пытаясь понять, как mahout и hadoop будут использоваться для совместной фильтрации. У меня есть установка Cassandra с одним узлом. Я хочу получить данные от cassandra

Где я могу найти четкие шаги по установке сначала для Hadoop, а затем для mahout для работы с cassandra?


person deggi    schedule 12.01.2011    source источник


Ответы (3)


(Думаю, это тот же вопрос, который вы только что задали на [email protected]? Копирую мой ответ.)

Возможно, вам вообще не нужен Hadoop, а если он вам не нужен, я бы посоветовал вам не использовать его для простоты. Это «необходимое зло» — перешагнуть через определенную точку.

У вас могут быть данные о Cassandra, но вы захотите прочитать их в памяти. Если вы можете сделать дамп в виде файла, вы можете использовать FileDataModel. Или вы можете эмулировать код в FileDataModel, чтобы создать его на основе Cassandra.

Тогда на ваши две потребности легко ответить:

  1. Это даже не проблема рекомендации. Просто выберите реализацию UserSimilarity и используйте ее, чтобы сравнить пользователя со всеми остальными, и выберите тех, у кого наибольшее сходство. (Обертка с CachingUserSimilarity очень поможет.)

  2. Это просто проблема рекомендателя. Используйте GenericUserBasedRecommender с UserSimilarity и DataModel, и все готово.

Это, конечно, может быть намного сложнее, чем это, но это хорошая отправная точка.

Если позже вы будете использовать Hadoop, да, вы должны настроить Hadoop в соответствии с его инструкциями. Нет «настройки» Mahout. Для рекомендателей вы должны посмотреть на один из классов RecommenderJob, который вызывает необходимые задания в вашем кластере Hadoop. Вы бы запустили его с помощью команды «hadoop» — опять же, здесь вам нужно просто понять Hadoop.

В книге Mahout в действии подробно описано большинство заданий Mahout Hadoop.

person Sean Owen    schedule 13.01.2011

Книга Mahout в действии действительно спасла меня от разочаровывающего отсутствия документации.

Я следил за https://issues.apache.org/jira/browse/MAHOUT-180 ... что предполагает синтаксис «hadoop -jar», который только дал мне ошибки. Вместо этого в книге есть «банка», и с этим исправлением моя тестовая работа успешно выполняется.

Вот что я сделал:

  1. использовал утилиту на http://bickson.blogspot.com/2011/02/mahout-svd-matrix-factorization.html?showComment=1298565709376#c3501116664672385942, чтобы преобразовать CSV-представление моей матрицы в формат файла mahout. Скопировал его в файловую систему Hadoop.

  2. Загрузил mahout-examples-0.5-SNAPSHOT-job.jar из только что созданного Mahout на своем ноутбуке в блок управления кластера hadoop. Никаких других погонщиков там нет.

  3. Запустил это: (предполагается, что hadoop настроен; что я подтверждаю с помощью dfs -ls /user/danbri )

hadoop jar ./mahout-examples-0.5-SNAPSHOT-job.jar \ org.apache.mahout.math.hadoop.decomposer.DistributedLanczosSolver \ --input svdoutput.mht --output outpath --numRows 0 --numCols 4 -- ранг 50

...вот получил ли я это право, это совсем другой вопрос, но, кажется, что-то делает!

person Dan Brickley    schedule 24.02.2011

вы можете следовать следующему руководству, чтобы узнать. его простота для понимания и четкое изложение основ Hadoop:

http://developer.yahoo.com/hadoop/tutorial/

person tapan7227    schedule 05.01.2012