【问题标题】:Spark Submit Configuration while running parallel jobs in EMR在 EMR 中运行并行作业时 Spark 提交配置
【发布时间】:2017-11-26 23:20:56
【问题描述】:

我们目前正在使用 Datapipeline 中的 HadoopActivity 任务在 EMR 集群上运行并行 Spark 作业。默认情况下,较新版本的 EMR 集群将 spark 动态分配设置为 true,这将根据负载增加/减少所需的执行器数量。那么我们是否需要设置任何其他属性以及 spark-submit 例如核心数量、执行器内存等,还是让 EMR 集群动态处理它最好?

【问题讨论】:

  • 如何使用 HadoopActivity 运行 Spark 作业?我正在使用 EmrActivity,但无法使用 Steps API 运行并行作业

标签: apache-spark parallel-processing emr amazon-data-pipeline


【解决方案1】:

这始终取决于您的应用程序是如何工作的。我可以给你一个很好的例子来说明我是如何在这里工作的。对于一般的数据科学家来说,他们使用默认配置,并且由于他们在这里使用 Jupyter 来运行他们的模型,所以效果很好。我们设置的唯一对您有用的是 conf spark.dynamicAllocation.minExecutors 这允许设置至少两个或一个工作人员。不能没有任何执行者。这就是我们对数据科学家所做的事情。

但是,对于您选择的每种机器,EMR 都有一种特定类型的配置。所以总的来说,它针对最常见的活动进行了优化。但有时您需要根据您的要求进行更改,如果您需要更多内存和更少内核来更好地更改倾斜数据。

【讨论】:

    猜你喜欢
    • 2017-08-31
    • 2017-08-28
    • 2019-04-05
    • 2018-02-08
    • 1970-01-01
    • 2016-11-09
    • 2019-11-07
    • 2019-07-03
    • 1970-01-01
    相关资源
    最近更新 更多