我需要使用最新的 mahout 版本 0.9(因为我需要使用所有分布式推荐算法)。为此,我应该使用哪个版本的 hadoop?
在某些地方,有人提到 hadoop 2.20 不适用于 mahout 0.9。因此,我可以使用 mahout 0.9 的最低 hadoop 版本是什么。
如果我使用的是 cloudera(CDH),我应该使用什么版本来处理 mahout 0.9。
我需要使用最新的 mahout 版本 0.9(因为我需要使用所有分布式推荐算法)。为此,我应该使用哪个版本的 hadoop?
在某些地方,有人提到 hadoop 2.20 不适用于 mahout 0.9。因此,我可以使用 mahout 0.9 的最低 hadoop 版本是什么。
如果我使用的是 cloudera(CDH),我应该使用什么版本来处理 mahout 0.9。
所有这些 Mahout 版本的默认构建都适用于 Hadoop 1.x,而不是 2.x。所以答案是 0.9 实际上主要适用于较旧的 Hadoop 版本,您可以使用它的最低版本最多是 1.x。
更高版本(从大约 0.8 开始?)支持使用应与 Hadoop 2 互操作的备用 Maven 配置文件进行构建。如果您愿意,您可以随时使用构建以获得可能与给定 Hadoop 发行版的 Hadoop 版本一起使用的版本.
由于即使 CDH 4.x 也是基于 Hadoop 2.x,Mahout 0.7 的发行版也包含了封装更改,这些更改也设法使其在 Hadoop 2 上互操作。其他供应商也做了类似的事情,这些更改已经回到上游。
因此,这些版本中的每一个的 CDH 发行版已经与其匹配的 Hadoop 版本兼容,即使基于 Hadoop 2 也是如此。
CDH 5.0.0 基本上基于 Hadoop 2.3。您可以通过在其构建中以 Hadoop 版本 2.3.0 为目标,然后在集群上使用您自己的 Mahout 构建来使用 Mahout 0.9。
我们目前使用的是 CDH 5.0.x 集群,但还需要对 Mahout 0.9 进行一些修复和改进。
因此,我们使用 CDH 5.1.Snapshot 版本的 Mahout 0.9 打包 JAR 程序集,并通过“hadoop jar”命令简单地执行它。
当然你不能使用 Mahout 0.9 命令行界面,但至少我们可以编写自己的 Jobs。