我看到几篇文章包含与我收到的错误相同的错误,但没有一篇文章能引导我修复我的代码。我已经多次使用完全相同的代码,没有任何问题,但现在遇到了问题。这是我收到的错误:
y4j.protocol.Py4JJavaError: An error occurred while calling None.org.apache.spark.api.java.JavaSparkContext.
: org.apache.spark.SparkException: Only one SparkContext may be running in this JVM (see SPARK-2243).
以下是我如何在 python 脚本中启动上下文:
spark = ps.sql.SparkSession.builder \
.master("local[*]") \
.appName("collab_rec") \
.config("spark.mongodb.input.uri", "mongodb://127.0.0.1/bgg.game_commen$
.getOrCreate()
sc = spark.sparkContext
sc.setCheckpointDir('checkpoint/')
sqlContext = SQLContext(spark)
如果您有建议,请告诉我。
最佳答案
SparkSession 是 Spark 2.x 中的新入口点。这是 SQLContext 的替代品,但它在内部代码中使用 SQLContext。
您使用 SQLContext 所做的一切都应该可以通过 SparkSession 实现。
如果你确实想使用SQLContext,请使用spark.sqlContext变量
关于python - Spark异常: Only one SparkContext may be running in this JVM (see SPARK-2243),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45682208/