elasticsearch 与 mahout 集成

elasticsearch integration with mahout

我想使用 Mahout 对存储在 elasticsearch 中的数据进行一些预测分析,以查找类似的文档或根据已标记有特定条件的记录推荐其他记录。

我计划创建一个 Mahout 集群,但是 elasticsearch 是否必须位于 Hadoop 集群中才能提供此功能?我需要 运行 es-hadoop 吗?或者 Mahout 是否有其他方式查看 elasticsearch 中的数据?

运行与 elasticsearch 相比,使用 es-hadoop 对速度有什么影响吗?

最近我发现了一个项目,它是一个 ElasticSearch 插件,用于在 elasticsearch 中索引的数据上构建推荐引擎。快来一饱眼福吧。

https://github.com/hadashiA/elasticsearch-flavor

Mahout 不需要与 Elasticsearch 位于同一台机器上,但可以。新的 Mahout 具有基于 Hadoop MapReduce 的行和项目相似性的遗留实现,但这些最终将被弃用,以支持更新的 Spark 实现,这些实现自 Mahout 0.10.0 以来一直在代码中,现在是 0.11.0

PredictionIO 的通用推荐器中有 Mahout 的 Spark 代码与 Elasticsearch 的成熟推荐器集成。请在此处查看 Mahout 和 PIO 的文档: http://mahout.apache.org/users/algorithms/intro-cooccurrence-spark.html https://github.com/PredictionIO/template-scala-parallel-universal-recommendation

至于使用 Elasticsearch 的 es-hadoop,Universal Recommender 使用它的 Spark 实现,我认为最好这样做,因为它针对分布式计算进行了优化。但是没有要求使用它。