- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我如何更改/建议不同的容器分配给 Hadoop 中的任务?关于 AWS 上的原生 Hadoop (2.9.1) 集群。
我在 AWS(使用 EC2,而不是 EMR)上运行原生 Hadoop 集群 (2.9.1),我希望容器(Mappers/Reducers)的调度/分配比目前更加平衡。看起来 RM 正在以 Bin Packing 方式(数据所在的位置)分配 Mappers,对于 reducers,它似乎更平衡。我的设置包括三台机器,复制率为三(所有数据都在每台机器上),我用 mapreduce.job.reduce.slowstart.completedmaps=0 运行我的作业,以便尽快开始洗牌(这对我很重要即所有容器并发,这是必须条件)。此外,根据我选择的 EC2 实例和 YARN 集群的设置,我最多可以运行 93 个容器(每个容器 31 个)。
例如,如果我想要 9 个 reducer,那么 (93-9-1=83) 83 个容器可以留给映射器,一个留给 AM。我玩过拆分输入的大小(mapreduce.input.fileinputformat.split.minsize,mapreduce.input.fileinputformat.split.maxsize),以便找到正确的平衡,所有机器都具有相同的“工作” map 阶段。但似乎前 31 个映射器将分配在一台机器上,接下来的 31 个映射器分配给第二台机器,最后 31 个映射器分配在最后一台机器上。因此,我可以尝试使用 87 个映射器,其中 31 个在机器 #1 中,另外 31 个在机器 #2 中,另外 25 个在机器 #3 中,其余的留给 reducer ,因为机器 #1 和机器 #2 完全被占用,那么 reducer 必须放置在机器 #3 中。通过这种方式,我以不平衡的 reducer 分配为代价获得了几乎平衡的映射器分配。而这不是我想要的...
# of mappers = size_input/split size [Bytes],
拆分大小= max(mapreduce.input.fileinputformat.split.minsize, min(mapreduce.input.fileinputformat.split.maxsize, dfs.blocksize))
最佳答案
我使用的是默认调度程序(容量),默认情况下 yarn.scheduler.capacity.per-node-heartbeat.maximum-container-assignments
设置为 -1(无穷大),这解释了原因每个首先响应 RM(使用 Heartbeat)的节点都在尽可能多地“打包”容器。总而言之,将上述参数插入到 hadoop/etc/hadoop/capacity-scheduler.xml 中(使用三分之一数量的映射器将导致映射器的平衡调度)并在 yarn rmadmin -refreshQueues
之后重新启动 RM 将授予您平衡 YARN 中容器分配的选项。
更多详情请搜索我的讨论here .
关于hadoop - 如何建议在 Hadoop 集群中更均衡地分配容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54056970/
如何检查枚举是否等于可能情况之一。有没有比以下更好的解决方案: [.orderedAscending, .orderedSame].contains(Calendar.current.compare(
我正在尝试使用 openCV 和 C++ 来均衡 HSV 图像的直方图。我知道有些带有 openCV 的库可以为我执行此操作,但我想手动尝试以了解该方法。 我假设均衡将在 HSV 图像的 V chan
我有一个包含多个列的表格。这些列可以包含不同大小的内容,因此高度会有所不同。 我想做的是调整单个元素的高度,使它看起来像这样: . .table { display: flex; ba
:) 我有一个小问题: 我有一个 div,在里面有两个 div,一个挨着另一个。左边的一个在调整大小时改变其高度以保持其与宽度的关系,我希望右边的一个与左边的高度相同;我在文档末尾的 jQuery 中
我正在尝试在 YAML 中创建三列布局。我正在使用此框架的网格功能来定位列(导航、内容、侧边栏)。 我的问题:如何将所有三个 div 的高度设置为相同的大小。 YAML 应该提供 ym-equaliz
这个问题在这里已经有了答案: How do I keep two side-by-side div elements the same height? (24 个答案) 关闭 5 年前。 有没有一种
好像我的 JavaScript 没有听我的。我只是想将所有 anchor 的高度设置为等于这些 anchor 的最高高度。 HTML {{products.title}}
我想对同一主题的两个半脸彩色图像进行均衡,然后将它们合并。它们每个都有不同的色调饱和度和亮度值....使用 opencv 我如何标准化/均衡每个半图像? 我尝试执行 cvEqualizeHist(v,
当一个div高度很大时,我想等于两个div的高度 例子: B ACD Div 2 的高度大于 div 1 最佳答案 我可能有一个可能的解决方案: http://jsfiddle.net/adaz/w
我正在尝试做类似的事情(我已经删除了不必要的东西) Models.Parent.findAll({ where: { parent_id: {
我在 node 中使用 typescript,它在开发模式下运行良好,通过使用以下命令运行我的 index.ts 和 ts-node。 ts-node src/index.ts 但是当我将 types
我是一名优秀的程序员,十分优秀!