Spark 2.0 设置罐子
Posted
技术标签:
【中文标题】Spark 2.0 设置罐子【英文标题】:Spark 2.0 set jars 【发布时间】:2017-01-18 15:16:13 【问题描述】:我正在 play-scala 应用程序中从 1.6 升级到 spark 2.0,但不太确定如何设置我想要的 jar 文件。以前会定义一个 SparkConf,我可以调用的方法之一是 setJars,它允许我指定我想要的所有 jar 文件。现在我正在使用 SparkSession 构建器来构建我的 spark conf 和 spark 上下文,我没有看到任何类似的方法来指定 jar 文件?我该怎么做?
这是我之前创建 sparkconf 的方式:
val sparkConf = new SparkConf().setMaster(sparkMaster).setAppName(sparkAppName).
set("spark.yarn.jar", "hdfs:///user/hadoop/spark-assembly-1.6.1-hadoop2.7.2.jar").
set("spark.eventLog.dir", "hdfs:///var/log/spark/apps").
set("spark.eventLog.enabled", "true").
set("spark.executorEnv.JAVA_HOME", "/usr/lib/jvm/jre-1.8.0-openjdk").
setJars(Seq(
"ALL JAR FILES LISTED HERE"
))
我可以使用 sparksession builder 来完成与“setJars”相同的事情吗?
【问题讨论】:
【参考方案1】:可以使用.config(key, value)
方法设置spark.jars
:
SparkSession.builder
.appName(sparkAppName)
.master(sparkMaster)
.config("spark.jars", commaSeparatedListOfJars)
.config(/* other stuff */)
.getOrCreate()
【讨论】:
很高兴听到 - 请接受和/或投票以向未来的读者表明这一点。 当我使用它时,我似乎无法给出 jar 的路径。我无法在我的情况下使用 maven以上是关于Spark 2.0 设置罐子的主要内容,如果未能解决你的问题,请参考以下文章
我们如何在 SPARK 2.2.0 中将外部表转换为托管表?