Des données incorrectes coûtent en moyenne 12,9 millions de dollars par an aux entreprises. Comprendre, mesurer et garantir la qualité — c'est le fondement de toute plateforme data fiable.
Un pipeline qui tourne en silence n'est pas forcément un bon pipeline. Il peut ingérer des données manquantes, dupliquées ou obsolètes — et personne ne le saura jusqu'à ce qu'un analyste trouve un chiffre aberrant dans un dashboard. La Data Quality, c'est l'ensemble des pratiques qui empêchent ce scénario.
Chaque dimension mesure un aspect différent — une donnée peut être complète mais inexacte, ou exacte mais obsolète.
Mesure le pourcentage de champs renseignés par rapport au total attendu. Une table à 70% de complétude signifie que 30% des valeurs manquent.
Vérifie que les données reflètent fidèlement le monde réel. Difficile à mesurer sans source de référence — on s'appuie souvent sur des règles métier.
Une même entité (client, produit) peut exister dans plusieurs systèmes. La cohérence garantit qu'elle y est représentée de manière identique.
Une donnée exacte mais obsolète peut être aussi dangereuse qu'une donnée incorrecte. La fraîcheur se mesure par rapport au SLA défini.
Les doublons faussent tous les agrégats — CA doublé, nombre de clients gonflé. Ils apparaissent à l'ingestion (retry, CDC, merge raté).
Une donnée valide respecte le type, le format et les contraintes définies par le domaine. Elle peut être présente et exacte mais invalide (ex. email sans @).
import great_expectations as gx
context = gx.get_context()
batch = context.sources.pandas_default.read_csv("orders.csv")
# Définir les règles (expectations)
batch.expect_column_values_to_not_be_null("order_id")
batch.expect_column_values_to_be_unique("order_id")
batch.expect_column_values_to_be_between(
"amount_eur", min_value=0, max_value=100_000
)
batch.expect_column_values_to_match_regex(
"email", regex=r"^[^@]+@[^@]+.[^@]+$"
)
# Valider et générer le rapport HTML
results = batch.validate()
print(results.success) # True / FalseLes contrôles de qualité se placent à chaque couche — pas seulement à la fin.
La qualité n'est pas un état — c'est un processus. Les métriques doivent être surveillées en permanence.
email⚠ Anomalie détectée J-3La qualité des données n'est pas une fonctionnalité qu'on ajoute à la fin — c'est une discipline transversale qu'on intègre dès le premier pipeline. Une donnée de mauvaise qualité n'est pas neutre : elle active des décisions incorrectes, avec des conséquences métier bien réelles.
Soyez le premier à commenter cet article.
Votre commentaire sera visible après validation par l'administrateur.