无法一次运行多个上下文

时间:2017-12-09 16:20:42

标签: apache-spark pyspark

我正在使用pyspark(Python-3.6.2),当我使用以下代码启动spark context时,它会抛出异常。

任何人都可以提前遇到这类问题吗? 我在下面附上截图供参考

Cannot run multiple context

2 个答案:

答案 0 :(得分:1)

这是预期的行为。 Spark不支持它不支持多个SparkContexts。作为参考,相应的JIRA(SPARK-2243)已被解析为“未修复”。

用于测试的JVM特定spark.driver.allowMultipleContexts在Python(https://stackoverflow.com/a/28260286)和quoting Josh Rosen中从未受到支持:

  

在某些情况下,多个活动上下文可能会偶然起作用,因此我们将新配置添加为临时逃生舱并用于测试; 用户通常不应启用该标记,因为仅禁用错误检查,而实际上并未启用对多个上下文的正确支持

答案 1 :(得分:0)

您只能拥有一个Spark Context,当您打开shell时,会为您创建上下文,因此您无需创建它。如果您编写独立应用程序,则必须创建自己的上下文。这适用于RDD API。

如果您使用DataFrames或数据集,那么您可以拥有多个Spark Sessions,它们将共享相同的上下文,但会为您提供独立的视图。