我们可以为所有作业/应用程序使用相同的 Spark 配置吗?

时间:2021-02-21 08:23:34

标签: apache-spark pyspark apache-spark-sql

我正在尝试了解 Spark Config,我看到正在根据集群计算 executor 、executor cores 和 executor memory 的数量。例如: 集群配置: 10个节点 每个节点 16 个内核 每个节点 64GB RAM 推荐配置是 29 个执行器,每个 18GB 内存,每个 5 个内核!!

但是,此配置是否与集群上运行的所有作业/应用程序相同?如果同时运行 1 个以上的作业/应用程序会怎样?此外,无论我处理的数据是 1GB 还是 100GB,此配置是否都相同,或者配置是否也会根据数据更改,如果是,如何计算?

推荐配置参考-https://spoddutur.github.io/spark-notes/distribution_of_executors_cores_and_memory_for_spark_application.html

1 个答案:

答案 0 :(得分:0)

spark 中的默认配置将应用于所有作业,您可以在 spark-defaults.conf 中设置。

在yarn的情况下:如果没有足够的资源可用,作业会自动放入队列

您可以在 spark 提交过程中设置执行程序内核的数量和其他配置以覆盖默认值。您也可以查看动态分配以避免自己执行此操作,这不能保证与您自己设置配置一样有效。

相关问题