如何在spark中设置驱动程序的python版本?

2024-06-17 23:47:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是spark 1.4.0-rc2,所以我可以将python 3与spark一起使用。如果我将export PYSPARK_PYTHON=python3添加到.bashrc文件中,我可以使用python 3交互运行spark。但是,如果我想在本地模式下运行一个独立程序,我会得到一个错误:

Exception: Python in worker has different version 3.4 than that in driver 2.7, PySpark cannot run with different minor versions

如何为驱动程序指定python的版本?设置export PYSPARK_DRIVER_PYTHON=python3无效。


Tags: 文件in错误exception模式exportpython3spark
3条回答

您需要确保正在启动的独立项目是用Python 3启动的。如果您通过spark submit提交您的独立程序,那么它应该可以正常工作,但是如果您使用python启动它,请确保使用python3启动您的应用程序。

另外,请确保您已经在./conf/spark-env.sh中设置了env变量(如果它不存在,您可以使用spark-env.sh.template作为基础)

对我有帮助:

import os

os.environ["SPARK_HOME"] = "/usr/local/Cellar/apache-spark/1.5.1/"
os.environ["PYSPARK_PYTHON"]="/usr/local/bin/python3"

PYSPARK_PYTHON=python3PYSPARK_DRIVER_PYTHON=python3都设置为python3对我很有用。我在我的.bashrc中使用了export。最后,这些是我创建的变量:

export SPARK_HOME="$HOME/Downloads/spark-1.4.0-bin-hadoop2.4"
export IPYTHON=1
export PYSPARK_PYTHON=/usr/bin/python3
export PYSPARK_DRIVER_PYTHON=ipython3
export PYSPARK_DRIVER_PYTHON_OPTS="notebook"

我还按照本教程的要求在Ipython3笔记本中运行: http://ramhiser.com/2015/02/01/configuring-ipython-notebook-support-for-pyspark/

相关问题 更多 >