#jupyter-notebook #databricks #azure-databricks
#jupyter-notebook #databricks #azure-databricks
Вопрос:
Я хотел бы редактировать записные книжки Databricks локально, используя мой любимый редактор, а затем использовать Databricks Connect для удаленного запуска записной книжки в кластере Databricks, к которому я обычно получаю доступ через веб-интерфейс.
К сожалению, после нескольких дней поиска в Интернете я не могу найти подробную документацию по Databricks Connect.
Я запускаю databricks-connect configure
, как предложено на странице PyPI выше, но я не уверен, каковы некоторые настройки. Не мог бы кто-нибудь, пожалуйста, рассказать мне об этом (например, где найти эти значения в веб-интерфейсе) или предоставить ссылку на соответствующую документацию?
Я знаю, какими должны быть некоторые настройки, но я включу все, что появляется при запуске databricks-connect configure
, для полноты картины и пользы других.
Databricks Host
Databricks Token
Cluster ID
(например, 0921-001415-jelly628
)
Org ID
(Только для Azure, см. ?o=orgId
в URL)
Port
(так ли это spark.databricks.service.port
?)
Кроме того, и я думаю, это то, что меня больше всего интересует, нужно ли мне вносить какие-либо изменения в саму записную книжку, например, определять SparkContext или что-то в этом роде? Если да, то с какой конфигурацией?
И как я должен это запустить? После запуска databricks-connect configure
кажется, что никакого «волшебства» не происходит. Когда я запускаю jupyter notebook
, он по-прежнему работает локально и, похоже, не знает, нужно ли пересылать его в удаленный кластер.
Обновление: Если вы хотите придумать что-то более конкретное, в веб-интерфейсе Databricks dbutils
это предопределенный объект. Как мне ссылаться на это при удаленном запуске ноутбука?
Комментарии:
1. В идеале вы хотите придерживаться одного вопроса за раз. Похоже, что вы запрашиваете пошаговое руководство, и поэтому оно не является отличным источником для этого. Маловероятно, что вы добьетесь здесь больших успехов.
2. Я думаю… Но если где-то есть хорошая документация, я был бы вполне доволен простой ссылкой.
3. Если бы мне пришлось выбрать один вопрос, это был бы «Нужно ли мне что-либо изменить в записной книжке, чтобы иметь возможность ее запускать?» Я думаю, что мог бы проработать свой путь с такой отправной точки.
4. К сожалению, на самом деле SO работает не так. В принципе, этот проект выглядит как тонкая оболочка вокруг Azure API, так что ваше первоначальное предположение будет заключаться в том, что конфигурация ссылается непосредственно на это.
5. В настоящее время она находится в режиме закрытого предварительного просмотра, поэтому документы недоступны. Вы можете попробовать зайти в свой менеджер учетных записей Microsoft, чтобы получить доступ к предварительному просмотру.
Ответ №1:
Я пометил ответ другого человека как ответ, но по какой-то причине этот ответ теперь отсутствует.
Для моих целей сработало официальное руководство пользователя: https://docs.azuredatabricks.net/user-guide/dev-tools/db-connect.html
Комментарии:
1. Меня удалили просто за публикацию ссылки 😒
2. Это странно. Ваш пост заполнил для меня все недостающие фрагменты, которые я не смог найти в Интернете иначе, включая руководство пользователя
3. Спасибо за ссылку. Кажется, я должен быть администратором, чтобы завершить эту настройку? Я действительно ненавижу редактор notebook…
4. Правильно, вам нужен администратор для настройки свойств кластера. Остальное вы должны быть в состоянии сделать самостоятельно.
5. Обновите приведенный выше комментарий: начиная с версии Databricks Runtime 5.5, кластер автоматически настраивается для приема подключений databricks-connect.
Ответ №2:
Короче говоря, вам нужно будет включить:
spark = SparkSession.builder.getOrCreate()
При запуске скриптов. Записные книжки должны конвертировать, но, конечно, волшебные команды (%run и т.д.) Не будут работать.
Здесь доступна более подробная информация о частях, которые не будут работать. https://datathirst.net/blog/2019/3/7/databricks-connect-finally