learn.chetana.fr

Pipelines & orchestration

12 min de lectureEssentiel

Un pipeline de données est un DAG

Extraction → nettoyage → features → entraînement → évaluation → publication : des tâches avec des dépendances, exécutées sur un déclencheur (horaire, événement). Les orchestrateurs (Airflow, le vétéran ; Dagster/Prefect, les modernes) gèrent le graphe, les retries, les alertes et l'observabilité.

Tu reconnais immédiatement le modèle : c'est ta CI/CD, avec une différence culturelle — les pipelines de données sont rejoués sur le passé (backfills) et échouent partiellement (la partition du 12 mars a un souci, pas les autres).

L'idempotence n'est pas négociable

La propriété centrale d'une tâche de pipeline : la rejouer produit le même état. Concrètement :

  • écrire en overwrite de partition (annee=2026/mois=07/jour=12), jamais en append aveugle ;
  • des tâches paramétrées par la date logique (« traite le 12 juillet »), pas « traite maintenant » ;
  • résultat : un backfill = relancer bêtement les 90 dernières dates. Sans idempotence, chaque replay double les données.

La qualité des données est un test

« Garbage in, garbage out » devient opérationnel avec des assertions sur les données, exécutées DANS le pipeline :

# à la sortie de l'étape features (great_expectations, pandera, ou du simple assert)
assert df.montant.notna().all(),          "montants NULL détectés"
assert (df.montant >= 0).all(),           "montants négatifs"
assert df.client_id.is_unique,            "doublons clients"
assert len(df) > 0.8 * len_hier,          "volume anormalement bas (-20 %)"

La dernière est la plus précieuse : un volume qui chute signale presque toujours un problème amont (export cassé, partenaire en panne) — le genre d'incident qui, sans assertion, se découvre trois semaines plus tard dans un modèle dégradé.

Où s'arrête le data engineer, où commence le MLE

Frontière floue, mais en pratique : le data engineer amène des données propres et fraîches dans le warehouse/lake ; le MLE construit features, entraînement et déploiement au-dessus. Dans une petite équipe, tu feras les deux — d'où ce module.

🧩 Quiz1/3

Une tâche de pipeline idempotente…

🃏 Flashcards1/4