Spark-Datentypen erkunden
Du hast bereits (in Kapitel 1) src_tbls() kennengelernt, um die DataFrames auf Spark aufzulisten, die sparklyr sehen kann. Außerdem hast du glimpse() verwendet, um die Spalten eines Tibbles auf der R-Seite zu erkunden.
sparklyr hat eine Funktion namens sdf_schema(), um die Spalten eines Tibbles auf der R-Seite zu untersuchen. Sie ist leicht aufzurufen; mit dem Rückgabewert zu arbeiten, ist jedoch etwas mühsam.
sdf_schema(a_tibble)
Der Rückgabewert ist eine Liste, und jedes Element ist wiederum eine Liste mit zwei Elementen, die den Namen und den Datentyp jeder Spalte enthalten. Die Übung zeigt eine Daten-Transformation, um die Datentypen leichter sichtbar zu machen.
Hier ist ein Vergleich, wie R-Datentypen auf Spark-Datentypen abgebildet werden. Andere Datentypen werden derzeit von sparklyr nicht unterstützt.
| R type | Spark type |
|---|---|
| logical | BooleanType |
| numeric | DoubleType |
| integer | IntegerType |
| character | StringType |
| list | ArrayType |
Diese Übung ist Teil des Kurses
Einführung in Spark mit sparklyr in R
Anleitung zur Übung
Es wurde bereits eine Spark-Verbindung als spark_conn erstellt. Ein Tibble, das mit den in Spark gespeicherten Track-Metadaten verknüpft ist, wurde als track_metadata_tbl vordefiniert.
- Rufe
sdf_schema()auf, um das Schema der Track-Metadaten zu erhalten. - Führe den Transformationscode auf
schemaaus, um das Ergebnis in einem besser lesbaren Tibble-Format zu sehen.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# track_metadata_tbl has been pre-defined
track_metadata_tbl
# Get the schema
(schema <- ___(___))
# Transform the schema
schema %>%
lapply(function(x) do.call(data_frame, x)) %>%
bind_rows()