Enregistrement d'un DataFrame au format Parquet
Lorsque vous travaillez avec Spark, vous commencez souvent par des sources de données CSV, JSON ou autres. Cela offre beaucoup de flexibilité pour les types de données à charger, mais ce n'est pas un format optimal pour Spark. Le format Parquet
est un magasin de données en colonnes, ce qui permet à Spark d'utiliser le pushdown des prédicats. Cela signifie que Spark ne traitera que les données nécessaires pour effectuer les opérations que vous définissez plutôt que de lire l'ensemble des données. Cela donne à Spark plus de flexibilité dans l'accès aux données et améliore souvent drastiquement les performances sur les grands ensembles de données.
Dans cet exercice, nous allons nous entraîner à créer un nouveau fichier Parquet et à en traiter les données.
L'objet spark
et les DataFrame df1
et df2
ont été configurés pour vous.
Cet exercice fait partie du cours
Nettoyer des données avec PySpark
Instructions
- Consultez le nombre de lignes de
df1
etdf2
. - Combinez
df1
etdf2
dans un nouveau DataFrame nommédf3
avec la méthodeunion
. - Enregistrez
df3
dans un fichierparquet
nomméAA_DFW_ALL.parquet
. - Lisez le fichier
AA_DFW_ALL.parquet
et affichez le décompte.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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())