The*_*uma 16 apache-spark apache-spark-sql pyspark apache-zeppelin
我在Zeppelin工作写spark-sql查询,有时我突然开始收到此错误(在不更改代码后):
Cannot call methods on a stopped SparkContext.
Run Code Online (Sandbox Code Playgroud)
然后输出进一步下降:
The currently active SparkContext was created at:
(No active SparkContext.)
Run Code Online (Sandbox Code Playgroud)
这显然没有意义.这是Zeppelin的一个错误吗?或者我做错了什么?如何重新启动SparkContext?
谢谢
use*_*742 15
我曾经多次面对这个问题.
如果您将master设置为yarn-client,则可能是由于资源管理器的停止/重新启动,解释器进程可能仍在运行,但Spark Context(它是一个Yarn应用程序)不再存在.
您可以通过咨询资源管理器Web界面检查Spark Context是否仍在运行,并检查是否有名为Zeppelin的应用程序正在运行.
有时从Zeppelin(解释器选项卡 - > spark - > restart)重新启动解释器进程将解决问题.
其他时候你需要:
我在PySpark中遇到了运行多个作业的同样问题.似乎在Spark 2.0.0中,使用SparkSession,当我调用spark.stop()SparkSession时调用以下跟踪:
# SparkSession
self._sc.stop()
# SparkContext.stop()
self._jsc = None
Run Code Online (Sandbox Code Playgroud)
然后,当我尝试使用新的SparkContext创建一个新作业时,SparkSession返回与之前相同的SparkContext self.jsc = None.
我解决了设置SparkSession._instantiatedContext = None后spark.stop()迫使SparkSession创建一个新的,我需要SparkContext下一次.
这不是最好的选择,但同时它正在解决我的问题.
| 归档时间: |
|
| 查看次数: |
13601 次 |
| 最近记录: |