导入databricks中的python依赖项(无法导入模块)

2024-10-01 07:44:13 发布

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

我有一个样本项目mypackg结构如下:

- mypackg
    * appcode
        * __init__.py
        * file1.py
        * file2.py
    * dbutils
        * __init__.py
        * file3.py
    * start_point.py
    * __init__.py 

将代码打包到mypackg.zip

在本地系统测试方面做得很好

  • 通过sparkContext.addPyFile('path_to_zip')添加到pyspark并运行我的作业
  • 像应用程序一样通过spark-submit --py-files 'path_to_zip' myjob.py运行

但是,当我尝试在Databricks上执行相同的操作时,我无法导入模块

import urllib 

urllib.request.urlretrieve("https://github.com/nikhilsarma/spark_utilities/blob/master/mydata.zip", "/databricks/driver/mydata.zip")

sc = spark.sparkContext.getOrCreate() and 
sc.addPyFile('/databricks/driver/mydata.zip')
sys.path.insert(0, r'/databricks/diver/mydata.zip')
sc = spark.sparkContext.getOrCreate()
sc.addPyFile(r'/databricks/driver/mydata.zip') 

from mypackg import start_point

错误:

ModuleNotFoundError: No module named 'mypackg'


Tags: topathpyinitdriverzipstartspark