Speichern eines DataFrames im Parquet-Format
Wenn du mit Spark arbeitest, beginnst du oft mit CSV-, JSON- oder anderen Datenquellen. Das bietet viel Flexibilität bei den zu ladenden Datentypen, aber es ist kein optimales Format für Spark. Das Format Parquet
ist ein spaltenbasierter Datenspeicher, der es Spark ermöglicht, Predicate Pushdown zu verwenden. Das bedeutet, dass Spark nur die Daten verarbeitet, die für die von dir definierten Operationen notwendig sind, anstatt den gesamten Datensatz zu lesen. Dadurch erhält Spark mehr Flexibilität beim Zugriff auf die Daten und verbessert die Leistung bei großen Datensätzen oft drastisch.
In dieser Übung werden wir üben, eine neue Parquet-Datei zu erstellen und dann einige Daten daraus zu verarbeiten.
Das Objekt spark
und die DataFrames df1
und df2
wurden für dich eingerichtet.
Diese Übung ist Teil des Kurses
Daten bereinigen mit PySpark
Anleitung zur Übung
- Schau dir die Zeilenzahl von
df1
unddf2
an. - Kombiniere
df1
unddf2
in einem neuen DataFrame namensdf3
mit der Methodeunion
. - Speichere
df3
in eineparquet
Datei mit dem NamenAA_DFW_ALL.parquet
. - Lies die Datei
AA_DFW_ALL.parquet
und zeige die Anzahl an.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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())