Inizia subitoInizia gratis

Copiare dati in Spark

Prima di poter fare qualsiasi lavoro reale con Spark, devi caricarci i tuoi dati. sparklyr offre funzioni come spark_read_csv() per leggere un file CSV in Spark. In generale, è utile poter copiare dati da R a Spark. Questo si fa con la funzione copy_to() di dplyr. Attenzione: copiare dati è intrinsecamente lento. Anzi, gran parte delle strategie per ottimizzare le prestazioni con insiemi di dati molto grandi consiste proprio nel evitare di copiare i dati da un luogo all’altro.

copy_to() richiede due argomenti: una connessione a Spark (dest) e un data frame (df) da copiare su Spark.

Una volta copiati i dati in Spark, potresti voler verificare che tutto sia andato a buon fine. Puoi vedere l’elenco di tutti i data frame presenti in Spark con src_tbls(), che prende semplicemente una connessione a Spark come argomento (x).

Nel corso esplorerai i metadati dei brani del Million Song Dataset. Anche se Spark gestisce tranquillamente ben oltre un milione di righe, per mantenere le cose semplici e reattive userai un sottoinsieme da mille tracce. Per chiarire la terminologia: una traccia corrisponde a una riga dell’insieme di dati. Per il tuo insieme di mille tracce, è la stessa cosa di canzone (anche se il dataset completo da un milione di righe conteneva alcuni duplicati di canzoni).

Questo esercizio fa parte del corso

Introduzione a Spark con sparklyr in R

Visualizza corso

Istruzioni dell'esercizio

track_metadata, che contiene il titolo del brano, il nome dell’artista e altri metadati per 1.000 tracce, è già stato definito nel tuo workspace.

  • Usa str() per esplorare l’insieme di dati track_metadata.
  • Connettiti al tuo cluster Spark locale, salvando la connessione in spark_conn.
  • Copia track_metadata nel cluster Spark usando copy_to().
  • Verifica quali data frame sono disponibili in Spark usando src_tbls().
  • Disconnettiti da Spark.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# 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(___)
Modifica ed esegui il codice