如何从 RStudio 初始化 YARN 上的新 Spark 上下文和执行程序编号

How to initialize a new Spark Context and executors number on YARN from RStudio

我正在与 SparkR 合作。

我可以使用这样的命令在 YARN 上设置 Spark 上下文,所需数量 executorsexecutor-cores

spark/bin/sparkR --master yarn-client --num-executors 5 --executor-cores 5

现在我正在尝试初始化一个新的 Spark 上下文,但是来自 RStudio,它比使用常规命令行更舒适。

我发现要做到这一点,我需要使用 sparkR.init() 函数。有一个选项 master 我设置为 yarn-client 但如何指定 num-executorsexecutor-cores?这是我堆放的地方

library(SparkR, lib.loc = "spark-1.5.0-bin-hadoop2.4/R/lib")

sc <- sparkR.init(sparkHome = "spark-1.5.0-bin-hadoop2.4/",
                  master = "yarn-client")

sparkR.init 提供 sparkEnvir 参数应该有效:

sparkEnvir <- list(spark.num.executors='5', spark.executor.cores='5')

sc <- sparkR.init(
    sparkHome = "spark-1.5.0-bin-hadoop2.4/", 
    master = "yarn-client",
    sparkEnvir = sparkEnvir)