Databricks Connect для R
Примечание.
В этой статье рассматривается sparklyr
интеграция с Databricks Connect для Databricks Runtime 13.0 и более поздних версий. Эта интеграция не предоставляется Databricks или напрямую поддерживается Databricks.
Для вопросов перейдите в сообщество Posit.
Чтобы сообщить о проблемах, перейдите в раздел sparklyr
"Проблемы" репозитория в GitHub.
Дополнительные сведения см. в документации по Databricks Connect версии 2.sparklyr
В этой статье показано, как быстро приступить к работе с Databricks Connect с помощью R и sparklyr
RStudio Desktop.
- Сведения о версии Python этой статьи см. в разделе Databricks Connect для Python.
- Сведения о версии Scala этой статьи см. в разделе Databricks Connect для Scala.
Databricks Connect позволяет подключать популярные идентификаторы, такие как RStudio Desktop, серверы записных книжек и другие пользовательские приложения к кластерам Azure Databricks. См. раздел "Что такое Databricks Connect?".
Учебник
В этом руководстве используется RStudio Desktop и Python 3.10. Если они еще не установлены, установите R и RStudio Desktop и Python 3.10.
Дополнительные сведения об этом руководстве см. в разделе "Databricks Connect" в Spark Connect и Databricks Connect версии 2 на sparklyr
веб-сайте.
Требования
Чтобы завершить работу с этим руководством, необходимо выполнить следующие требования:
- Целевая рабочая область и кластер Azure Databricks должны соответствовать требованиям к конфигурации вычислений для Databricks Connect.
- У вас должен быть доступный идентификатор кластера. Чтобы получить идентификатор кластера, в рабочей области щелкните "Вычислить " на боковой панели и выберите имя кластера. В адресной строке веб-браузера скопируйте строку символов между
clusters
URL-адресом иconfiguration
URL-адресом.
Шаг 1. Создание личного маркера доступа
Примечание.
Databricks Connect для проверки подлинности R в настоящее время поддерживает только личные маркеры доступа Azure Databricks.
В этом руководстве используется проверка подлинности маркера личного доступа Azure Databricks для проверки подлинности в рабочей области Azure Databricks.
Если у вас уже есть личный маркер доступа Azure Databricks, перейдите к шагу 2. Если вы не уверены, у вас уже есть личный маркер доступа Azure Databricks, вы можете выполнить этот шаг, не затрагивая другие личные маркеры доступа Azure Databricks в вашей учетной записи пользователя.
Чтобы создать личный маркер доступа, выполните действия, описанные в разделе "Личные маркеры доступа Azure Databricks" для пользователей рабочей области.
Шаг 2. Создание проекта
- Запустите RStudio Desktop.
- В главном меню нажмите кнопку "Файл > нового проекта".
- Выберите новый каталог.
- Выберите новый проект.
- Для имени каталога и создания проекта в качестве подкаталога введите имя нового каталога проекта и где создать этот каталог проекта.
- Выберите "Использовать представление" с этим проектом. Если появится запрос на установку обновленной
renv
версии пакета, нажмите кнопку "Да". - Нажмите Создать проект.
Шаг 3. Добавление пакета Databricks Connect и других зависимостей
В главном меню RStudio Desktop нажмите кнопку "Сервис > установки пакетов".
Оставьте установку из набора в репозиторий (CRAN).
Для пакетов введите следующий список пакетов, необходимых для пакета Databricks Connect, и в этом руководстве:
sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
Оставьте установку в библиотеку для виртуальной среды R.
Убедитесь, что выбраны зависимости установки.
Щелкните Установить.
При появлении запроса в представлении консоли (просмотр фокуса перемещения в консоль) для продолжения установки введите
Y
.> Пакетыsparklyr
иpysparklyr
их зависимости устанавливаются в виртуальной среде R.В области консоли используйте
reticulate
для установки Python, выполнив следующую команду. (Для Databricks Connect для R требуетсяreticulate
сначала установить Python.) В следующей команде замените3.10
основную и дополнительную версию версии Python, установленной в кластере Azure Databricks. Чтобы найти эту основную и дополнительную версию, ознакомьтесь с разделом "Системная среда" заметок о выпуске для версии среды выполнения Databricks в Databricks Runtime и совместимости.reticulate::install_python(version = "3.10")
В области консоли установите пакет Databricks Connect, выполнив следующую команду. В следующей команде замените
13.3
версию Databricks Runtime, установленную в кластере Azure Databricks. Чтобы найти эту версию, на странице сведений о кластере в рабочей области Azure Databricks на вкладке "Конфигурация " см . поле "Версия среды выполнения Databricks".pysparklyr::install_databricks(version = "13.3")
Если вы не знаете версию среды выполнения Databricks для кластера или не хотите искать ее, можно выполнить следующую команду и
pysparklyr
запросить кластер, чтобы определить правильную версию среды выполнения Databricks для использования:pysparklyr::install_databricks(cluster_id = "<cluster-id>")
Если вы хотите, чтобы проект подключился позже к другому кластеру с той же версией Databricks Runtime,
pysparklyr
что и только что указанный, будет использовать ту же среду Python. Если новый кластер имеет другую версию Databricks Runtime, выполнитеpysparklyr::install_databricks
команду еще раз с новой версией или идентификатором кластера Databricks Runtime.
Шаг 4. Задание переменных среды для URL-адреса рабочей области, маркера доступа и идентификатора кластера
Databricks не рекомендует жестко изменять или изменять значения, такие как URL-адрес рабочей области Azure Databricks, личный маркер доступа Azure Databricks или идентификатор кластера Azure Databricks в скрипты R. Вместо этого сохраните эти значения отдельно, например в переменных локальной среды. В этом руководстве используется встроенная поддержка RStudio Desktop для хранения переменных среды в .Renviron
файле.
.Renviron
Создайте файл для хранения переменных среды, если этот файл еще не существует, а затем откройте этот файл для редактирования: в консоли рабочего стола RStudio выполните следующую команду:usethis::edit_r_environ()
.Renviron
В появившемся файле (просмотр > фокуса перемещения в источник) введите следующее содержимое. В этом содержимом замените следующие заполнители:- Замените
<workspace-url>
URL-адрес рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
. - Замените
<personal-access-token>
личные маркеры доступа Azure Databricks на шаге 1. - Замените
<cluster-id>
идентификатор кластера в соответствии с требованиями этого руководства.
DATABRICKS_HOST=<workspace-url> DATABRICKS_TOKEN=<personal-access-token> DATABRICKS_CLUSTER_ID=<cluster-id>
- Замените
Сохраните файл
.Renviron
.Загрузите переменные среды в R: в главном меню нажмите кнопку "Перезапустить сеанс > R".
Шаг 5. Добавление кода
В главном меню RStudio Desktop нажмите кнопку "Файл > создать скрипт R файла>".
Введите следующий код в файл, а затем сохраните файл (сохранить файл>) как
demo.R
:library(sparklyr) library(dplyr) library(dbplyr) sc <- sparklyr::spark_connect( master = Sys.getenv("DATABRICKS_HOST"), cluster_id = Sys.getenv("DATABRICKS_CLUSTER_ID"), token = Sys.getenv("DATABRICKS_TOKEN"), method = "databricks_connect", envname = "r-reticulate" ) trips <- dplyr::tbl( sc, dbplyr::in_catalog("samples", "nyctaxi", "trips") ) print(trips, n = 5)
Шаг 6. Запуск кода
На рабочем столе RStudio на панели инструментов для
demo.R
файла нажмите кнопку "Источник".В консоли отображаются первые пять строк
trips
таблицы.В представлении "Подключения" (просмотр > "Показать подключения") можно изучить доступные каталоги, схемы, таблицы и представления.
Шаг 7. Отладка кода
demo.R
В файле щелкните забор рядом, чтобыprint(trips, n = 5)
задать точку останова.- На панели инструментов для
demo.R
файла нажмите кнопку "Источник". - При приостановке выполнения кода в точке останова можно проверить переменную в представлении среды (просмотр > среды).
- В главном меню нажмите кнопку "Продолжить отладку>".
- В консоли отображаются первые пять строк
trips
таблицы.