2015-08-20 3 views
10

У меня есть локально созданный пакет .egg, который зависит от boto==2.38.0. Я использовал setuptools для создания дистрибутива сборки. Все работает в моей локальной среде, так как он правильно выбирает boto с PiP. Однако на databricks он не автоматически извлекает зависимости, когда я прикрепляю библиотеку к кластеру.Databricks (Spark): .gg зависимости не установлены автоматически?

Я действительно боролся сейчас в течение нескольких дней, пытаясь установить зависимость автоматически при загрузке на databricks, я использую setuptools;'install_requires=['boto==2.38.0']' - соответствующее поле.

Когда я устанавливаю boto непосредственно с PyPi на сервере databricks (так не полагаясь на install_requires поля работать должным образом), а затем вызвать мою собственную .egg, он признает, что boto представляет собой пакет, но он не признает какой-либо из его модули (поскольку он не импортируется в мое собственное пространство .egg?). Поэтому я не могу заставить мой .egg работать. Если проблема осталась без каких-либо решений, я думаю, что это действительно большая проблема для пользователей databricks. Должно быть решение, конечно ...

Спасибо!

+0

Loek, вы когда-нибудь определяли решение? – ramhiser

+0

@ JohnA.Ramey У меня нет, но я еще больше не работаю над этой проблемой. Я помню, что команда databricks рассказала мне, что они в процессе решения этого. Я полагаю, вы в настоящее время сталкиваетесь с теми же проблемами? Жаль это слышать. Дайте мне знать, когда вы нашли решение самостоятельно :) –

+0

каких-либо успехов по этой проблеме? –

ответ

0

Зависимости от вашего приложения не будут работать в целом, если они разнообразны и не имеют единой поддержки языка. Databrick docs объяснить, что

Databricks установит правильную версию, если библиотека поддерживает как Python 2 и 3. Если библиотека не поддерживает Python 3, то библиотека вложение завершится с ошибкой.

В этом случае он не будет автоматически извлекать зависимости при прикреплении библиотеки к кластеру.

Смежные вопросы