我已经在我的本地计算机上安装了boto3
,然后我在本地模式下运行spark-submit,同时将路径传递到安装目录boto3
。离开我以下命令:
spark-submit --conf spark.driver.extraClassPath=/Library/Python/2.7/site-packages app.py
然后当import boto3
app.py
时,它会引发可怕的module not found
错误。
这是将pip安装的python依赖项添加到spark-submit作业的正确方法吗?
答案 0 :(得分:0)
Spark使用的Python与包含pip_install的python依赖项的Python不同。
在.bash_profile
中,将PYSPARK_PYTHON
路径和PYSPARK_DRIVER_PYTHON
设置为包含pip_installs的正确Python路径。
export SPARK_HOME=/usr/local/Cellar/apache-spark/2.1.0/libexec
export PYTHONPATH=/usr/local/opt/python/bin/python2.7/:$PYTHONPATH$
export PYSPARK_PYTHON=/usr/local/opt/python/bin/python2.7
export PYSPARK_DRIVER_PYTHON=/usr/local/opt/python/bin/python2.7
如果shell上的Python包含所有pip_install程序,则可以将PYSPARK_PYTHON
和PYSPARK_DRIVER_PYTHON
设置为该路径。找到它here。