Tester manuellement un pipeline de données

ETL et ELT en Python

Jake Roach

Data Engineer

Tester des pipelines de données

Les pipelines de données doivent être rigoureusement testés

  • Vérifier que l’extraction, la transformation et le chargement se passent comme prévu

$$

Valider les pipelines réduit la maintenance après déploiement

  • Détecter et corriger les problèmes de qualité des données
  • Améliorer la fiabilité des données

Outils et techniques de test des pipelines

  • Tests de bout en bout
  • Validation aux « points de contrôle »
  • Tests unitaires
ETL et ELT en Python

Environnements de test et de production

Environnements de test et de production pour créer et exécuter des pipelines de données.

ETL et ELT en Python

Tester un pipeline de bout en bout

Test de bout en bout d’un pipeline de données.

Test de bout en bout

  • Confirmer que le pipeline s’exécute de façon répétable
  • Valider les données aux points de contrôle
  • Relecture par des pairs, intégrer les retours
  • Garantir l’accès des consommateurs et leur satisfaction
ETL et ELT en Python

Valider les points de contrôle du pipeline

# Extract, transform, and load data as part of a pipeline
...

# Take a look at the data made available in a Postgres database
loaded_data = pd.read_sql("SELECT * FROM clean_stock_data", con=db_engine)
print(loaded_data.shape)
(6438, 4)
print(loaded_data.head())
         timestamps      volume      open     close                            
1997-05-15 13:30:00  1443120000  0.121875  0.097917
1997-05-16 13:30:00   294000000  0.098438  0.086458
1997-05-19 13:30:00   122136000  0.088021  0.085417
ETL et ELT en Python

Valider des DataFrames

# Extract, transform, and load data, as part of a pipeline
...

# Take a look at the data made available in a Postgres database
loaded_data = pd.read_sql("SELECT * FROM clean_stock_data", con=db_engine)

# Compare the two DataFrames.
print(clean_stock_data.equals(loaded_data))
True
ETL et ELT en Python

Passons à la pratique !

ETL et ELT en Python

Preparing Video For Download...