我正在尝试运行非常基本的 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
我想知道我之前运行示例代码的尝试是否将某些未清除的内容加载到内存中。有没有办法列出已经在内存中的当前 SparkContexts 和/或清除它们以便运行示例代码?
最佳答案
这是因为当你在终端中输入“pyspark”时,系统会自动初始化 SparkContext(可能是一个对象?),所以你应该在创建新的之前停止它。
你可以使用
sc.stop()
在创建新的 SparkContext 之前。
另外,你可以使用
sc = SparkContext.getOrCreate()
而不是
sc = SparkContext()
我是 Spark 的新手,我不太了解函数 SparkContext() 的参数的含义,但上面显示的代码都对我有用。
关于python - 教程中出现多个 SparkContexts 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23280629/