【问题标题】:How can load balancing be handled in Hadoop mapreduce?在 Hadoop mapreduce 中如何处理负载均衡?
【发布时间】:2013-02-23 17:11:00
【问题描述】:

如何在 Hadoop mapreduce 中处理负载平衡?我正在编写一个分布式应用程序,其中服务器根据基准测试、可用内存、CPU 内核数量、CPU 使用率、可用 GPU 数量/使用情况将作业分配给工作节点?我对 mapreduce 不是很有经验,并且已经阅读了 apache 网站上的一些文档,但仍然不确定如何解决这个问题。我可以进行基准计算并获取所有这些信息,然后通过算法动态拆分输入吗?

谢谢!

【问题讨论】:

  • 我认为这个链接可能会有所帮助:bradhedlund.com/2011/09/10/…
  • 感谢您提供了有关 mapreduce 的非常丰富的信息,但我们不会处理大量数据本身,文章仅提及平衡存储。我想知道我是否可以根据从节点的功能动态平衡负载:将运行的基准测试、CPU 速度/内核数/CPU 使用率、GPU 数/使用率、可用主内存。跨度>

标签: java apache hadoop mapreduce distributed


【解决方案1】:

“MapReduce 是一种用于处理和生成大型数据集的编程模型和相关实现” MapReduce 论文摘要的摘录。

正如您在 cmets 中所说,您的项目似乎不是数据密集型而是计算密集型,因此我认为 MapReduce 不是您需要使用的工具。

【讨论】:

    【解决方案2】:

    MapReduce 系统的性能很大程度上取决于均匀的数据分布。 Apache MapReduce 框架使用一种简单的方法来分配工作负载并将相同数量的集群分配给每个 reducer。

    负载不平衡会增加处理时间,甚至会因 reducer 任务的高运行时复杂性而加剧。需要一种自适应负载平衡策略来解决根据给定成本模型估计分配给减速器的任务成本的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-29
      • 2012-07-15
      • 2021-12-07
      • 2023-03-10
      • 1970-01-01
      • 2015-09-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多