gpt4 book ai didi

apache-spark - yarn : Less executor memory than set via spark-submit 上的 Spark

转载 作者:行者123 更新时间:2023-12-01 13:43:00 24 4
gpt4 key购买 nike

我在 YARN 集群 (HDP 2.4) 中使用 Spark,设置如下:

  • 1 个主节点
  • 64 GB RAM(48 GB 可用)
  • 12 核(8 核可用)
  • 5个从节点
  • 每个 64 GB RAM(48 GB 可用)
  • 每个 12 核(8 核可用)
  • yarn 设置
  • 所有容器(一台主机)的内存:48 GB
  • 最小容器大小 = 最大容器大小 = 6 GB
  • 集群中的 vcores = 40(5 x 8 个 worker 核心)
  • 最小#vcores/container = 最大#vcores/container = 1

  • 当我使用命令 spark-submit --num-executors 10 --executor-cores 1 --executor-memory 5g ... 运行我的 spark 应用程序时Spark 应该为每个执行程序提供 5 GB 的 RAM(由于一些开销内存约为 10%,我将内存设置为 5g)。

    但是当我查看 Spark UI 时,我看到每个执行程序只有 3.4 GB 的内存,请看截图:

    screenshot

    有人能解释一下为什么分配的内存这么少吗?

    最佳答案

    UI 中的存储内存列显示用于执行和 RDD 存储的内存量。默认情况下,这等于 (HEAP_SPACE - 300MB) * 75%。其余的内存用于内部元数据、用户数据结构和其他内容。

    您可以通过设置 spark.memory.fraction 来控制这个数量。 (不建议)。查看更多 Spark's documentation

    关于apache-spark - yarn : Less executor memory than set via spark-submit 上的 Spark ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38347036/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com