Immutabilité et exécution paresseuse

Nettoyer des données avec PySpark

Mike Metzger

Data Engineering Consultant

Rappel sur les variables

Variables Python :

  • Mutables
  • Flexibles
  • Risque de problèmes en concurrence
  • Susceptibles d'ajouter de la complexité
Nettoyer des données avec PySpark

Immutabilité

Les variables immuables sont :

  • Un élément de la programmation fonctionnelle
  • Définies une seule fois
  • Non modifiables directement
  • Recréées lors d'une réaffectation
  • Partageables efficacement
Nettoyer des données avec PySpark

Exemple d'immuabilité

Définir un nouveau DataFrame :

voter_df = spark.read.csv('voterdata.csv')

Apporter des modifications :

voter_df = voter_df.withColumn('fullyear', 
    voter_df.year + 2000)

voter_df = voter_df.drop(voter_df.year)
Nettoyer des données avec PySpark

Exécution paresseuse

  • N'est-ce pas lent ?
  • Transformations
  • Actions
  • Permet une planification efficace
voter_df = voter_df.withColumn('fullyear', 
    voter_df.year + 2000)
voter_df = voter_df.drop(voter_df.year)

voter_df.count()
Nettoyer des données avec PySpark

Passons à la pratique !

Nettoyer des données avec PySpark

Preparing Video For Download...