使用PySpark模块ImportError

时间:2016-04-11 02:01:03

标签: python pyspark python-import importerror

我有一个pyspark工作(spark 1.6.1,python 2.7)。基本结构是:

spark_jobs/
  __init__.py
  luigi_workflow.py
  my_pyspark/
    __init__.py
    __main__.py
    spark_job.py
    stuff/
      __init__.py
      module1.py
      module2.py
    analytics/
      __init__.py
      analytics.py

spark_job.py我有:

from dir1.module1 import func1
from dir1.module2 import func2
from analytics.analytics import some_analytics_func
...
func1(...)
func2(...)
some_analytics_func(...)
...

当我启动spark作业时,func1func2执行完美,但后来我得到了:

ImportError: No module named analytics.analytics

这让我非常疯狂。任何帮助将不胜感激。

注意:我正在使用spark-submit周围的包装器启动并使用python -m spark_jobs.my_pyspark

指定路径

1 个答案:

答案 0 :(得分:0)

我不明白dir1来自哪里?不应该是from my_pyspark.stuff.module1 import func1吗?你有没有在from my_pyspark.analytics.analytics import some_analytics_func之前尝试过这个?由于您使用的是Luigi,您还可以尝试通过setup.py构建程序包。

希望这有帮助!我以前遇到过这个问题,但可以解决。