【发布时间】:2019-06-29 07:36:35
【问题描述】:
当我们启动 pyspark (spark 2.4) 时,它带有一个 spark 变量调用下划线功能。 因此,如果“spark”已经可用,何时调用和使用 SparkSession 和 SparkContext 方法。
【问题讨论】:
标签: apache-spark pyspark
当我们启动 pyspark (spark 2.4) 时,它带有一个 spark 变量调用下划线功能。 因此,如果“spark”已经可用,何时调用和使用 SparkSession 和 SparkContext 方法。
【问题讨论】:
标签: apache-spark pyspark
使用 spark 2.4,您可能会在日志中看到类似的内容:
Spark context available as 'sc' (master = yarn, app id = application...).
Spark session available as 'spark'.
在以前的 Spark 版本中,您必须创建 SparkConf 和 SparkContext 才能与 Spark 交互,如下所示:
//set up the spark configuration and create contexts
val sparkConf = new SparkConf().setAppName("SparkSessionZipsExample").setMaster("local")
// your handle to SparkContext to access other context like SQLContext
val sc = new SparkContext(sparkConf).set("spark.some.config.option", "some-value")
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
而在 Spark 2.0 中,可以通过 SparkSession,没有明确创建 SparkConf、SparkContext 或 SQLContext,因为它们被封装在 SparkSession 中。
所以:
在您的情况下,spark 只是 SparkSession 的别名。
您不需要使用 SparkContext,因为它封装在 SparkSession 中。
【讨论】: