Skip to content
Learni
Voir tous les tutoriels
Data Engineering

Comment garantir la qualité des données en 2026

Read in English

Introduction

La qualité des données est devenue un pilier critique des systèmes modernes. Des données corrompues entraînent des décisions erronées et des coûts élevés. Ce tutoriel vous guide pas à pas dans la mise en place d'une solution de validation automatisée avec Great Expectations. Vous apprendrez à définir des attentes claires, à exécuter des validations et à intégrer ces contrôles dans un pipeline de données. L'approche est progressive et orientée production.

Prérequis

  • Python 3.10+
  • Connaissances de base en pandas
  • Un environnement virtuel configuré
  • Notions de pipelines ETL

Initialisation du projet

terminal
python -m venv venv
source venv/bin/activate
pip install great_expectations pandas

Cette commande crée un environnement isolé et installe Great Expectations avec pandas pour manipuler les données.

Création du contexte GE

terminal
great_expectations init

Initialise la structure de dossiers et fichiers de configuration nécessaires pour Great Expectations.

Définition du datasource

create_datasource.py
import great_expectations as gx
context = gx.get_context()
datasource = context.sources.add_pandas(name="my_pandas_datasource")
context.add_datasource(datasource)

Ce script enregistre une source de données pandas dans le contexte Great Expectations afin de pouvoir y appliquer des validations.

Création d'une expectation suite

create_expectation_suite.py
suite = context.add_expectation_suite(expectation_suite_name="data_quality_suite")
validator = context.get_validator(
    batch_request=datasource.get_asset("my_asset").build_batch_request(),
    expectation_suite_name="data_quality_suite"
)
validator.expect_column_values_to_not_be_null(column="id")
validator.expect_column_values_to_be_unique(column="id")
validator.save_expectation_suite()

On définit ici deux règles de qualité simples : absence de valeurs nulles et unicité sur la colonne id.

Exécution du checkpoint

run_checkpoint.py
checkpoint = context.add_or_update_checkpoint(
    name="my_checkpoint",
    validator=validator
)
results = checkpoint.run()
print(results.success)

Le checkpoint exécute toutes les attentes définies et retourne un booléen indiquant si les données respectent les règles de qualité.

Bonnes pratiques

  • Versionnez vos expectation suites dans Git
  • Utilisez des noms explicites pour les checkpoints
  • Intégrez les validations dans votre pipeline CI/CD
  • Surveillez les taux de succès avec des alertes
  • Documentez les règles métier associées à chaque expectation

Erreurs courantes à éviter

  • Oublier de mettre à jour le batch request après modification du schéma
  • Définir trop d'expectations strictes dès le départ
  • Ne pas gérer les cas de données volumineuses (sampling)
  • Ignorer les résultats de validation dans les logs

Pour aller plus loin

Approfondissez vos compétences avec nos formations dédiées à l'ingénierie des données : https://learni-group.com/formations