Ein DataFrame im Parquet-Format speichern
Wenn du mit Spark arbeitest, startest du oft mit CSV, JSON oder anderen Datenquellen. Das ist zwar flexibel beim Laden unterschiedlicher Datentypen, aber kein optimales Format für Spark. Das Parquet-Format ist ein spaltenorientierter Datenspeicher und ermöglicht Spark das sogenannte Predicate Pushdown. Das bedeutet, Spark verarbeitet nur die Daten, die für deine definierten Operationen nötig sind, statt den gesamten Datensatz einzulesen. Dadurch hat Spark mehr Flexibilität beim Datenzugriff und die Performance verbessert sich bei großen Datensätzen oft drastisch.
In dieser Übung erstellen wir eine neue Parquet-Datei und verarbeiten anschließend einige Daten daraus.
Das spark-Objekt sowie die DataFrames df1 und df2 sind bereits für dich vorbereitet.
Diese Übung ist Teil des Kurses
Datenbereinigung mit PySpark
Anleitung zur Übung
- Gib die Zeilenanzahl von
df1unddf2aus. - Kombiniere
df1unddf2mit der Methodeunionin einem neuen DataFrame namensdf3. - Speichere
df3in eineparquet-Datei mit dem NamenAA_DFW_ALL.parquet. - Lies die Datei
AA_DFW_ALL.parquetein und gib die Anzahl aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# View the row count of df1 and df2
print("df1 Count: %d" % df1.____())
print("df2 Count: %d" % ____.____())
# Combine the DataFrames into one
df3 = df1.union(df2)
# Save the df3 DataFrame in Parquet format
df3.____.____('AA_DFW_ALL.parquet', mode='overwrite')
# Read the Parquet file into a new DataFrame and run a count
print(spark.read.____('AA_DFW_ALL.parquet').count())