Hadoop 上理想的减速器数量是多少?

2023-11-25

正如 Hadoop wiki 给出的,计算理想的减速器数量是 0.95 或 1.75 * (节点 * mapred.tasktracker.tasks.maximum)

but 什么时候选择0.95,什么时候选择1.75?决定这个乘数时考虑的因素是什么?


假设您的集群中有 100 个可用的reduce 槽。

当负载因子为 0.95 时,所有 95 个reduce 任务将同时启动,因为有足够的reduce 槽可用于所有任务。这意味着队列中不会有任何任务等待,直到其余任务之一完成为止。当减少任务“小”时,即完成相对较快,或者它们都需要或多或少相同的时间时,我会推荐此选项。

另一方面,当负载因子为 1.75 时,100 个reduce 任务将同时启动,数量与可用的reduce 槽数量相同,其余75​​ 个将在队列中等待,直到有可用的reduce 槽。这提供了更好的负载平衡,因为如果某些任务比其他任务“更重”,即需要更多时间,那么它们将不会成为作业的瓶颈,因为其他减少槽现在不会完成其任务并等待,而是会成为作业的瓶颈。正在执行队列中的任务。这也减轻了每个reduce任务的负载,因为map输出的数据被分散到更多的任务中。

如果我可以表达我的意见,我不确定这些因素是否总是理想的。通常,我使用大于 1.75 的系数(有时甚至是 4 或 5),因为我正在处理大数据,并且我的数据并不适合每台机器,除非我将这个系数设置得更高并且负载平衡也更好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Hadoop 上理想的减速器数量是多少? 的相关文章

随机推荐

  • *.h 或 *.hpp 用于您的类定义

    我一直用一个 h文件我的类定义 但在阅读了一些 boost 库代码后 我意识到它们都使用 hpp 我一直讨厌该文件扩展名 我想主要是因为我不习惯它 使用有什么优点和缺点 hpp over h 以下是对 C 和 C 头文件进行不同命名的几个原
  • 将数组转换为嵌套对象

    假设我有以下数组 产品 型号 版本 我想要一个对象 例如 product model version 然而 该数组是动态的 因此它可以有 2 个 3 个或更少的项目 如何以最有效的方式实现这一目标 Thanks 只需将其翻过来 然后将内部对
  • 避免在复制构造函数和运算符=中重复相同的代码

    在 C 中 当类包含动态分配的数据时 显式定义复制构造函数 operator 和析构函数通常是合理的 但这些特殊方法的活动是重叠的 更具体地说 operator 通常首先进行一些破坏 然后进行与复制构造函数中类似的处理 我的问题是如何以最佳
  • Android 通知未在 Marshmallow 中显示颜色图标

    我正在制作应用程序 我从中获取数据Parse并将数据传输到Notification以生成并向用户显示 但由于某种原因 我无法在棉花糖中显示正确的彩色图标 在其他所有 Android 版本中 它都工作得很好 但在 Marshmallow 中
  • 如何在 Android 中签署 PDF

    我必须在 Android 应用程序中实现一个允许我签署 PDF 的功能 当我说 签名 时 我指的是用户附加到文档末尾的数字签名 名字和名字 我可以使用三星 Note 4 带手写笔 那么在显示屏上 书写 就不成问题了 问题是 可以使用 ite
  • 我现在应该如何使用带 PCL 或不带 PCL 的 Azure 移动服务?

    我更新到最新版本的 Xamarin 其中 完全支持 PCL 我现在如何使用 Azure 移动服务 如果我创建 PCL lib 并尝试使用 NuGet 添加它 则无法安装 Newtonsoft Json 5 0 8 因为它需要缺少 porta
  • 导出jar后没有声音

    我的应用程序有问题 当我在 Eclipse 中运行应用程序时 声音播放得很好 但如果我将应用程序导出到可运行的 jar 声音就不起作用 方法 播放声音的地方 public static synchronized void playSound
  • 使用 htaccess 重写/重定向,使单个 PHP 文件可以根据 GET/POST 变量显示数据

    请耐心等待我尝试了解有关 htaccess 重定向规则的更多信息 我是一名专业 UI 人员 我正在尽最大努力提高我的编码技能 除 HTML CSS PHP 等之外的语言 所以 我拥有的是一个包含菜单的 index php 文件 非常简单 如
  • 阻止未经所有者许可复制和使用应用程序的最佳方法是什么?

    避免应用程序在所有者不知情的情况下被复制和使用的最佳方法是什么 有什么办法可以追踪使用情况吗 这意味着应用程序会定期进行通信 并提供足够的信息 以便我们知道它在哪里以及是否合法 当然 如果它不合法 下一步就是将其关闭 打电话回家 的软件将很
  • T-SQL 相当于 Excel“MAX”函数,返回两个数字中较大的一个[重复]

    这个问题在这里已经有答案了 可能的重复 SQL Server 中是否有像 NET 中的 Math Max 一样接受两个值的 Max 函数 在 Excel 中 有一个名为 MAX 的函数 它接受数字并返回集合中最大的数字 T SQL 中是否有
  • 带有 XML 架构本地副本的 XML 文件

    我正在尝试一些 XML 架构示例 并且必须使用示例 XML 文件来验证它们 该架构是本地文件 someFile xsd 我正在使用 Eclipse 并且希望在 XML 文件中包含一个引用以指向此本地 xsd 文件 以便 Eclipse 可以
  • IE 10, 11. 如何防止带有占位符的文本输入触发焦点输入事件?

    在 IE 11 中 如果我的电子邮件为空input with a placeholder 然后单击 聚焦 它 input事件正在被触发 有谁知道为什么并且有解决方案吗 因为input值真的没有改变吗 var el document getE
  • JSX 中立即调用的函数表达式

    我正在开发 React 项目 我正在尝试编译但找不到为什么会出现此语法错误 具体来说 模式 gt 在这种情况下正在做什么 Module build failed SyntaxError Unexpected token expected 3
  • 如何用 XML 序列化子类及其基类

    我可以序列化单个类型 类 但是有没有办法也可以序列化它的基类 例如 class B A 在这里我可以序列化 B 类 但是如何序列化 A 类 A必须提前知道 即 XmlInclude typeof B public class A publi
  • 在我的 WPF 应用程序中托管 Windows Shell Explorer

    是否可以将 Windows 资源管理器文件 文件夹浏览器视图嵌入到 WPF 或 WinForms 窗口中 我基本上想将文件 文件夹浏览器作为我的应用程序窗口的一部分托管 我不想重新实现 shell 提供的功能 尤其是像 TortoiseSV
  • 如何使用javascript突出显示文本

    有人可以帮助我使用一个可以突出显示网页上文本的 JavaScript 函数吗 要求是仅突出显示一次 而不是像我们在搜索时那样突出显示所有出现的文本 你可以使用jquery突出效果 但如果您对原始 javascript 代码感兴趣 请看看我得
  • 如何在groovy中添加当前日期的年份或月份?

    如何在groovy脚本中向当前日期添加一年 def Format1 yyyy MM dd def today new Date def currentDate today format Format1 例如 2015年7月29日至2016年
  • 如何在 Firestore 中跨集合查询数据?

    下面的文档中写道 如果需要跨集合查询数据 请使用根级集合 https cloud google com firestore docs data model 如果有人知道在 Firestore 中跨根级集合查询数据的示例 请分享该示例 我不确
  • Java有可索引的多队列线程池吗?

    是否有一个 Java 类 可以通过 id 添加可执行任务 其中具有相同 id 的所有任务保证永远不会同时运行 线程数可以限制为固定数量 简单的 Map 解决方案可以轻松解决 1 但很难管理 2 同样 我所知道的所有线程池类都会从单个队列中提
  • Hadoop 上理想的减速器数量是多少?

    正如 Hadoop wiki 给出的 计算理想的减速器数量是 0 95 或 1 75 节点 mapred tasktracker tasks maximum but 什么时候选择0 95 什么时候选择1 75 决定这个乘数时考虑的因素是什么