【发布时间】:2012-09-24 11:30:09
【问题描述】:
是否有任何数据挖掘库正在使用(或可供使用)MPI(按摩传递接口)?我正在寻找类似于 Apache Mahout 但可以轻松集成到 MPI 环境中的东西。
我想使用 MPI 的原因是配置(与 Hadoop 相比)很容易。 还是在数据挖掘场景中使用 MPI 没有意义?
【问题讨论】:
标签: hadoop machine-learning cluster-computing mpi data-mining
是否有任何数据挖掘库正在使用(或可供使用)MPI(按摩传递接口)?我正在寻找类似于 Apache Mahout 但可以轻松集成到 MPI 环境中的东西。
我想使用 MPI 的原因是配置(与 Hadoop 相比)很容易。 还是在数据挖掘场景中使用 MPI 没有意义?
【问题讨论】:
标签: hadoop machine-learning cluster-computing mpi data-mining
没有理由说明 MPI(这是一个概念,而不是软件本身!)一定比 Hadoop/Mahout 更容易安装。事实上,后两者目前是一团糟,特别是因为它们的 Java 库混乱。 Apache Bigtop 试图让它们更易于安装,一旦你弄清楚了一些基础知识就可以了。
但是:
有一些努力,例如 Apache Hama,与 MPI 的东西恕我直言非常相似。它基于消息,但是它们通过屏障同步进行批量处理。它还可能在发送之前进行一些消息聚合以减少流量。
【讨论】:
我强烈推荐graphlab。目前,graphlab 是一种分布式图形并行 API,其工具包包括
http://docs.graphlab.org/toolkits.html
GraphLab 是一个基于图的高性能分布式计算框架,用 C++ 编写。虽然 GraphLab 最初是为机器学习任务而开发的,但它在广泛的其他数据挖掘任务中取得了巨大成功;比其他抽象性能好几个数量级。
GraphLab 特点:
统一的多核和分布式 API:一次写入可在共享和分布式内存系统中高效运行 性能优化:优化的 C++ 执行引擎利用广泛的多线程和异步 IO 可扩展性:GraphLab 使用复杂的新算法智能地放置数据和计算 HDFS 集成:直接从 HDFS 访问您的数据 强大的机器学习工具包:轻松将大数据转化为可操作的知识
【讨论】:
这个想法没有意义,我认为你有一些误解,MPI 更适用于紧密耦合的系统,我 99% 肯定不会将消息发送到外部位置,但是你可以处理或分析数据使用 MPI 更快(取决于您的硬件)。我的 2 美分是你最好使用AMQP 协议开源实现之一,我会说 zeromq 是你最好的选择,然后处理你在 R 或 python 中获得的所有数据,或者如果你的数据集非常大MPI。另一种选择是,您可以在连接并运行 MPI 的不同机器上调用串行库,因为它们都单独连接到 Internet。 R 真的很容易用 MPI 调用,python 也是如此。
【讨论】: