我正在尝试运行非常基本的Spark + Python pyspark教程-请参见http://spark.apache.org/docs/0.9.0/quick-start.html

当我尝试初始化新的SparkContext时,

from pyspark import SparkContext
sc = SparkContext("local[4]", "test")

我收到以下错误:
ValueError: Cannot run multiple SparkContexts at once

我想知道我以前尝试运行示例代码的尝试是否将某些东西加载到了内存中而无法清除。是否有办法列出内存中已经存在的当前SparkContext和/或清除它们,以便示例代码可以运行?

最佳答案

发生这种情况的原因是,当您在终端中键入“pyspark”时,系统会自动初始化SparkContext(可能是Object?),因此您应在创建新的SparkContext之前将其停止。

您可以使用

sc.stop()

在创建新的SparkContext之前。

另外,您可以使用
sc = SparkContext.getOrCreate()

代替
sc = SparkContext()

我是Spark的新手,我不太了解函数SparkContext()的参数含义,但是上面显示的代码都对我有用。

关于python - 教程中出现多个SparkContexts错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23280629/

10-12 20:00