问题描述
我想了解Scala中与以下代码等效的PySpark。我正在使用数据块。我需要以下相同的输出:-
创建新的Spark会话并输出会话ID(SparkSession @ 123d0e8)
val new_spark = spark.newSession()
**Output**
new_spark: org.apache.spark.sql.SparkSession = org.apache.spark.sql.SparkSession@123d0e8
以查看SparkContext并输出SparkContext ID(SparkContext @ 2dsdas33)
new_spark.sparkContext
**Output**
org.apache.spark.SparkContext = org.apache.spark.SparkContext@2dsdas33
解决方法
SparkSession可以创建为http://spark.apache.org/docs/2.0.0/api/python/pyspark.sql.html
>>> from pyspark.sql import SparkSession
>>> from pyspark.conf import SparkConf
>>> SparkSession.builder.config(conf=SparkConf())
或
>>> from pyspark.sql import SparkSession
>>> spark = SparkSession.builder.appName('FirstSparkApp').getOrCreate()
,
非常相似。如果您已经有一个会话并想打开另一个会话,则可以使用
my_session = spark.newSession()
print(my_session)
这将产生我认为您要创建的新会话对象
<pyspark.sql.session.SparkSession object at 0x7fc3bae3f550>
spark
是已在运行的会话对象,因为您正在使用数据块笔记本