问题描述
我只是试图在pyspark shell中执行sc.version
,但是由于未定义sc
而收到错误消息。
>>> sc.version()
Traceback (most recent call last):
File "<stdin>",line 1,in <module>
如果我运行SparkContext.getorCreate()
>>> SparkContext.getorCreate()
<pyspark.context.SparkContext object at 0x7f206aa8cfd0>
我什至没有获得sc.version()的输出。有什么问题吗?
解决方法
几件事:
- 在pyspark外壳程序内,您只能自动访问spark会话(可以由“ spark”引用)。
- 要获取sparkcontext,可以通过
sc = spark.sparkContext
从spark会话中获取它。或使用@ Smurphy0000在评论中提到的getOrCreate()
方法 - 版本是spark上下文的属性。要从sparkcontext(在这种情况下为
sc
)中获取版本,请version = sc.version
。版本也可以直接从会话中提取为version = spark.version