EMR-5.32.0 上的 Spark 未生成请求的执行程序

2024-02-06

我在 EMR(版本 5.32.0)上的 (Py)Spark 中遇到了一些问题。大约一年前,我在 EMR 集群上运行了相同的程序(我认为版本一定是 5.29.0)。然后我可以使用配置我的 PySpark 程序spark-submit正确地论证。但是,现在我正在运行相同/相似的代码,但是spark-submit争论似乎没有任何作用。

我的集群配置:

  • 主节点:8 个 vCore、32 GiB 内存、仅 EBS 存储 EBS 存储:128 GiB
  • 从节点:10 x 16 vCore、64 GiB 内存、仅 EBS 存储 EBS 存储:256 GiB

我用以下命令运行程序spark-submit论点:

spark-submit --master yarn --conf "spark.executor.cores=3" --conf "spark.executor.instances=40" --conf "spark.executor.memory=8g" --conf "spark.driver.memory=8g" --conf "spark.driver.maxResultSize=8g" --conf "spark.dynamicAllocation.enabled=false" --conf "spark.default.parallelism=480" update_from_text_context.py

我没有更改集群上的默认配置中的任何内容。

下面是 Spark UI 的屏幕截图,显示只有 10 个执行程序,而我预计有 40 个可用执行程序......

我尝试了不同的spark-submit参数以确保错误与无关Apache Spark:设置执行程序实例不会更改执行程序 https://stackoverflow.com/questions/29940711/apache-spark-setting-executor-instances-does-not-change-the-executors。我尝试了很多方法,但似乎没有任何帮助。

我在这里有点迷失,有人可以帮忙吗?

UPDATE:我在 EMR 版本标签 5.29.0 上运行了相同的代码,并且在spark-submit论证似乎有效:

为什么会发生这种情况?


很抱歉造成混乱,但这是故意的。在 emr-5.32.0 上,Spark+YARN 会将到达同一节点的多个执行程序请求合并到一个更大的执行程序容器中。请注意,尽管您的执行程序比您预期的要少,但每个执行程序都具有您指定的更多内存和内核。 (不过,这里有一个星号,我将在下面解释。)

此功能旨在在大多数情况下默认提供更好的性能。如果您确实希望保留以前的行为,您可以通过设置spark.yarn.heterogeneousExecutors.enabled=false来禁用这个新功能,尽管我们(我在EMR团队)希望听到您关于为什么以前的行为是优选的。

不过,对我来说没有意义的一件事是,您最终应该得到与没有此功能时相同的执行器核心总数,但对于您共享的示例来说,这种情况似乎没有发生。您要求 40 个执行程序,每个执行程序有 3 个核心,但后来得到了 10 个执行程序,每个执行程序有 15 个核心,总​​共有点多。这可能与您请求的 8g 的 Spark.executor.memory 划分为您所选实例类型上可用内存的方式有关,我猜测可能是 m5.4xlarge。可能对您有帮助的一件事是删除spark.executor.memory/cores/instances 的所有覆盖并仅使用默认值。我们希望默认值在大多数情况下都能提供最佳性能。如果没有,就像我上面说的,请告诉我们,以便我们进一步改进!

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

EMR-5.32.0 上的 Spark 未生成请求的执行程序 的相关文章

随机推荐

  • python:多行正则表达式

    我有一段文本 我必须从中解析用户名和哈希值 现在我正在使用两个正则表达式来完成它 我可以只用一个多行正则表达式来完成吗 usr bin env python import re test str Hello UserName Please
  • HttpRuntime 缓存和 HttpContext 缓存有什么区别?

    我知道有一个非常相似的问题here https stackoverflow com questions 863654 difference b w httpruntime cache vs httpcontext current cache
  • 如何修改继续时的 Step StepState

    我正在关注这个教程https www youtube com watch v izbkS2svuq4 https www youtube com watch v izbkS2svuq4 并简要提到将 StepState 修改为 StepSt
  • Silex 设置 cookie

    我正在使用 Silex Framework 并且我正在拼命尝试设置 cookie 文档中找不到任何信息 我几乎尝试了所有方法 有人可能有这方面的经验 并且可以提供一个小例子吗 Thanks 以下是我的一个网站的摘录 该网站设置了 cooki
  • 如何使用命名管道从 C++ 调用 WCF 方法?

    更新 查看协议here http msdn microsoft com en us library cc219293 28v PROT 10 29 aspx 我不知道 Unsized Envelope Record 中会包含什么内容 我在网
  • 如何动态创建

    我想在我的网络表单中动态创建输入类型文本 更具体地说 我有一个文本字段 用户可以在其中输入所需文本字段的数量 我希望以相同的形式动态生成文本字段 我怎么做 使用 JavaScript var input document createEle
  • 通过超链接打开新的gridview

    如何通过同一页面上的超链接打开一个新的 gridview 当用户单击此表上的任何超链接时 我不想关闭现有的 gridview 而是想显示与此相邻的另一个 gridview 我有一些如下所示的数据 当我单击这些超链接中的任何一个时 我想在同一
  • 如何递归地忽略 git 存储库中的所有隐藏目录/文件?

    我想让 Git 忽略所有隐藏的文件和目录 IE aptitude ssh bash rc config hidden 是否有一个简单的规则可以涵盖这个问题而无需专门添加每个条目 只需添加一个图案即可 gitignore gitignore
  • REST 和大型数据库查询

    众所周知 ReST Web 服务无法保存状态 当我考虑大型数据库事务时 这对我来说是一个问题 我想知道您是否可以提供帮助 我的 ReST Web 服务有一个主要作用 对数据库执行 CRUD 操作 问题是 如果我必须查询包含数千行的表并将其作
  • 使用 JavaScript 添加外部样式表

    我需要使用外部 javascript 文件在标头中添加指向外部 css 文件的链接 不要问为什么 我只需要这样做 document write 顺便说一句 不起作用 var element document createElement li
  • 如何在文本上应用 CSS 渐变(从透明颜色到不透明颜色)

    Cheers 我是 CSS HTML 的新手 但我想在文本上应用渐变 如下图所示 我如何用css来实现它 相关CSS在伪元素上 after of the
  • jquery 与相同脚本冲突

    我正在使用 jquery 将内容加载到选项卡中 并在单击时切换选项卡 我的问题是 我在一页中使用了这个 选项卡切换器 两次 并且它导致了冲突 我对jquery不太有经验 所以我的问题可能在于我在头脑中创建了两次函数 这是我的 jquery
  • ST_Buffer 相当于 MySQL 中基于圆的搜索吗?

    我需要使用 MySQL GIS 搜索具有指定圆内的点的行 伪代码示例查询是 select from gistable g where isInCircle g point circleCenterPT radius 看来 PostGIS 可
  • AWS ELB(弹性负载均衡器)有时会立即返回 504(网关超时)

    我目前正在将应用程序切换到亚马逊 但我注意到有时收到的响应是 504 我们的系统设置方式是在 ELB 前面有一个 LB 然后直接转到 tomcat 目前 我们正在对服务中的所有请求以及记录响应时间的 servlet 过滤器进行计时 它们始终
  • Zip Mime 类型无法识别

    我正在尝试返回一个 zip 文件 作为浏览器上的流 这适用于其他类型的文件 例如 Excel 文件 但是当我开始处理 zip 文件时 我无法让浏览器识别出它是 zip 我的测试机上运行的 Firefox 和 IE 都会提示 询问使用什么程序
  • Python UCS2 从十六进制字符串解码

    我正在使用 python 2 7 需要将十六进制字符串解码为 un icode 字符串 在 php 中 我做了以下简单的操作 line hex2bin line finish iconv UCS 2BE UTF 8 nline 例如十六进制
  • 我可以在 android xml 布局或字符串值文件中编写 java 代码吗?

    我想知道是否可以在 android XML 布局或字符串值文件中编写 java 代码 我的意思是这样的
  • 给定3个点,如何构造穿过它们的弧?

    假设我有 3 个连续点 P1 P2 P3 如何构造一条经过所有3个点的弧 弧必须具有以下 3 个属性 开始弧度 结束弧度 中心点 弧线是从Start Radian to End Radian以逆时针方向 我已经尝试过解决方案here htt
  • 东向北转纬度经度

    我有东向 北向格式的位置坐标 但我需要将其转换为正确的经纬度 以使其在 bing 地图中居中 有任何公式或详细信息如何将东距 北距转换为纬度 经度吗 编辑 更具体地说 我需要将 SVY21 坐标转换为 WGS84 东距和北距分别是基点向东和
  • EMR-5.32.0 上的 Spark 未生成请求的执行程序

    我在 EMR 版本 5 32 0 上的 Py Spark 中遇到了一些问题 大约一年前 我在 EMR 集群上运行了相同的程序 我认为版本一定是 5 29 0 然后我可以使用配置我的 PySpark 程序spark submit正确地论证 但