Utiliser l'exécution paresseuse
Les opérations en exécution paresseuse renvoient généralement un résultat en un temps similaire, quelle que soit la quantité de données. Rappelez-vous que c’est parce que Spark n’applique aucune transformation tant qu’aucune action n’est demandée.
Dans cet exercice, nous allons définir un DataFrame (aa_dfw_df) et ajouter quelques transformations. Observez le temps nécessaire pour finaliser les transformations lorsqu’elles sont définies, puis lorsqu’on interroge réellement les données. Les écarts peuvent être faibles, mais restent perceptibles. Avec un cluster Spark complet et de plus grands volumes de données, la différence sera d’autant plus marquée.
Cet exercice fait partie du cours
Nettoyer des données avec PySpark
Instructions
- Chargez le DataFrame.
- Ajoutez la transformation
F.lower()à la colonneDestination Airport. - Affichez le DataFrame et notez le temps nécessaire pour terminer cette action.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Load the CSV file
aa_dfw_df = ____.____.____('csv').options(Header=True).load('AA_DFW_2018.csv.gz')
# Add the airport column using the F.lower() method
aa_dfw_df = aa_dfw_df.withColumn('airport', ____(aa_dfw_df['Destination Airport']))
# Show the DataFrame
____