【问题标题】:Hadoop cluster for non-MapReduce algorithms in parallel用于并行非 MapReduce 算法的 Hadoop 集群
【发布时间】:2013-04-01 15:19:11
【问题描述】:

Apache Hadoop 的灵感来自 Google MapReduce 论文。 MapReduce 的流程可以看作是两组 SIMD(单指令多数据),一组用于 Mappers,另一组用于 Reducers。 Reducers 通过预定义的“key”消耗 Mappers 的输出。 MapReduce框架(和Hadoop)的本质是自动对数据进行分区,确定分区数量和并行作业,管理分布式资源。

我有一个并行运行的通用算法(不一定是 MapReducable)。我没有以 MapReduce 方式实现算法本身。相反,该算法只是一个单机 python/java 程序。我想并行运行这个程序的 64 个副本(假设程序中没有并发问题)。即我对 Hadoop 集群中的计算资源比对 MapReduce 框架更感兴趣。无论如何我可以以这种旧方式使用 Hadoop 集群吗?

【问题讨论】:

    标签: hadoop parallel-processing cluster-computing


    【解决方案1】:

    关于 MapReduce 的另一种思考方式是,MR 进行转换,Reduce 进行某种聚合。

    Hadoop 还允许仅映射作业。这样应该可以并行运行 64 个 Map 程序副本。

    Hadoop 有槽的概念。默认情况下,每个节点/机器将有 2 个 map 和 2 个 reduce 插槽。因此,对于 64 个并行进程,需要 32 个节点。如果节点配置较高,则每个节点的 M/R 插槽数也可以增加。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多