在安装anaconda3和spark(2.3.2)之后,我尝试运行示例pyspark代码。
这只是一个示例程序,我正在运行Jupyter,我得到一个错误,如
Python工作线程无法重新连接。
根据堆栈溢出中的以下问题:
Python worker failed to connect back
我可以看到这样的解决方案我得到了同样的错误。我解决了它安装以前版本的Spark(2. 3而不是2. 4)。现在它工作得很完美,也许是最新版本的PysPark的问题。
但我用的是spark 2.3.1版,python是3.7版
我仍然面临着这个问题。请帮助我解决这个错误
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("mySparkApp").getOrCreate()
testData=spark.sparkContext.parallelize([3,8,2,5])
testData.count()
回溯为:
Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.collectAndServe.
: org.apache.spark.SparkException: Job aborted due to stage failure: Task 2 in stage 1.0 failed 1 times, most recent failure: Lost task 2.0 in stage 1.0 (TID 6, localhost, executor driver): org.apache.spark.SparkException: Python worker failed to connect back.
at org.apache.spark.api.python.PythonWorkerFactory.createSimpleWorker(PythonWorkerFactory.scala:170)
at org.apache.spark.api.python.PythonWorkerFactory.create(PythonWorkerFactory.scala:97)
at org.apache.spark.SparkEnv.createPythonWorker(SparkEnv.scala:117)
at org.apache.spark.api.python.BasePythonRunner.compute(PythonRunner.scala:108)
at org.apache.spark.api.python.PythonRDD.compute(PythonRDD.scala:65)
at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:324)
3条答案
按热度按时间atmip9wb1#
只要添加环境变量PYSPARK_PYTHON作为python。2它解决了这个问题。3不需要升级或降级Spark版本。4它对我很有效。
sbdsn5lh2#
按如下方式设置环境变量:
PYSPARK_DRIVER_PYTHON_OPTS=notebook
PYSPARK_DRIVER_PYTHON_OPTS=notebook
个PYSPARK_PYTHON=python
问题的核心是pyspark和python之间的联系,通过改变它们来解决。
kmbjn2e33#
请确保已正确设置了环境变量集,