Amazon EC2上的Apache Spark PYTHONPATH troub

2024-03-28 17:25:17 发布

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

我需要在amazonec2上运行apacespark脚本。脚本使用诸如numpy、pandas等libs。问题是我已经安装了numpy /usr/local/lib64/python2.7/site-packages,默认情况下此文件夹不在PYTHONPATH中。因此,当我export PYTHONPATH=$PYTHONPATH:/usr/local/lib64/python2.7/site-packages时,通常的python会检测到它(import numpy不会引起任何问题),但是当我试图在pysparkshell中导入它时,它显示:

>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named numpy
>>> exit()

有没有办法改变pyspark的PYTHONPATH?在


Tags: importnumpy脚本pandaspackagesusrlocalsite
2条回答

如果您想“永久”设置路径,Joe Young's answer是很好的。如果您想以每个作业为基础设置路径,Continuum(Python族)在命令行上有关于按作业设置PYTHONPATH作业的页面:

https://www.continuum.io/blog/developer-blog/using-anaconda-pyspark-distributed-language-processing-hadoop-cluster

例如(为Cloudera安装编写的替换Spark位置):

使用Hadoop集群配置spark submit命令

要将Anaconda中的Python与PySpark一起使用,可以根据每个作业设置PySpark_Python环境变量以及spark submit命令。如果您将Anaconda包裹用于CDH,则可以运行PySpark脚本(例如,spark-作业.py)使用以下命令:

$ PYSPARK_PYTHON=/opt/cloudera/parcels/Anaconda/bin/python spark-submit spark-job.py

你能试试设置吗

export PYTHONPATH=$PYTHONPATH:/usr/local/lib64/python2.7/site-packages

在$SPARK_CONF_DIR/SPARK中-环境卫生?在

相关问题 更多 >