工人和驱动程序的Python版本不同

时间:2019-07-04 14:40:51

标签: python pyspark

我要回答的问题是:

创建RDD

使用地图创建由列指定的NumPy数组的RDD。 RDD的名称为Rows

我的代码:Rows = df.select(col).rdd.map(make_array)

键入此命令后,出现一个奇怪的错误,该错误基本上是这样的:例外:worker中的Python版本与驱动程序3.6中的版本不同,PySpark无法使用不同的次要版本运行。请检查环境变量PYSPARK_PYTHON和PYSPARK_DRIVER_PYTHON是否正确设置。

enter image description here

我知道我在使用Python 3.6的环境中工作。我不确定这行特定代码是否会触发此错误?你怎么看

请注意,这不是我在Jupyter笔记本上的第一行代码。 如果您需要更多信息,请告诉我,我会提供。我不明白为什么会这样。

1 个答案:

答案 0 :(得分:0)

您的奴隶和您的驱动程序使用的不是同一版本的Python,每次使用Spark都会触发此错误。

确保在从属服务器上安装了Python 3.6,然后(在Linux中)修改spark/conf/spark-env.sh文件以添加PYSPARK_PYTHON=/usr/local/lib/python3.6(如果这是从属服务器中的python目录)