gpt4 book ai didi

python - Python 中导入的 Spark 问题

转载 作者:太空狗 更新时间:2023-10-29 21:06:43 26 4
gpt4 key购买 nike

我们正在 python 脚本上运行一个 spark-submit 命令,该脚本使用 Spark 在 Python 中使用 Caffe 并行进行对象检测。如果在纯 Python 脚本中运行,脚本本身运行得非常好,但在与 Spark 代码一起使用时会返回导入错误。我知道 spark 代码不是问题,因为它在我的家用机器上运行良好,但在 AWS 上运行不佳。我不确定这是否与环境变量有关,就好像它没有检测到它们一样。

设置了这些环境变量:

SPARK_HOME=/opt/spark/spark-2.0.0-bin-hadoop2.7
PATH=$SPARK_HOME/bin:$PATH
PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH
PYTHONPATH=/opt/caffe/python:${PYTHONPATH}

错误:

16/10/03 01:36:21 WARN TaskSetManager: Lost task 0.0 in stage 0.0 (TID 0, 172.31.50.167): org.apache.spark.api.python.PythonException: Traceback (most recent call last):
File "/opt/spark/spark-2.0.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/worker.py", line 161, in main
func, profiler, deserializer, serializer = read_command(pickleSer, infile)
File "/opt/spark/spark-2.0.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/worker.py", line 54, in read_command
command = serializer._read_with_length(file)
File "/opt/spark/spark-2.0.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/serializers.py", line 164, in _read_with_length
return self.loads(obj)
File "/opt/spark/spark-2.0.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/serializers.py", line 422, in loads
return pickle.loads(obj)
File "/opt/spark/spark-2.0.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/cloudpickle.py", line 664, in subimport
__import__(name)
ImportError: ('No module named caffe', <function subimport at 0x7efc34a68b90>, ('caffe',))

有谁知道为什么这会成为一个问题?

这个来自 Yahoo 的包通过将 Caffe 作为 jar 依赖项来管理我们试图做的事情,然后在 Python 中再次使用它。但我还没有找到任何关于如何构建和导入它的资源。

https://github.com/yahoo/CaffeOnSpark

最佳答案

您可能还没有在 AWS 环境中编译 caffe python 包装器。出于完全逃避我(和其他几个人,https://github.com/BVLC/caffe/issues/2440)的原因,pycaffe 不能作为 pypi 包使用,您必须自己编译它。如果您在 AWS EB 环境中,您应该遵循此处的编译/制作说明或使用 ebextensions 使其自动化:http://caffe.berkeleyvision.org/installation.html#python

关于python - Python 中导入的 Spark 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39824381/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com