gpt4 book ai didi

memory - 如何为 apache spark worker 更改每个节点的内存

转载 作者:IT王子 更新时间:2023-10-28 23:28:48 25 4
gpt4 key购买 nike

我正在配置一个 Apache Spark 集群。

当我使用 1 个主设备和 3 个从设备运行集群时,我在主监控页面上看到了这个:

Memory
2.0 GB (512.0 MB Used)
2.0 GB (512.0 MB Used)
6.0 GB (512.0 MB Used)

我想增加工作人员使用的内存,但我找不到合适的配置。我已将 spark-env.sh 更改如下:

export SPARK_WORKER_MEMORY=6g
export SPARK_MEM=6g
export SPARK_DAEMON_MEMORY=6g
export SPARK_JAVA_OPTS="-Dspark.executor.memory=6g"
export JAVA_OPTS="-Xms6G -Xmx6G"

但是使用的内存还是一样的。我应该怎么做才能改变使用的内存?

最佳答案

使用 1.0.0+ 并使用 spark-shell 或 spark-submit 时,请使用 --executor-memory 选项。例如

spark-shell --executor-memory 8G ...

0.9.0 及以下:

当你开始一个工作或启动 shell 时改变内存。我们必须修改 spark-shell 脚本,以便它将命令行参数作为底层 java 应用程序的参数传递。特别是:

OPTIONS="$@"
...
$FWDIR/bin/spark-class $OPTIONS org.apache.spark.repl.Main "$@"

然后我们可以如下运行我们的spark shell:

spark-shell -Dspark.executor.memory=6g

当为独立 jar 配置它时,我在创建 spark 上下文之前以编程方式设置系统属性并将值作为命令行参数传递(然后我可以使它比冗长的系统属性更短)。

System.setProperty("spark.executor.memory", valueFromCommandLine)

至于更改默认集群范围,抱歉,不完全确定如何正确执行。

最后一点 - 我有点担心您有 2 个 2GB 节点和一个 6GB 节点。您可以使用的内存将被限制为最小的节点 - 所以这里是 2GB。

关于memory - 如何为 apache spark worker 更改每个节点的内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24242060/

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