Aan de slagBegin gratis

Gegevens naar Spark kopiëren

Voordat je echt met Spark aan de slag kunt, moet je je gegevens erin krijgen. sparklyr heeft functies zoals spark_read_csv() die een CSV-bestand in Spark kunnen inlezen. Algemeen geldt dat het handig is om data van R naar Spark te kunnen kopiëren. Dat doe je met de copy_to()-functie van dplyr. Let op: data kopiëren is van nature traag. Sterker nog, veel prestatie-optimalisatie bij grote gegevenssets draait om manieren vinden om te voorkomen dat je data van de ene plek naar de andere moet kopiëren.

copy_to() neemt twee argumenten: een Spark-verbinding (dest) en een data frame (df) om naar Spark over te zetten.

Als je je data eenmaal naar Spark hebt gekopieerd, wil je waarschijnlijk even checken of dat gelukt is. Je kunt alle data frames die in Spark zijn opgeslagen bekijken met src_tbls(), dat simpelweg een Spark-verbinding (x) als argument neemt.

In de hele cursus werk je met trackmetadata uit de Million Song Dataset. Hoewel Spark moeiteloos veel verder opschaalt dan een miljoen rijen, houden we het eenvoudig en vlot met een subset van duizend tracks. Even de terminologie verduidelijken: een track is een rij in de gegevensset. Voor je gegevensset met duizend tracks is dat hetzelfde als een song (al bevat de volledige set van een miljoen rijen enkele dubbele nummers).

Deze oefening maakt deel uit van de cursus

Introductie tot Spark met sparklyr in R

Bekijk cursus

Oefeninstructies

track_metadata, met de songnaam, artiest en andere metadata voor 1.000 tracks, is al vooraf gedefinieerd in je werkruimte.

  • Gebruik str() om de track_metadata-gegevensset te verkennen.
  • Maak verbinding met je lokale Spark-cluster en sla de verbinding op in spark_conn.
  • Kopieer track_metadata naar het Spark-cluster met copy_to().
  • Bekijk welke data frames beschikbaar zijn in Spark met src_tbls().
  • Verbreek de verbinding met Spark.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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(___)
Code bewerken en uitvoeren