Compartir a través de


sparklyr

Azure Databricks admite sparklyr en cuadernos, trabajos y RStudio Desktop. En este artículo se describe cómo puede usar sparklyr y se proporcionan scripts de ejemplo que puede ejecutar. Consulte Interfaz de R para Apache Spark para obtener más información.

Requisitos

Azure Databricks distribuye la última versión estable de sparklyr con cada versión de ejecución de Databricks. Puede usar sparklyr en cuadernos de Azure Databricks R o en RStudio Server hospedado en Azure Databricks importando la versión instalada de sparklyr.

En RStudio Desktop, Databricks Connect permite conectar sparklyr desde la máquina local a los clústeres de Azure Databricks y ejecutar código de Apache Spark. Consulte Uso de sparklyr y RStudio Desktop con Databricks Connect.

Conectar sparklyr a clústeres de Azure Databricks

Para establecer una conexión sparklyr, puede usar "databricks" como método de conexión en spark_connect(). No se necesitan parámetros adicionales para spark_connect(), ni se llama a spark_install() porque Spark ya está instalado en un clúster de Azure Databricks.

# Calling spark_connect() requires the sparklyr package to be loaded first.
library(sparklyr)

# Create a sparklyr connection.
sc <- spark_connect(method = "databricks")

Barras de progreso e interfaz de usuario de Spark con sparklyr

Si se asigna el objeto de conexión sparklyr a una variable denominada sc como en el ejemplo anterior, verá barras de progreso de Spark en el cuaderno después de cada comando que desencadena trabajos de Spark. Además, puede hacer clic en el vínculo situado junto a la barra de progreso para ver la interfaz de usuario de Spark asociada al trabajo de Spark determinado.

Progreso de Sparklyr

Uso de sparklyr

Después de instalar sparklyr y establecer la conexión, todas las demás API de sparklyr funcionan como lo hacen normalmente. Consulte el cuaderno de ejemplo para ver algunos ejemplos.

sparklyr se suele usar junto con otros paquetes de tidyverse, como dplyr. La mayoría de estos paquetes están preinstalados en Databricks para su comodidad. Simplemente puede importarlos y empezar a usar la API.

Uso conjunto de sparklyr y SparkR

SparkR y sparklyr se pueden usar juntos en un único cuaderno o trabajo. Puede importar SparkR junto con sparklyr y usar su funcionalidad. En los cuadernos de Azure Databricks, la conexión de SparkR está preconfigurada.

Algunas de las funciones de SparkR enmascaran varias funciones en dplyr:

> library(SparkR)
The following objects are masked from ‘package:dplyr’:

arrange, between, coalesce, collect, contains, count, cume_dist,
dense_rank, desc, distinct, explain, filter, first, group_by,
intersect, lag, last, lead, mutate, n, n_distinct, ntile,
percent_rank, rename, row_number, sample_frac, select, sql,
summarize, union

Si importa SparkR después de importar dplyr, puede hacer referencia a las funciones de dplyr mediante los nombres completos, por ejemplo, dplyr::arrange(). Del mismo modo, si importa dplyr después de SparkR, dplyr enmascara las funciones de SparkR.

Como alternativa, puede separar de forma selectiva uno de los dos paquetes mientras no lo necesite.

detach("package:dplyr")

Consulte también Comparación entre SparkR y sparklyr.

Uso de sparklyr en trabajos de spark-submit

Puede ejecutar scripts que usen SparkR en Azure Databricks como trabajos de spark-submit, con modificaciones de código menores. Algunas de las instrucciones anteriores no se aplican al uso de sparklyr en trabajos de spark-submit en Azure Databricks. En concreto, debe proporcionar la dirección URL maestra de Spark a spark_connect. Por ejemplo:

library(sparklyr)

sc <- spark_connect(method = "databricks", spark_home = "<spark-home-path>")
...

Características no admitidas

Azure Databricks no admite métodos sparklyr como spark_web() y spark_log() que requieren un explorador local. Sin embargo, dado que la interfaz de usuario de Spark está integrada en Azure Databricks, puede inspeccionar fácilmente los trabajos y registros de Spark. Consulte Registro de trabajo y controlador de proceso.

Cuaderno de ejemplo: demostración de Sparklyr

Cuaderno de Sparklyr

Obtener el cuaderno

Para ver más ejemplos, consulte Trabajo con DataFrames y tablas en R.