Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Замечание
Эта статья относится к Databricks Connect 15.4 LTS и выше.
В этой статье описывается, как создать проект в интегрированной среде разработки, настроить виртуальную среду, установить Databricks Connect для Python и запустить код на бессерверных вычислениях в рабочей области Databricks.
В этом руководстве используется Python 3.12 и Databricks Connect 17.3 LTS. Чтобы использовать другие версии Python Databricks Connect, они должны быть совместимыми. См. матрицу поддержки версий.
Требования
Чтобы завершить работу с этим руководством, необходимо выполнить следующие требования:
- Рабочая область, локальная среда и вычислительные ресурсы соответствуют требованиям Databricks Connect для Python. См. сведения о требованиях к использованию Databricks Connect.
- Бессерверные вычисления включены в рабочей области. См. раздел "Подключение к бессерверным вычислениям".
- Установлен Python 3.12.
- У вас установлена интегрированная среда разработки, например Visual Studio Code.
- Интерфейс командной строки Databricks установлен на локальном компьютере. См. установите или обновите CLI Databricks.
Шаг 1. Настройка проверки подлинности Databricks
В этом руководстве используется проверка подлинности Databricks OAuth на компьютере (U2M) и профиль конфигурации Databricks для проверки подлинности в рабочей области Databricks.
Используйте Databricks CLI для начала управления токенами OAuth на локальном уровне, выполнив следующую команду для каждой целевой рабочей области. В следующей команде замените
<workspace-url>URL-адрес экземпляра рабочей области Databricks, напримерhttps://dbc-a1b2345c-d6e7.cloud.databricks.com.databricks auth login --host <workspace-url>Интерфейс командной строки Databricks предлагает сохранить сведения, введенные в качестве профиля конфигурации Databricks. Нажмите,
Enterчтобы принять предлагаемое имя профиля, или введите имя нового или существующего профиля. Databricks рекомендует использоватьDEFAULTв качестве имени профиля.В веб-браузере выполните инструкции на экране, чтобы войти в рабочую область Databricks.
Шаг 2. Создание виртуальной среды Python
Создайте папку проекта и откройте ее в интегрированной среде разработки. Например, в главном меню Visual Studio Code нажмите кнопку"Открыть>>
Откройте окно терминала в корневом каталоге папки проекта. Например, в главном меню Visual Studio Code щелкните "Просмотреть>терминал".
Создайте виртуальную среду для проекта, вызываемую
venvв корне папки проекта, выполнив следующую команду в терминале:python3.12 -m venv .venvАктивируйте виртуальную среду:
# Linux/Mac source .venv/bin/activate# Windows .venv\Scripts\activate
Шаг 3. Установка Databricks Connect
Установите Databricks Connect. Сведения о последних выпущенных версиях Databricks Connect см. в заметках о выпуске Databricks Connect.
pip install "databricks-connect==17.3.*"
Шаг 4. Добавление кода и запуск
Добавление нового файла
main.pyPython в проектВведите следующий код в файл, заменив заполнитель
<profile-name>именем профиля конфигурации на шаге 1, а затем сохраните файл. ИмяDEFAULTпрофиля конфигурации по умолчанию .from databricks.connect import DatabricksSession spark = DatabricksSession.builder.serverless().profile("<profile-name>").getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)Запустите код с помощью следующей команды:
python3 main.pyВозвращаются пять строк таблицы:
+--------------------+---------------------+-------------+-----------+---------+-----------+ |tpep_pickup_datetime|tpep_dropoff_datetime|trip_distance|fare_amount|pickup_zip|dropoff_zip| +--------------------+---------------------+-------------+-----------+----------+-----------+ | 2016-02-16 22:40:45| 2016-02-16 22:59:25| 5.35| 18.5| 10003| 11238| | 2016-02-05 16:06:44| 2016-02-05 16:26:03| 6.5| 21.5| 10282| 10001| | 2016-02-08 07:39:25| 2016-02-08 07:44:14| 0.9| 5.5| 10119| 10003| | 2016-02-29 22:25:33| 2016-02-29 22:38:09| 3.5| 13.5| 10001| 11222| | 2016-02-03 17:21:02| 2016-02-03 17:23:24| 0.3| 3.5| 10028| 10028| +--------------------+---------------------+-------------+-----------+----------+-----------+
Вы успешно выполнили первый запрос к бессерверным вычислениям Databricks с помощью Databricks Connect из интегрированной среды разработки.
Шаг 5. Подготовка к работе с кодом
Для рабочих сценариев важно избегать использования спецификаций вычислений в построителе сеансов Spark. Например, при развертывании кода в классическом кластере или Standard использовании Dedicated. API в построителе сеансов Spark создается новый бессерверный сеанс Spark с помощью классического кластера serverless() в качестве клиента.
Чтобы сделать код гибким и готовым к рабочей среде, сеанс Spark не должен содержать никаких параметров.
spark = DatabricksSession.builder.getOrCreate()
Однако при запуске этого кода в Databricks используется глобальный сеанс Spark по умолчанию вычислений Databricks.
Чтобы включить бессерверные вычисления в интегрированной среде разработки, используйте профиль конфигурации DEFAULT, выбранный DatabricksSession.builder при отсутствии параметров:
Создайте профиль конфигурации с именем
DEFAULT, используя инструкции на шаге 1.Используйте текстовый редактор для открытия
.databrickscfgфайла, который находится в:Домашняя
$HOMEпапка пользователя в Unix, Linux или macOS:~/.databrickscfgилиВаша
%USERPROFILE%(домашняя папка пользователя) в Windows. Например, для macOS:nano ~/.databrickscfg
Добавьте
serverless_compute_id = autoвDEFAULTпрофиль:[DEFAULT] host = https://my-workspace.cloud.databricks.com auth_type = databricks-cli serverless_compute_id = autoСохраните изменения и закройте редактор.
Измените код, чтобы использовать общий сеанс Spark и запустить его:
from databricks.connect import DatabricksSession spark = DatabricksSession.builder.getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)python3 main.py
Вы успешно выполнили готовый к работе код на бессерверных вычислениях Databricks с помощью Databricks Connect из интегрированной среды разработки с помощью профиля конфигурации DEFAULT.
Подсказка
Можно также использовать переменные среды для установки подключения к определенным вычислительным ресурсам Databricks:
- Бессерверные:
DATABRICKS_SERVERLESS_COMPUTE_ID=auto - Классический:
DATABRICKS_CLUSTER_ID=<your_cluster_id>