hadoop - 使用 mahout 和 hadoop

标签 hadoop cassandra mahout

我是一个新手,想了解如何将 mahout 和 hadoop 用于协同过滤。我有单节点 cassandra 设置。我想从 cassandra 中获取数据

我在哪里可以找到先安装 hadoop 然后安装 mahout 以与 cassandra 一起使用的明确安装步骤?

最佳答案

(我认为这与您刚刚在 user@mahout.apache.org 上提出的问题相同?复制我的答案。)

您可能根本不需要 Hadoop,如果不需要,为简单起见,我建议您不要使用它。规模超过某个点是“必要之恶”。

您可以在 Cassandra 上拥有数据,但您希望能够将其读入内存。如果可以转储为文件,则可以使用 FileDataModel。或者,您可以模拟 FileDataModel 中的代码来创建一个基于 Cassandra 的代码。

那么,你的两个需求就很容易得到满足了:

  1. 这甚至不是推荐 问题。只需选择一个实现 UserSimilarity,并用它来 将用户与所有其他用户进行比较,以及 选择最高的 相似。 (包裹着 CachingUserSimilarity 将有助于 很多。)

  2. 这只是一个推荐人 问题。用一个 GenericUserBasedRecommender 与 你的 UserSimilarity 和 DataModel 你就完成了。

它当然可以变得比这复杂得多,但这是一个很好的起点。

如果您以后使用 Hadoop,是的,您必须根据其说明设置 Hadoop。没有 Mahout“设置”。对于推荐系统,您可以查看其中一个 RecommenderJob 类,它会在 Hadoop 集群上调用必要的作业。您可以使用“hadoop”命令运行它——同样,这是您只需要了解 Hadoop 的地方。

本书Mahout in Action详细介绍了大部分 Mahout Hadoop 作业。

关于hadoop - 使用 mahout 和 hadoop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4667751/

相关文章:

python - 程序在具有hadoop的AWS EMR上失败(在本地计算机上正常)

Cassandra : memory consumption while compacting

hadoop - 通过将itemid列与userid交换,我可以将基于item的Hadoop实现用于基于用户的实现吗?

hadoop - 使用Mahout的随机森林

java - Mahout 0.9 和 Hadoop 2.2.0 - 找到接口(interface) org.apache.hadoop.mapreduce.JobContext,但类是预期的

hadoop - 无法将窗口调用分解为组。至少 1 组必须仅依赖于输入列。同时检查循环依赖

apache-spark - 为什么缓存小型 Spark RDD 需要在 Yarn 中分配大量内存?

cassandra - cassandra cqlsh 中的 OR 操作

Node.js lsof - 许多打开的数据库连接

hadoop - 使用$ HIVE METASTORE JARS指定指向正确的配置单元jar的有效路径,或将spark.sql.hive.metastore.version更改为1.2.1。