ComenzarEmpieza gratis

Copiar datos en Spark

Antes de poder hacer cualquier trabajo real con Spark, necesitas cargar tus datos en él. sparklyr incluye funciones como spark_read_csv() que leen un archivo CSV en Spark. De forma más general, es útil poder copiar datos desde R a Spark. Esto se hace con la función copy_to() de dplyr. Aviso: copiar datos es un proceso intrínsecamente lento. De hecho, gran parte de la estrategia para optimizar el rendimiento con conjuntos de datos grandes consiste en evitar mover los datos de un sitio a otro.

copy_to() recibe dos argumentos: una conexión a Spark (dest) y un data frame (df) que se copiará a Spark.

Una vez que hayas copiado tus datos a Spark, quizá quieras comprobar que realmente ha funcionado. Puedes ver una lista de todos los data frames almacenados en Spark usando src_tbls(), que simplemente recibe una conexión a Spark (x).

A lo largo del curso, explorarás metadatos de pistas del Million Song Dataset. Aunque Spark escala sin problema más allá de un millón de filas, para mantener todo simple y ágil, usarás un subconjunto de mil pistas. Para clarificar la terminología: una track es una fila del conjunto de datos. En tu conjunto de mil pistas, esto equivale a una canción (aunque el conjunto completo de un millón de filas tenía canciones duplicadas).

Este ejercicio forma parte del curso

Introducción a Spark con sparklyr en R

Ver curso

Instrucciones del ejercicio

track_metadata, que contiene el nombre de la canción, el nombre del artista y otros metadatos para 1.000 pistas, ya está predefinido en tu espacio de trabajo.

  • Usa str() para explorar el conjunto de datos track_metadata.
  • Conéctate a tu clúster local de Spark y guarda la conexión en spark_conn.
  • Copia track_metadata al clúster de Spark usando copy_to().
  • Consulta qué data frames hay disponibles en Spark usando src_tbls().
  • Desconéctate de Spark.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Load dplyr
___

# Explore track_metadata structure
___

# Connect to your Spark cluster
spark_conn <- spark_connect("___")

# Copy track_metadata to Spark
track_metadata_tbl <- ___(___, ___, overwrite = TRUE)

# List the data frames available in Spark
___(___)

# Disconnect from Spark
spark_disconnect(___)
Editar y ejecutar código