Databricks Connect para R
Nota:
En este artículo se habla de la integración sparklyr
con Databricks Connect para Databricks Runtime 13.0 y versiones posteriores. Esta integración no la proporciona Databricks ni es compatible directamente con Databricks.
Para preguntas, vaya a Posit Community.
Para notificar problemas, vaya a la sección Problemas del repositorio sparklyr
en GitHub.
Para más información, consulte Databricks Connect v2 en la documentación de sparklyr
.
En este artículo se muestra cómo empezar a trabajar rápidamente con Databricks Connect usando R, sparklyr
, y RStudio Desktop.
- Para obtener la versión de Python de este artículo, consulte Databricks Connect para Python.
- Para obtener la versión de Scala de este artículo, consulte Databricks Connect para Scala.
Databricks Connect le permite conectar los clústeres de Azure Databricks a entornos de desarrollo integrado populares como RStudio Desktop, servidores de cuadernos y otras aplicaciones personalizadas. Consulte ¿Qué es Databricks Connect?.
Tutorial
En este tutorial se usa RStudio Desktop y Python 3.10. Si aún no las tiene instaladas, instale R y RStudio Desktop y Python 3.10.
Para obtener información complementaria sobre este tutorial, consulte la sección “Databricks Connect” de Spark Connect y Databricks Connect v2 en el sitio web de sparklyr
.
Requisitos
Para completar este tutorial, debe cumplir los siguientes requisitos:
- El área de trabajo y el clúster de Azure Databricks de destino deben cumplir los requisitos de configuración de proceso para Databricks Connect.
- Debe tener disponible el identificador de clúster. Para obtener el identificador del clúster, en el área de trabajo, haga clic en Proceso en la barra lateral y luego haga clic en el nombre del clúster. En la barra de direcciones del explorador web, copie la cadena de caracteres entre
clusters
yconfiguration
de la dirección URL.
Paso 1: Crear un token de acceso personal
Nota:
Databricks Connect actualmente solo admite tokens de acceso personal de Azure Databricks para la autenticación R.
En este tutorial se usa la autenticación de tokens de acceso personal de Azure Databricks para autenticarse con el área de trabajo de Azure Databricks.
Si ya tiene un token de acceso personal de Azure Databricks, vaya al Paso 2. Si no está seguro de si ya tiene un token de acceso personal de Azure Databricks, puede seguir este paso sin afectar a ningún otro token de acceso personal de Azure Databricks en su cuenta de usuario.
Para crear un token de acceso personal, siga los pasos descritos en Tokens de acceso personal de Azure Databricks para los usuarios del área de trabajo.
Paso 2: Crear el proyecto
- Inicie RStudio Desktop.
- En el menú principal, haga clic en Archivo > Nuevo proyecto.
- Seleccione Nuevo directorio.
- Seleccione Nuevo proyecto.
- En Nombre de directorio y Crear proyecto como subdirectorio de, escriba el nuevo nombre del directorio del proyecto y dónde crear este nuevo directorio de proyecto.
- Seleccione Usar renv con este proyecto. Si se le pide que instale una versión actualizada del paquete
renv
, haga clic en Sí. - Haga clic en Crear proyecto.
Paso 3: Agregar el paquete de Databricks Connect y otras dependencias
En el menú principal de RStudio Desktop, haga clic en Herramientas > Instalar paquetes.
Deje Instalar desde establecido en Repositorio (CRAN).
En Paquetes, escriba la siguiente lista de paquetes que son requisitos previos para el paquete de Databricks Connect y este tutorial:
sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
Deje Instalar en biblioteca establecido en el entorno virtual de R.
Asegúrese de que Instalar dependencias está seleccionado.
Haga clic en Instalar.
Cuando se le solicite en la vista Consola (Ver > Mover el foco a la consola) para continuar con la instalación, escriba
Y
. Los paquetessparklyr
ypysparklyr
y sus dependencias se instalan en el entorno virtual de R.En el panel Consola, use
reticulate
para instalar Python mediante la ejecución del comando siguiente. (Databricks Connect para R requiere quereticulate
y Python se instalen primero). En el comando siguiente, reemplace3.10
por la versión principal y secundaria de la versión de Python instalada en el clúster de Azure Databricks. Para encontrar esta versión principal y secundaria, consulte la sección "Entorno del sistema" de las notas de la versión para conocer la versión de Databricks Runtime del clúster en Versiones y compatibilidad de las notas de la versión de Databricks Runtime.reticulate::install_python(version = "3.10")
En el panel Consola, instale el paquete Databricks Connect ejecutando el comando siguiente. En el comando siguiente, reemplace
13.3
por la versión de Databricks Runtime instalada en el clúster de Azure Databricks. Para encontrar esta versión, en la página de detalles del clúster en el área de trabajo de Azure Databricks, en la pestaña Configuración, consulte el cuadro Versión de Databricks Runtime.pysparklyr::install_databricks(version = "13.3")
Si no conoce la versión de Databricks Runtime del clúster o no quiere buscarla, puede ejecutar el siguiente comando en su lugar y
pysparklyr
consultará el clúster para determinar la versión correcta de Databricks Runtime que se va a usar:pysparklyr::install_databricks(cluster_id = "<cluster-id>")
Si quiere que el proyecto se conecte más adelante a un clúster diferente que tenga la misma versión de Databricks Runtime que la especificada,
pysparklyr
usará el mismo entorno de Python. Si el nuevo clúster tiene otra versión de Databricks Runtime, debe volver a ejecutar el comandopysparklyr::install_databricks
con la nueva versión de Databricks Runtime o el identificador de clúster.
Paso 4: Establecer variables de entorno para la dirección URL del área de trabajo, el token de acceso y el identificador de clúster
Databricks no recomienda codificar de forma rígida valores como la dirección URL del área de trabajo de Azure Databricks, el token de acceso personal de Azure Databricks o el identificador de clúster de Azure Databricks en los scripts de R. En su lugar, almacene estos valores por separado, por ejemplo, en variables de entorno locales. En este tutorial se usa la compatibilidad integrada de RStudio Desktop para almacenar variables de entorno en un archivo .Renviron
.
Cree un archivo
.Renviron
para almacenar las variables de entorno, si este archivo aún no existe y, a continuación, abra este archivo para su edición: en RStudio Desktop Consola, ejecute el siguiente comando:usethis::edit_r_environ()
En el archivo
.Renviron
que aparece (Ver > Mover el foco al origen), escriba el siguiente contenido. En este contenido, reemplace los siguientes marcadores de posición:- Reemplace
<workspace-url>
por la dirección URL por área de trabajo; por ejemplo,https://adb-1234567890123456.7.azuredatabricks.net
. - Reemplace
<personal-access-token>
por el del token de acceso personal de Azure Databricks del paso 1. - Reemplace
<cluster-id>
con el identificador de clúster de los requisitos de este tutorial.
DATABRICKS_HOST=<workspace-url> DATABRICKS_TOKEN=<personal-access-token> DATABRICKS_CLUSTER_ID=<cluster-id>
- Reemplace
Guarde el archivo
.Renviron
.Cargue las variables de entorno en R: en el menú principal, haga clic en Sesión > Reiniciar R.
Paso 5: adición de un código
En el menú principal de RStudio Desktop, haga clic en Archivo> Nuevo archivo > Script R.
Escriba el siguiente código en el archivo y guarde el archivo (Archivo > Guardar) como
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)
Paso 6: ejecutar el código
En RStudio Desktop, en la barra de herramientas del archivo
demo.R
, haga clic en Origen.En la Consola, aparecen las cinco primeras filas de la tabla
trips
.En la vista Conexiones (Ver > Mostrar conexiones), puede explorar catálogos, esquemas, tablas y vistas disponibles.
Paso 7: Depurar el código
- En el archivo
demo.R
, haga clic en el medianil situado junto aprint(trips, n = 5)
para establecer un punto de interrupción. - En la barra de herramientas del archivo
demo.R
, haga clic en Origen. - Cuando el código se detiene en ejecución en el punto de interrupción, puede inspeccionar la variable en la vista Entorno (Vista > Mostrar entorno).
- En el menú principal, haga clic en Depurar > Continuar.
- En la Consola, aparecen las cinco primeras filas de la tabla
trips
.