Databricks(Spark):.egg依赖项没有自动安装?

Loe*_*sen 11 python dependencies egg apache-spark pyspark

我有一个本地创建的.egg包依赖于boto==2.38.0.我使用setuptools来创建构建分发.一切都在我自己的本地环境中工作,因为它boto正确地从中获取PiP.但是,databricks当我将库附加到群集时,它不会自动获取依赖项.

我现在真的很挣扎了几天试图在databricks上加载时自动安装依赖项,我使用的setuptools; 'install_requires=['boto==2.38.0']'是相关字段.

当我boto直接PyPidatabricks服务器上安装(所以不依赖于该install_requires字段正常工作)然后调用我自己的.egg,它确实认识到这boto是一个包,但它不识别它的任何模块(因为它没有导入我的拥有.egg的命名空间???).所以我不能让我.egg上班.如果这个问题持续存在而没有任何解决方案,我认为这对databricks用户来说是一个非常大的问题.当然应该有一个解决方案......

谢谢!

J_H*_*J_H 1

一般来说,如果应用程序的依赖项多种多样且没有统一的语言支持,则它们将无法正常工作。Databrick 文档解释说

如果库同时支持 Python 2 和 3,Databricks 将安装正确的版本。如果库不支持 Python 3,则库附件将失败并出现错误。

在这种情况下,当您将库附加到集群时,它不会自动获取依赖项。