【发布时间】:2015-03-11 23:29:18
【问题描述】:
以下 SOF 问题 How to run script in Pyspark and drop into IPython shell when done? 讲述了如何启动 pyspark 脚本:
%run -d myscript.py
但是我们如何访问现有的 spark 上下文呢?
只新建一个是行不通的:
----> sc = SparkContext("local", 1)
ValueError: Cannot run multiple SparkContexts at once; existing
SparkContext(app=PySparkShell, master=local) created by <module> at
/Library/Python/2.7/site-packages/IPython/utils/py3compat.py:204
但是尝试使用现有的.. 什么现有的?
In [50]: for s in filter(lambda x: 'SparkContext' in repr(x[1]) and len(repr(x[1])) < 150, locals().iteritems()):
print s
('SparkContext', <class 'pyspark.context.SparkContext'>)
即SparkContext 实例没有变量
【问题讨论】:
-
第一次运行时会发生什么:
from pyspark import SparkContext? -
从 Spark 2.0.0 开始,您可以在不发生冲突的情况下创建
sparkSession有一个sparkContext属性来访问原始上下文。
标签: python apache-spark pyspark