LoslegenKostenlos loslegen

Daten in Spark kopieren

Bevor du mit Spark richtig loslegen kannst, musst du deine Daten hineinbekommen. sparklyr bietet Funktionen wie spark_read_csv(), mit denen du eine CSV-Datei in Spark einlesen kannst. Allgemeiner ist es hilfreich, Daten von R nach Spark kopieren zu können. Das geht mit der copy_to()-Funktion aus dplyr. Achtung: Das Kopieren von Daten ist grundsätzlich langsam. Ein wichtiger Teil der Performance-Optimierung bei sehr großen Datensätzen besteht darin, Wege zu finden, das Kopieren von Daten von einem Ort zum anderen zu vermeiden.

copy_to() erwartet zwei Argumente: eine Spark-Verbindung (dest) und einen zu Spark zu kopierenden Data-Frame (df).

Sobald du deine Daten nach Spark kopiert hast, möchtest du vielleicht sicherstellen, dass es geklappt hat. Eine Liste aller in Spark gespeicherten Data-Frames bekommst du mit src_tbls(); diese Funktion nimmt einfach die Spark-Verbindung (x) als Argument entgegen.

Im Laufe des Kurses erkundest du Track-Metadaten aus dem Million Song Dataset. Zwar skaliert Spark weit über eine Million Zeilen hinaus, aber um es einfach und reaktionsschnell zu halten, verwendest du einen Ausschnitt mit tausend Tracks. Zur Begriffsklärung: Ein „Track“ entspricht einer Zeile im Datensatz. Für deinen Datensatz mit tausend Tracks ist das dasselbe wie ein „Song“ (im vollständigen Datensatz mit einer Million Zeilen gab es allerdings einige doppelte Songs).

Diese Übung ist Teil des Kurses

Einführung in Spark mit sparklyr in R

Kurs anzeigen

Anleitung zur Übung

track_metadata mit Songtitel, Künstlername und weiteren Metadaten für 1.000 Tracks wurde in deinem Workspace bereits vordefiniert.

  • Nutze str(), um den Datensatz track_metadata zu untersuchen.
  • Stelle eine Verbindung zu deinem lokalen Spark-Cluster her und speichere sie in spark_conn.
  • Kopiere track_metadata mit copy_to() in den Spark-Cluster.
  • Prüfe mit src_tbls(), welche Data-Frames in Spark verfügbar sind.
  • Trenne die Verbindung zu Spark.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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 bearbeiten und ausführen