【问题标题】:Default number of executors and cores for spark-shellspark-shell 的默认执行器和核心数
【发布时间】:2016-05-10 08:29:46
【问题描述】:

如果我在 spark shell 中运行一个 spark 程序,该程序是否可能会占用整个 hadoop 集群数小时?

通常有一个名为 num-executors 和 executor-cores 的设置。

spark-shell --driver-memory 10G --executor-memory 15G --executor-cores 8

但是如果它们没有被指定并且我只是运行“spark-shell”......它会消耗整个集群吗?还是有合理的默认值。

【问题讨论】:

    标签: apache-spark


    【解决方案1】:

    大多数配置属性的默认值可以在Spark Configuration documentation 中找到。对于您示例中的配置属性,默认值为:

    • spark.driver.memory = 1g
    • spark.executor.memory = 1g
    • 在 YARN 模式下,spark.executor.cores = 1,在独立模式下,worker 上的所有可用内核。

    此外,您可以通过创建具有所需属性的文件$SPARK-HOME/conf/spark-defaults.conf 来覆盖这些默认值(如here 所述)。然后,如果文件存在并具有所需的值,则无需将它们作为参数传递给 spark-shell 命令。

    【讨论】:

    • 纱线容器的数量呢。
    • @KnowsNotMuch 我对 YARN 上的 Spark 不是很熟悉,但您可以在 Spark 的 Running on YARN documentation 找到您需要的内容
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-02
    • 1970-01-01
    • 1970-01-01
    • 2017-01-02
    • 2014-08-28
    • 2011-05-24
    相关资源
    最近更新 更多