2017-01-18 5 views
0

Ich bin ein Upgrade auf Spark 2.0 von 1,6 in einer Play-Scala-Anwendung und bin mir nicht ganz sicher, wie Sie die JAR-Dateien, die ich will. Zuvor wurde eine SparkConf definiert, und eine der Methoden, die ich aufrufen konnte, war setJars, mit der ich alle gewünschten JAR-Dateien angeben konnte. Jetzt verwende ich den SparkSession-Builder, um meinen Spark-conf- und spark-Kontext zu erstellen, und ich sehe keine ähnlichen Methoden zur Angabe der JAR-Dateien? Wie kann ich das machen?Spark 2.0 Set Gläser

Hier ist, wie ich vorher meine sparkconf erstellt:

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" 
)) 

Was kann ich sparksession Builder kann unter Verwendung der gleichen Sache wie „setJars“ zu erreichen?

Antwort

4

können Sie .config(key, value) Methode verwenden spark.jars einzustellen:

SparkSession.builder 
.appName(sparkAppName) 
.master(sparkMaster) 
.config("spark.jars", commaSeparatedListOfJars) 
.config(/* other stuff */) 
.getOrCreate() 
+0

Awesome, thanks! Dies hat wie erwartet funktioniert. – st33l3rf4n

+0

Schön zu hören - bitte akzeptieren und/oder upvote die Antwort, um dies für zukünftige Leser zu signalisieren. –