【问题标题】:Spark with Yarn: Point in providing spark-resource related parameters?Spark with Yarn:提供火花资源相关参数的要点?
【发布时间】:2015-04-10 22:15:59
【问题描述】:

我正在阅读有关 Spark 和资源管理的文献,例如 Yarn。

我想我理解了基本概念以及 Yarn 如何将 Spark Master/Workers 封装在容器中。

仍然提供--driver-memory--executor-memory--number-executors 等资源参数有什么意义? Yarn-application-master(spark-master) 不应该找出需求并相应地请求新资源吗? 或者通过提供这个参数来干预资源协商过程是否明智?

【问题讨论】:

    标签: apache-spark hadoop-yarn


    【解决方案1】:

    Spark 需要从 YARN 协商资源。提供资源参数告诉 Spark 要从 YARN 请求多少资源。

    对于 YARN 上的执行者:

    1. Spark 应用程序使用固定数量的执行程序(默认值 = 2)。
    2. spark-submit、spark-shell 等的--num-executors 标志设置了预期的执行器数量。

    对于 YARN 上的内存管理:

    1. 使用--executor-memory设置每个执行器使用的内存。
    2. 设置--executor-cores 告诉Spark 要从YARN 申请多少核心。
    3. 使用--driver-memory 设置驱动程序进程的内存量。

    一些通用的 Spark-on-YARN 注释:

    1. 如果您的 YARN 集群将应用程序安排到队列中,请使用 --queue 选项。
    2. Spark 已针对内存计算进行了优化,因此请向 YARN 寻求较少数量的内存密集型执行器(具有多个内核和更多内存)。如果您在 YARN 中设置了内存上限,请小心。

    Spark on YARN Documentation 有更多详细信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-14
      • 2018-12-08
      • 2018-12-07
      • 2016-02-03
      • 2016-09-06
      • 2011-01-01
      • 1970-01-01
      • 2017-08-17
      相关资源
      最近更新 更多