我已经计划使用在Hadoop上运行的Mahout提供的一些聚类算法。
现在我看到有一个变化,Mahout正从MapReduce转向Spark。
这让我感到困惑,如何实现这样的系统?我甚至需要Hadoop,为了什么?以及如何结合Mahout和Spark?
由于
答案 0 :(得分:1)
一些有用的事实:
这归结为这样一个事实,即您只能安装所需的东西或安装所有内容,而不必担心单独的算法需要什么。
有几种方法可以在同一个集群或一台机器上安装Spark + Hadoop,最简单的非协调(非常简单),最有效的方法是使用像Mesos或Hadoop的Yarn这样的协调管理器,建议用于大量使用或生产集群。
何时安装Hadoop
基本上总是需要Hadoop。如果您正在使用Mahout群集,则只需要Hadoop使用HDFS和mapreduce - 因此不需要Spark。如果你需要Spark,还有另一个名为MLlib的库,它有一些聚类算法。
这是一个页面,解释了哪些算法基于哪些平台:http://mahout.apache.org/users/basics/algorithms.html
何时安装Spark
截至今天,Scala中有一个广泛的矩阵/向量/线性代数DSL,包括Spark上的一些协同过滤算法。所以Spark只需要那些人,但是在我们编写时会实现更多。