【问题标题】:Spark Submit taking additional ContainersSpark Submit 获取额外的容器
【发布时间】:2019-11-05 12:33:09
【问题描述】:

在使用静态分配进行Spark-submit 时,生成的容器数量高于 num-executors 手动提交中提到的数量。作业占用额外资源的任何具体原因。

火花 - 2.4.4

spark-submit \
--name "name" \
--master "yarn" \
--deploy-mode "cluster" \
--queue "queue" \
--driver-memory "1g" \
--executor-memory "1g" \
--num-executors "10" \
--conf spark.yarn.appMasterEnv.PYSPARK_PYTHON=PYSPARK_PYTHON \
--conf spark.sql.autoBroadcastJoinThreshold=-1 \
--conf spark.yarn.submit.waitAppCompletion=false \
--conf spark.serializer=org.apache.spark.serializer.KryoSerializer \
--conf spark.executor.memoryOverhead=512 \
--conf spark.driver.memoryOverhead=512 \
--conf spark.sql.shuffle.partitions=100 \
--conf spark.shuffle.consolidateFiles=true \
--properties-file properties_file \
--archives ZIP_FILE \
--jars  JARS

如果需要任何其他信息,请告诉我。

【问题讨论】:

  • 我在你的参数中没有看到--conf spark.dynamicAllocation.enabled=false。是否在集群范围内禁用?
  • @mazaneicha 通常在进行 Spark-Submit 时,我们使用 --conf spark.dynamicAllocation.enabled=true,因为 EMR 集群是可扩展的(考虑到我觉得它的禁用集群范围很广,尽管我可以通过任何方式检查以重新确认) .但我只是在尝试使用 STATIC 删除配置,并手动提及内存和执行程序。
  • 请尝试--conf spark.dynamicAllocation.enabled=false,看看它是否有效。如果您不确定,我建议从标题中删除 STATIC(全部大写!)。
  • @mazaneicha 成功了,太棒了.. 购买方式你能告诉我如何检查是否有集群范围的动态分配打开? .. 还有任何理由要求删除标题中的 static 关键字

标签: apache-spark hadoop hadoop-yarn amazon-emr


【解决方案1】:

yarn 似乎没有理解您的要求。我不确定,但--num-executors "10" 中的 10 左右的引号可能是多余的。

【讨论】:

    猜你喜欢
    • 2016-03-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-31
    • 2016-10-24
    相关资源
    最近更新 更多