【问题标题】:Is it possible to run multiple spark files with full resources of a cluster?是否可以使用集群的全部资源运行多个 spark 文件?
【发布时间】:2020-10-18 11:32:06
【问题描述】:

我有 a.py 和 b.py 文件。

a.py >> SparkConf( Set to Master ) 使用集群和master的所有资源

b.py >> SparkConf( Set to Local ) 只使用master的资源

如果我同时运行两者,则脚本正在运行。但是如果我将 SparkConf 更改为下面提到的,

a.py >> SparkConf( Set to Master ) 使用集群和master的所有资源

b.py >> SparkConf( Set to Master ) 使用集群和master的所有资源

然后,一个进入运行状态,另一个进入等待状态,因为没有资源可分配给另一个脚本。

那么对于第二种情况,是否可以同时运行两个脚本?

【问题讨论】:

  • 大概是 spark 独立的?

标签: apache-spark pyspark


【解决方案1】:

假设 Spark Stand Alone,来自手册:https://spark.apache.org/docs/latest/spark-standalone.html#launching-spark-applications,是的,它是:

独立集群模式目前仅支持跨应用程序的简单 FIFO 调度程序。但是,为了允许多个并发用户,您可以控制每个应用程序将使用的最大资源数。默认情况下,它将获取集群中的所有核心,这仅在您一次只运行一个应用程序时才有意义。您可以通过在 SparkConf 中设置 spark.cores.max 来限制内核数量。例如:

val conf = new SparkConf()
  .setMaster(...)
  .setAppName(...)
  .set("spark.cores.max", "10")
val sc = new SparkContext(conf)

【讨论】:

    猜你喜欢
    • 2016-09-06
    • 2019-10-27
    • 1970-01-01
    • 2022-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-18
    • 2021-10-29
    相关资源
    最近更新 更多