1

这个问题回答了我的部分问题,但不完全。

如何运行管理此脚本的脚本,它来自我的本地文件系统吗?像 MrJob 或 Dumbo 这样的东西到底在哪里出现?还有其他选择吗?

我正在尝试运行 K-Means,其中每次迭代(一个 MapReduce 作业)输出将是使用 Hadoop Streaming 和 Python 进行下一次迭代的输入。

我没有太多经验,任何信息都可以帮助我完成这项工作。谢谢!

4

4 回答 4

1

如果您与 Python 的耦合不是很紧密,那么您有一个很好的选择。Cloudera 有一个名为“ Crunch ”的项目,它允许我们轻松地创建 MR 作业的管道。它是一个 java 库,为编写、测试和运行 MapReduce 管道提供框架,并且基于 Google 的 FlumeJava 库。

于 2012-12-17T20:44:37.693 回答
1

还有另一个非 python 选项。Graphlab是一个开源项目,用于在多核机器和集群上免费实现可扩展的机器学习算法。包中包含 Kmeans++ 算法的实现快速可扩展版本。有关详细信息,请参阅Graphlab

在此处输入图像描述

graphlab 的聚类 API 可以在这里找到。

于 2012-12-17T22:38:40.387 回答
0

应该可以使用在 Hadoop 上运行的 GraphLab Create(在 Python 中)来执行您所描述的操作。聚类工具包可以帮助实现 K-Means 部分。您可以从本地计算机协调/编写脚本,并使用graphlab.deploy API在 Hadoop 上运行作业。

于 2014-07-22T21:35:06.147 回答
0

似乎是Spark的一个很好的应用程序,它也有流选项,但我担心它只适用于 Scala,但他们有 Python API,绝对值得一试,它并不难使用(至少是教程)而且它可以大规模。

于 2014-05-23T10:44:49.053 回答