У меня установлен Spark2.3 в моем кластере, вот вывод, когда я запускаю spark2-shell
:
> Spark context available as 'sc' (master = yarn, app id =
> application_1549677994084_2179). Spark session available as 'spark'.
> Welcome to
> ____ __
> / __/__ ___ _____/ /__
> _\ \/ _ \/ _ `/ __/ '_/ /___/ .__/\_,_/_/ /_/\_\ version 2.3.0.cloudera3
> /_/
>
> Using Scala version 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java
> 1.8.0_121)
и ошибки здесь:
> scala> val spark = new SparkSession.builder().getOrCreate()
> <console>:25: error: not found: value SparkSession
> val spark = new SparkSession.builder().getOrCreate()
> ^
Затем я импортировалSparkSession, как показано ниже:
scala> import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.SparkSession
scala> val spark = new SparkSession.builder().getOrCreate()
<console>:26: error: type builder is not a member of object org.apache.spark.sql.SparkSession
val spark = new SparkSession.builder().getOrCreate()
^
scala>
Работает с
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
scala> val sqlContext = new org.apache.spark.sql.SQLContext(sc)
warning: there was one deprecation warning; re-run with -deprecation for details
sqlContext: org.apache.spark.sql.SQLContext = org.apache.spark.sql.SQLContext@7a364e1c
Почему SparkSession здесь не работает для Spark2?
Спасибо.