6 façons d'améliorer la qualité de vos données (avec des vérifications automatisées)
6 façons d'améliorer la qualité de vos données (avec des vérifications automatisées)
9 janv. 2024

Janet Revell
Janet Revell
Janet Revell
Ancien rédacteur technique chez Soda
Ancien rédacteur technique chez Soda
Ancien rédacteur technique chez Soda
Table des matières



À l'ère des mégadonnées, la prise de décision consiste à anticiper un état futur en comprenant le passé et le présent. Mais lorsque vos données ne reflètent pas correctement la réalité de votre entreprise, elles ne servent pas de base fiable pour un modèle prédictif quelconque. Plutôt que de stimuler des décisions commerciales éclairées, des données non validées pour la qualité et la fiabilité peuvent être inutiles, voire dommageables, pour votre entreprise.
Des cadres dédiés à la gestion de la qualité des données aident les ingénieurs à se concentrer sur la conception et l'optimisation de pipelines de données fiables qui offrent la meilleure valeur aux entreprises.
Contrairement au code défectueux, qui provoque un dysfonctionnement logiciel, des données de mauvaise qualité peuvent rester indétectées pendant longtemps. Mais lorsqu'elles créent des problèmes, les pompiers (alias l'équipe d'ingénierie des données) sont appelés à la rescousse. Chez Soda, nous voyons souvent des ingénieurs en données dans l'industrie passer trop de temps de travail à réparer les pipelines de données existants et à déboguer les problèmes de données, alors que leur expertise serait mieux utilisée pour concevoir et optimiser l'infrastructure globale de l'entreprise, ou créer de nouveaux produits de données.
C’est pour ces pompiers que Soda existe. Les contrôles de qualité et de fiabilité des données aident les entreprises à détecter les problèmes liés aux données bien avant qu’ils n’aient un impact négatif. Dans ce blog, nous partageons quelques vérifications simples et efficaces que vous pouvez mettre en œuvre dès aujourd'hui pour aider votre entreprise à fonctionner plus harmonieusement et efficacement. En plus, nous partagerons nos réflexions sur certaines solutions à long terme qui vous aideront à placer de bonnes données au cœur de votre modèle d'entreprise.
Qu'est-ce que les vérifications de qualité des données ?
Les vérifications de la qualité des données formulent vos attentes concernant les tables de votre base de données ou les colonnes au sein d’une table. Vous pourriez, par exemple, spécifier que vos jeux de données ne devraient pas être vides ou qu'une certaine colonne ne devrait pas contenir de valeurs dupliquées.
Le Soda Checks Language (SodaCL) est un langage concis et lisible conçu expressément pour la qualité et la fiabilité des données. Les attentes en matière de qualité des données peuvent être définies dans Soda de plusieurs manières.
Les ingénieurs en données et les utilisateurs techniques peuvent rédiger des vérifications SodaCL directement dans un fichier checks.yml ou utiliser les suggestions de vérification dans la CLI de la bibliothèque Soda pour préparer un ensemble de vérifications de qualité des données de base pour vous. Alternativement, vous pouvez ajouter des vérifications SodaCL à une invocation programmatique de la bibliothèque Soda. Les utilisateurs non techniques et commerciaux, comme les analystes de données ou les scientifiques des données, peuvent utiliser une interface utilisateur simple. Les menus déroulants et les champs pré-remplis facilitent la spécification des règles de qualité des données avec des vérifications sans code. De plus, vous pouvez fournir des instructions en langage naturel à SodaGPT, le premier copilote AI pour la qualité des données, pour recevoir des vérifications entièrement formées et syntaxiquement correctes.
SodaGPT est devenu SodaAI.
Pour plus d'informations, allez ici : Annonce de Soda AI : Un bond vers une plateforme de qualité de données axée sur GenAI
Pour comparer les attentes décrites dans votre fichier de vérifications de qualité à vos données réelles, Soda utilise une analyse qu'il exécute contre vos ensembles de données pour extraire des métadonnées et évaluer la qualité des données. Les résultats de l'analyse vous alertent de toute irrégularité dans vos données.
En fonction du type d'alerte et de la pertinence des données affectées, vous pouvez prendre différentes mesures pour résoudre les problèmes, comme corriger la source du problème ou joindre un avertissement aux données avant de les transmettre à une autre équipe. Pour une introduction détaillée à Soda, jetez un œil à notre guide de mise en œuvre des vérifications de qualité des données.
Qualité des données proactive vs réactive : quelle approche fonctionne le mieux ?
Vérifier proactivement les données afin de prévenir les impacts en aval introduit un élément de prévoyance dans les processus et flux de travail qui dépendent de données (de bonne qualité).
Cette approche est très différente de l'approche réactive que nous avons observée dans de nombreuses entreprises. Dans un flux de travail réactif, lorsqu'un problème se produit, l'ingénieur de données doit intervenir le plus rapidement possible et rédiger des vérifications et des correctifs ad hoc. Trop souvent, cela signifie qu'ils sont submergés de tickets, aboutissant au goulot d'étranglement notoire de l'ingénierie des données et à la frustration de toute l'équipe.
Nous avons également vu des ingénieurs en données répéter régulièrement les mêmes vérifications manuelles de fiabilité encore et encore — par exemple, à l'ingestion ou après une transformation. Ils savent généralement que cette situation est loin d’être idéale mais n’ont pas le temps ou les ressources pour chercher des alternatives.
Aspect | Approche réactive | Approche proactive |
|---|---|---|
Quand les problèmes sont détectés | Après qu'un impact en aval se soit produit | Avant que les données n'atteignent les consommateurs |
Réponse de l'équipe | Mode pompier, correctifs urgents | Améliorations planifiées, analyse des causes profondes |
Charge de travail de l'ingénieur de données | Interruptions constantes, surcharge de tickets | Focus sur l'infrastructure et l'optimisation |
Impact sur l'entreprise | Décisions basées sur des données erronées | Des données fiables permettent des décisions sûres |
Coût | Élevé : lutte contre les incendies + dommages en aval | Faible : prévention + détection précoce |
Scénario d'exemple | Dashboard se brise, le PDG demande "Pourquoi les chiffres du T3 sont-ils erronés ?" → s’efforcer de corriger | Une vérification de fraîcheur alerte l’ingénieur 2 heures après une défaillance ETL → correction avant la mise à jour du tableau de bord |
Des vérifications automatiques de la qualité des données vous font passer du réactif au proactif, en capturant les problèmes lors de l'ingestion ou de la transformation bien avant qu'ils n'aient un impact sur les décisions commerciales.
6 Vérifications de la qualité des données que vous pouvez mettre en œuvre aujourd'hui
Voici la bonne nouvelle : si vous êtes un ingénieur en données cherchant à automatiser vos procédures de qualité des données, vous n'avez pas besoin de réinventer la roue. En tant qu'experts dans le domaine, nous avons identifié des vérifications qui faciliteront votre vie dès le premier jour et nécessiteront presque aucune connaissance du domaine. Si l'une de ces vérifications déclenche une alarme lors d'un scan, alors il y a de fortes chances que quelque chose ne tourne pas rond.
1. Suivez le nombre de lignes dans votre ensemble de données
Simple mais efficace, un contrôle du nombre de lignes vous permet de vous assurer que vos ensembles de données ne sont pas vides — une condition préalable importante pour toute tâche en aval. Les vérifications du nombre de lignes peuvent également vous alerter des pics inhabituels dans le volume de vos données.
Exemple : Lorsqu'un ensemble de données transformées contient soudainement beaucoup plus de lignes que prévu, cela peut indiquer un bug dans votre code analytique, comme une jointure externe utilisée incorrectement pour joindre deux tables au lieu d'une jointure interne.
SodaCL :
checks for orders_table: - row_count > 0 - row_count: warn: when > 10000 # Unusual spike name
2. Suivez l'évolution de votre schéma
Un schéma décrit les colonnes dans votre ensemble de données. Bien que les schémas de jeux de données puissent changer aux premiers stades de votre entreprise - colonnes ajoutées ou supprimées, ou changements dans l'ordre des colonnes - ils devraient se stabiliser à un moment donné.
Exemple : Ajoutez une vérification de l'évolution du schéma pour surveiller automatiquement les changements de votre schéma et vous avertir dès que quelque chose se passe. Exécutez deux analyses pour commencer à voir les résultats : d'abord pour capturer une mesure de référence, une autre pour exécuter une comparaison.
SodaCL :
checks for dim_product: - schema: fail: when required column missing
3. Vérifiez la ponctualité de vos données
À une époque où de nouveaux points de données sont produits et transmis de manière continue, il est particulièrement important de garder un œil sur la ponctualité des données. À cette fin, vous pouvez utiliser SodaCL pour mettre en œuvre une vérification de fraîcheur sur une colonne de date ou d'horodatage.
Exemple : Vous pouvez l'utiliser pour configurer une alerte si la donnée la plus récente d'un ensemble de données est plus vieille qu'un jour. Lorsqu'elle est déclenchée, elle vous alerte sur les obstacles dans votre écosystème de données plus large. Peut-être qu'un fournisseur tiers a envoyé par erreur un fichier avec des données anciennes ? Ou peut-être qu'un pipeline n'a pas fonctionné correctement ? Avec une vérification de fraîcheur, vous le saurez.
SodaCL :
checks for inventory
4. Vérifiez que les valeurs sont uniques
Les valeurs en double peuvent grandement déformer les ensembles de données. Appliquez une vérification des doublons pour vous assurer qu'une colonne ne contient que des valeurs uniques.
Exemple : Appliquez-le à la fois à order_id et account_numberpour vous assurer que les commandes ne sont pas faussement dupliquées.
SodaCL :
checks for orders_table
5. Repérez les valeurs invalides
Utilisez une vérification de validité pour émettre des avertissements lorsque les données de votre ensemble de données sont invalides ou inattendues.
Exemple : Quelqu'un a-t-il entré incorrectement une date par accident ? Une colonne de numéros de commande doit-elle contenir un certain nombre de caractères ?
SodaCL :
checks for orders_table: # check for order_date validity - invalid_count(order_date) = 0: valid format: date valid min: 2020-01-01 name: Order date validity - failed rows: fail condition: order_date > current_date() name: Future dates not allowed # check for order_id validity - invalid_count(order_number) = 0: valid regex: 'ORD-[0-9]{6}' name: Order number format pattern check warn
6. Trouvez les pièces manquantes
Utilisez une vérification des manquants pour trouver les NULL et vous assurer que les données avec lesquelles vos équipes travaillent sont complètes.
Example: Un rapport sur les revenus prévus ne donnera pas de prévisions très précises si une colonne monthly_payments manque de valeurs.
checks for suppliers: # a check with a fixed threshold - missing_count(payment_id) = 0 # a check with a relative threshold
Que se passe-t-il lorsque vous commencez à automatiser vos vérifications de qualité des données ?
Nous ne nous lassons jamais de le répéter : l'automatisation de vos vérifications de qualité des données n'apportera que des résultats positifs à votre entreprise. Les ingénieurs en données peuvent revenir à leur véritable travail et, espérons-le, être soulagés de la pression associée aux problèmes de qualité des données non détectés. Plus de goulots d'étranglement liés aux ingénieurs en données !
Bien sûr, des données non fiables ne sont pas seulement une source de stress constante pour l'ingénieur en données. Cela se traduit également par un environnement où vous ne savez jamais vraiment dans quelle mesure vous pouvez faire confiance à vos décisions basées sur les données. Après tout, même le modèle d'apprentissage automatique le plus astucieux ne sera aussi bon que les données sur lesquelles il est formé. En outre, avoir des vérifications automatiques de la qualité des données en place augmente également le potentiel pour des analyses en libre-service, ce que nous aborderons dans un autre guide.
Quelles autres mesures votre entreprise peut-elle prendre ?
La qualité des données n’est pas intrinsèquement bonne ou mauvaise. Ce jugement dépend beaucoup de ce que vous voulez que les données accomplissent. Par exemple, le même ensemble de données peut avoir des exigences de qualité différentes selon qu’il est utilisé pour des rapports que peu de gens lisent, ou pour prendre des décisions stratégiques pour un département entier.
Lorsque tout le monde dans votre entreprise est clair sur ce qu'il attend des données qu'il utilise, vous obtenez des conversations mieux informées sur les données. Voici deux autres façons de guider vos équipes vers un environnement de données fiable.
1. Établissez le concept de propriétaires de données
Des vérifications de qualité régulières et automatisées sont une base importante pour toute entreprise axée sur les données. Mais elles ne peuvent fournir une valeur réelle que lorsqu'une personne est responsable de la gestion des alertes générées lors d'une analyse.
C’est pourquoi chaque ensemble de données devrait avoir un propriétaire de données, une personne qui est en fin de compte responsable de la qualité de ces données. Lorsqu’il y a un problème ou qu’une personne en aval nécessite un changement, le propriétaire des données est sa personne de contact.
Notez que les propriétaires de données ne sont généralement pas des ingénieurs en données. Cela est dû au fait que l'expertise d'un ingénieur en données réside dans la gestion des données plutôt que dans la compréhension du contenu et du contexte des données elles-mêmes.
Un propriétaire de données apporte une expertise domainale à la table grâce à sa connaissance intime de ce que représentent les données et des processus qui les génèrent. Les propriétaires de données et les ingénieurs travaillent ensemble pour apporter des données de haute qualité à tous les membres de l'équipe qui en ont besoin.
2. Attribuez un score de santé à vos produits basés sur des données
Les équipes souhaitent souvent que leurs produits basés sur des données soient 100 % précis, mais ne sont pas conscientes de la réalité peu réaliste de cette attente. En réalité, les données réellement intéressantes peuvent également être très désordonnées !
Les données du monde réel ont toujours des valeurs manquantes, des valeurs aberrantes et d’autres bruits. Une bonne manière pour votre entreprise de répondre à la variabilité inhérente de vos données est de quantifier la fiabilité des données comme un « score de santé ».
Imaginons un instant qu’un des ensembles de données utilisés dans un tableau de bord périodiquement mis à jour échoue à la vérification de fraîcheur. En introduisant un score de santé, vous pouvez toujours mettre à jour votre tableau de bord malgré les données inexactes, mais indiquer aux utilisateurs que c'est légèrement moins fiable que les précédentes itérations. Les utilisateurs de vos données peuvent alors décider d'attendre des données plus fiables ou de travailler avec ce qu'ils ont déjà.
Commencez à vérifier
Prendre le contrôle de la qualité des données peut sembler être un défi insurmontable, mais plus maintenant !
En introduisant des procédures dédiées à la qualité et à la fiabilité des données dans votre flux de travail, vous permettez aux ingénieurs en données d’utiliser leur expertise à son meilleur usage.
De plus, tout le monde dans votre entreprise est récompensé avec des données de meilleure qualité et plus fiables pour travailler.
Commencez un essai gratuit de Soda pour mettre en œuvre dès aujourd'hui des vérifications de qualité des données fondamentales et éviter la douleur de ne pas savoir, ou de découvrir trop tard, qu'un problème de qualité des données a eu un impact en aval. Si vous préférez nous parler directement, prenez rendez-vous.
Bonne chance !
À l'ère des mégadonnées, la prise de décision consiste à anticiper un état futur en comprenant le passé et le présent. Mais lorsque vos données ne reflètent pas correctement la réalité de votre entreprise, elles ne servent pas de base fiable pour un modèle prédictif quelconque. Plutôt que de stimuler des décisions commerciales éclairées, des données non validées pour la qualité et la fiabilité peuvent être inutiles, voire dommageables, pour votre entreprise.
Des cadres dédiés à la gestion de la qualité des données aident les ingénieurs à se concentrer sur la conception et l'optimisation de pipelines de données fiables qui offrent la meilleure valeur aux entreprises.
Contrairement au code défectueux, qui provoque un dysfonctionnement logiciel, des données de mauvaise qualité peuvent rester indétectées pendant longtemps. Mais lorsqu'elles créent des problèmes, les pompiers (alias l'équipe d'ingénierie des données) sont appelés à la rescousse. Chez Soda, nous voyons souvent des ingénieurs en données dans l'industrie passer trop de temps de travail à réparer les pipelines de données existants et à déboguer les problèmes de données, alors que leur expertise serait mieux utilisée pour concevoir et optimiser l'infrastructure globale de l'entreprise, ou créer de nouveaux produits de données.
C’est pour ces pompiers que Soda existe. Les contrôles de qualité et de fiabilité des données aident les entreprises à détecter les problèmes liés aux données bien avant qu’ils n’aient un impact négatif. Dans ce blog, nous partageons quelques vérifications simples et efficaces que vous pouvez mettre en œuvre dès aujourd'hui pour aider votre entreprise à fonctionner plus harmonieusement et efficacement. En plus, nous partagerons nos réflexions sur certaines solutions à long terme qui vous aideront à placer de bonnes données au cœur de votre modèle d'entreprise.
Qu'est-ce que les vérifications de qualité des données ?
Les vérifications de la qualité des données formulent vos attentes concernant les tables de votre base de données ou les colonnes au sein d’une table. Vous pourriez, par exemple, spécifier que vos jeux de données ne devraient pas être vides ou qu'une certaine colonne ne devrait pas contenir de valeurs dupliquées.
Le Soda Checks Language (SodaCL) est un langage concis et lisible conçu expressément pour la qualité et la fiabilité des données. Les attentes en matière de qualité des données peuvent être définies dans Soda de plusieurs manières.
Les ingénieurs en données et les utilisateurs techniques peuvent rédiger des vérifications SodaCL directement dans un fichier checks.yml ou utiliser les suggestions de vérification dans la CLI de la bibliothèque Soda pour préparer un ensemble de vérifications de qualité des données de base pour vous. Alternativement, vous pouvez ajouter des vérifications SodaCL à une invocation programmatique de la bibliothèque Soda. Les utilisateurs non techniques et commerciaux, comme les analystes de données ou les scientifiques des données, peuvent utiliser une interface utilisateur simple. Les menus déroulants et les champs pré-remplis facilitent la spécification des règles de qualité des données avec des vérifications sans code. De plus, vous pouvez fournir des instructions en langage naturel à SodaGPT, le premier copilote AI pour la qualité des données, pour recevoir des vérifications entièrement formées et syntaxiquement correctes.
SodaGPT est devenu SodaAI.
Pour plus d'informations, allez ici : Annonce de Soda AI : Un bond vers une plateforme de qualité de données axée sur GenAI
Pour comparer les attentes décrites dans votre fichier de vérifications de qualité à vos données réelles, Soda utilise une analyse qu'il exécute contre vos ensembles de données pour extraire des métadonnées et évaluer la qualité des données. Les résultats de l'analyse vous alertent de toute irrégularité dans vos données.
En fonction du type d'alerte et de la pertinence des données affectées, vous pouvez prendre différentes mesures pour résoudre les problèmes, comme corriger la source du problème ou joindre un avertissement aux données avant de les transmettre à une autre équipe. Pour une introduction détaillée à Soda, jetez un œil à notre guide de mise en œuvre des vérifications de qualité des données.
Qualité des données proactive vs réactive : quelle approche fonctionne le mieux ?
Vérifier proactivement les données afin de prévenir les impacts en aval introduit un élément de prévoyance dans les processus et flux de travail qui dépendent de données (de bonne qualité).
Cette approche est très différente de l'approche réactive que nous avons observée dans de nombreuses entreprises. Dans un flux de travail réactif, lorsqu'un problème se produit, l'ingénieur de données doit intervenir le plus rapidement possible et rédiger des vérifications et des correctifs ad hoc. Trop souvent, cela signifie qu'ils sont submergés de tickets, aboutissant au goulot d'étranglement notoire de l'ingénierie des données et à la frustration de toute l'équipe.
Nous avons également vu des ingénieurs en données répéter régulièrement les mêmes vérifications manuelles de fiabilité encore et encore — par exemple, à l'ingestion ou après une transformation. Ils savent généralement que cette situation est loin d’être idéale mais n’ont pas le temps ou les ressources pour chercher des alternatives.
Aspect | Approche réactive | Approche proactive |
|---|---|---|
Quand les problèmes sont détectés | Après qu'un impact en aval se soit produit | Avant que les données n'atteignent les consommateurs |
Réponse de l'équipe | Mode pompier, correctifs urgents | Améliorations planifiées, analyse des causes profondes |
Charge de travail de l'ingénieur de données | Interruptions constantes, surcharge de tickets | Focus sur l'infrastructure et l'optimisation |
Impact sur l'entreprise | Décisions basées sur des données erronées | Des données fiables permettent des décisions sûres |
Coût | Élevé : lutte contre les incendies + dommages en aval | Faible : prévention + détection précoce |
Scénario d'exemple | Dashboard se brise, le PDG demande "Pourquoi les chiffres du T3 sont-ils erronés ?" → s’efforcer de corriger | Une vérification de fraîcheur alerte l’ingénieur 2 heures après une défaillance ETL → correction avant la mise à jour du tableau de bord |
Des vérifications automatiques de la qualité des données vous font passer du réactif au proactif, en capturant les problèmes lors de l'ingestion ou de la transformation bien avant qu'ils n'aient un impact sur les décisions commerciales.
6 Vérifications de la qualité des données que vous pouvez mettre en œuvre aujourd'hui
Voici la bonne nouvelle : si vous êtes un ingénieur en données cherchant à automatiser vos procédures de qualité des données, vous n'avez pas besoin de réinventer la roue. En tant qu'experts dans le domaine, nous avons identifié des vérifications qui faciliteront votre vie dès le premier jour et nécessiteront presque aucune connaissance du domaine. Si l'une de ces vérifications déclenche une alarme lors d'un scan, alors il y a de fortes chances que quelque chose ne tourne pas rond.
1. Suivez le nombre de lignes dans votre ensemble de données
Simple mais efficace, un contrôle du nombre de lignes vous permet de vous assurer que vos ensembles de données ne sont pas vides — une condition préalable importante pour toute tâche en aval. Les vérifications du nombre de lignes peuvent également vous alerter des pics inhabituels dans le volume de vos données.
Exemple : Lorsqu'un ensemble de données transformées contient soudainement beaucoup plus de lignes que prévu, cela peut indiquer un bug dans votre code analytique, comme une jointure externe utilisée incorrectement pour joindre deux tables au lieu d'une jointure interne.
SodaCL :
checks for orders_table: - row_count > 0 - row_count: warn: when > 10000 # Unusual spike name
2. Suivez l'évolution de votre schéma
Un schéma décrit les colonnes dans votre ensemble de données. Bien que les schémas de jeux de données puissent changer aux premiers stades de votre entreprise - colonnes ajoutées ou supprimées, ou changements dans l'ordre des colonnes - ils devraient se stabiliser à un moment donné.
Exemple : Ajoutez une vérification de l'évolution du schéma pour surveiller automatiquement les changements de votre schéma et vous avertir dès que quelque chose se passe. Exécutez deux analyses pour commencer à voir les résultats : d'abord pour capturer une mesure de référence, une autre pour exécuter une comparaison.
SodaCL :
checks for dim_product: - schema: fail: when required column missing
3. Vérifiez la ponctualité de vos données
À une époque où de nouveaux points de données sont produits et transmis de manière continue, il est particulièrement important de garder un œil sur la ponctualité des données. À cette fin, vous pouvez utiliser SodaCL pour mettre en œuvre une vérification de fraîcheur sur une colonne de date ou d'horodatage.
Exemple : Vous pouvez l'utiliser pour configurer une alerte si la donnée la plus récente d'un ensemble de données est plus vieille qu'un jour. Lorsqu'elle est déclenchée, elle vous alerte sur les obstacles dans votre écosystème de données plus large. Peut-être qu'un fournisseur tiers a envoyé par erreur un fichier avec des données anciennes ? Ou peut-être qu'un pipeline n'a pas fonctionné correctement ? Avec une vérification de fraîcheur, vous le saurez.
SodaCL :
checks for inventory
4. Vérifiez que les valeurs sont uniques
Les valeurs en double peuvent grandement déformer les ensembles de données. Appliquez une vérification des doublons pour vous assurer qu'une colonne ne contient que des valeurs uniques.
Exemple : Appliquez-le à la fois à order_id et account_numberpour vous assurer que les commandes ne sont pas faussement dupliquées.
SodaCL :
checks for orders_table
5. Repérez les valeurs invalides
Utilisez une vérification de validité pour émettre des avertissements lorsque les données de votre ensemble de données sont invalides ou inattendues.
Exemple : Quelqu'un a-t-il entré incorrectement une date par accident ? Une colonne de numéros de commande doit-elle contenir un certain nombre de caractères ?
SodaCL :
checks for orders_table: # check for order_date validity - invalid_count(order_date) = 0: valid format: date valid min: 2020-01-01 name: Order date validity - failed rows: fail condition: order_date > current_date() name: Future dates not allowed # check for order_id validity - invalid_count(order_number) = 0: valid regex: 'ORD-[0-9]{6}' name: Order number format pattern check warn
6. Trouvez les pièces manquantes
Utilisez une vérification des manquants pour trouver les NULL et vous assurer que les données avec lesquelles vos équipes travaillent sont complètes.
Example: Un rapport sur les revenus prévus ne donnera pas de prévisions très précises si une colonne monthly_payments manque de valeurs.
checks for suppliers: # a check with a fixed threshold - missing_count(payment_id) = 0 # a check with a relative threshold
Que se passe-t-il lorsque vous commencez à automatiser vos vérifications de qualité des données ?
Nous ne nous lassons jamais de le répéter : l'automatisation de vos vérifications de qualité des données n'apportera que des résultats positifs à votre entreprise. Les ingénieurs en données peuvent revenir à leur véritable travail et, espérons-le, être soulagés de la pression associée aux problèmes de qualité des données non détectés. Plus de goulots d'étranglement liés aux ingénieurs en données !
Bien sûr, des données non fiables ne sont pas seulement une source de stress constante pour l'ingénieur en données. Cela se traduit également par un environnement où vous ne savez jamais vraiment dans quelle mesure vous pouvez faire confiance à vos décisions basées sur les données. Après tout, même le modèle d'apprentissage automatique le plus astucieux ne sera aussi bon que les données sur lesquelles il est formé. En outre, avoir des vérifications automatiques de la qualité des données en place augmente également le potentiel pour des analyses en libre-service, ce que nous aborderons dans un autre guide.
Quelles autres mesures votre entreprise peut-elle prendre ?
La qualité des données n’est pas intrinsèquement bonne ou mauvaise. Ce jugement dépend beaucoup de ce que vous voulez que les données accomplissent. Par exemple, le même ensemble de données peut avoir des exigences de qualité différentes selon qu’il est utilisé pour des rapports que peu de gens lisent, ou pour prendre des décisions stratégiques pour un département entier.
Lorsque tout le monde dans votre entreprise est clair sur ce qu'il attend des données qu'il utilise, vous obtenez des conversations mieux informées sur les données. Voici deux autres façons de guider vos équipes vers un environnement de données fiable.
1. Établissez le concept de propriétaires de données
Des vérifications de qualité régulières et automatisées sont une base importante pour toute entreprise axée sur les données. Mais elles ne peuvent fournir une valeur réelle que lorsqu'une personne est responsable de la gestion des alertes générées lors d'une analyse.
C’est pourquoi chaque ensemble de données devrait avoir un propriétaire de données, une personne qui est en fin de compte responsable de la qualité de ces données. Lorsqu’il y a un problème ou qu’une personne en aval nécessite un changement, le propriétaire des données est sa personne de contact.
Notez que les propriétaires de données ne sont généralement pas des ingénieurs en données. Cela est dû au fait que l'expertise d'un ingénieur en données réside dans la gestion des données plutôt que dans la compréhension du contenu et du contexte des données elles-mêmes.
Un propriétaire de données apporte une expertise domainale à la table grâce à sa connaissance intime de ce que représentent les données et des processus qui les génèrent. Les propriétaires de données et les ingénieurs travaillent ensemble pour apporter des données de haute qualité à tous les membres de l'équipe qui en ont besoin.
2. Attribuez un score de santé à vos produits basés sur des données
Les équipes souhaitent souvent que leurs produits basés sur des données soient 100 % précis, mais ne sont pas conscientes de la réalité peu réaliste de cette attente. En réalité, les données réellement intéressantes peuvent également être très désordonnées !
Les données du monde réel ont toujours des valeurs manquantes, des valeurs aberrantes et d’autres bruits. Une bonne manière pour votre entreprise de répondre à la variabilité inhérente de vos données est de quantifier la fiabilité des données comme un « score de santé ».
Imaginons un instant qu’un des ensembles de données utilisés dans un tableau de bord périodiquement mis à jour échoue à la vérification de fraîcheur. En introduisant un score de santé, vous pouvez toujours mettre à jour votre tableau de bord malgré les données inexactes, mais indiquer aux utilisateurs que c'est légèrement moins fiable que les précédentes itérations. Les utilisateurs de vos données peuvent alors décider d'attendre des données plus fiables ou de travailler avec ce qu'ils ont déjà.
Commencez à vérifier
Prendre le contrôle de la qualité des données peut sembler être un défi insurmontable, mais plus maintenant !
En introduisant des procédures dédiées à la qualité et à la fiabilité des données dans votre flux de travail, vous permettez aux ingénieurs en données d’utiliser leur expertise à son meilleur usage.
De plus, tout le monde dans votre entreprise est récompensé avec des données de meilleure qualité et plus fiables pour travailler.
Commencez un essai gratuit de Soda pour mettre en œuvre dès aujourd'hui des vérifications de qualité des données fondamentales et éviter la douleur de ne pas savoir, ou de découvrir trop tard, qu'un problème de qualité des données a eu un impact en aval. Si vous préférez nous parler directement, prenez rendez-vous.
Bonne chance !
À l'ère des mégadonnées, la prise de décision consiste à anticiper un état futur en comprenant le passé et le présent. Mais lorsque vos données ne reflètent pas correctement la réalité de votre entreprise, elles ne servent pas de base fiable pour un modèle prédictif quelconque. Plutôt que de stimuler des décisions commerciales éclairées, des données non validées pour la qualité et la fiabilité peuvent être inutiles, voire dommageables, pour votre entreprise.
Des cadres dédiés à la gestion de la qualité des données aident les ingénieurs à se concentrer sur la conception et l'optimisation de pipelines de données fiables qui offrent la meilleure valeur aux entreprises.
Contrairement au code défectueux, qui provoque un dysfonctionnement logiciel, des données de mauvaise qualité peuvent rester indétectées pendant longtemps. Mais lorsqu'elles créent des problèmes, les pompiers (alias l'équipe d'ingénierie des données) sont appelés à la rescousse. Chez Soda, nous voyons souvent des ingénieurs en données dans l'industrie passer trop de temps de travail à réparer les pipelines de données existants et à déboguer les problèmes de données, alors que leur expertise serait mieux utilisée pour concevoir et optimiser l'infrastructure globale de l'entreprise, ou créer de nouveaux produits de données.
C’est pour ces pompiers que Soda existe. Les contrôles de qualité et de fiabilité des données aident les entreprises à détecter les problèmes liés aux données bien avant qu’ils n’aient un impact négatif. Dans ce blog, nous partageons quelques vérifications simples et efficaces que vous pouvez mettre en œuvre dès aujourd'hui pour aider votre entreprise à fonctionner plus harmonieusement et efficacement. En plus, nous partagerons nos réflexions sur certaines solutions à long terme qui vous aideront à placer de bonnes données au cœur de votre modèle d'entreprise.
Qu'est-ce que les vérifications de qualité des données ?
Les vérifications de la qualité des données formulent vos attentes concernant les tables de votre base de données ou les colonnes au sein d’une table. Vous pourriez, par exemple, spécifier que vos jeux de données ne devraient pas être vides ou qu'une certaine colonne ne devrait pas contenir de valeurs dupliquées.
Le Soda Checks Language (SodaCL) est un langage concis et lisible conçu expressément pour la qualité et la fiabilité des données. Les attentes en matière de qualité des données peuvent être définies dans Soda de plusieurs manières.
Les ingénieurs en données et les utilisateurs techniques peuvent rédiger des vérifications SodaCL directement dans un fichier checks.yml ou utiliser les suggestions de vérification dans la CLI de la bibliothèque Soda pour préparer un ensemble de vérifications de qualité des données de base pour vous. Alternativement, vous pouvez ajouter des vérifications SodaCL à une invocation programmatique de la bibliothèque Soda. Les utilisateurs non techniques et commerciaux, comme les analystes de données ou les scientifiques des données, peuvent utiliser une interface utilisateur simple. Les menus déroulants et les champs pré-remplis facilitent la spécification des règles de qualité des données avec des vérifications sans code. De plus, vous pouvez fournir des instructions en langage naturel à SodaGPT, le premier copilote AI pour la qualité des données, pour recevoir des vérifications entièrement formées et syntaxiquement correctes.
SodaGPT est devenu SodaAI.
Pour plus d'informations, allez ici : Annonce de Soda AI : Un bond vers une plateforme de qualité de données axée sur GenAI
Pour comparer les attentes décrites dans votre fichier de vérifications de qualité à vos données réelles, Soda utilise une analyse qu'il exécute contre vos ensembles de données pour extraire des métadonnées et évaluer la qualité des données. Les résultats de l'analyse vous alertent de toute irrégularité dans vos données.
En fonction du type d'alerte et de la pertinence des données affectées, vous pouvez prendre différentes mesures pour résoudre les problèmes, comme corriger la source du problème ou joindre un avertissement aux données avant de les transmettre à une autre équipe. Pour une introduction détaillée à Soda, jetez un œil à notre guide de mise en œuvre des vérifications de qualité des données.
Qualité des données proactive vs réactive : quelle approche fonctionne le mieux ?
Vérifier proactivement les données afin de prévenir les impacts en aval introduit un élément de prévoyance dans les processus et flux de travail qui dépendent de données (de bonne qualité).
Cette approche est très différente de l'approche réactive que nous avons observée dans de nombreuses entreprises. Dans un flux de travail réactif, lorsqu'un problème se produit, l'ingénieur de données doit intervenir le plus rapidement possible et rédiger des vérifications et des correctifs ad hoc. Trop souvent, cela signifie qu'ils sont submergés de tickets, aboutissant au goulot d'étranglement notoire de l'ingénierie des données et à la frustration de toute l'équipe.
Nous avons également vu des ingénieurs en données répéter régulièrement les mêmes vérifications manuelles de fiabilité encore et encore — par exemple, à l'ingestion ou après une transformation. Ils savent généralement que cette situation est loin d’être idéale mais n’ont pas le temps ou les ressources pour chercher des alternatives.
Aspect | Approche réactive | Approche proactive |
|---|---|---|
Quand les problèmes sont détectés | Après qu'un impact en aval se soit produit | Avant que les données n'atteignent les consommateurs |
Réponse de l'équipe | Mode pompier, correctifs urgents | Améliorations planifiées, analyse des causes profondes |
Charge de travail de l'ingénieur de données | Interruptions constantes, surcharge de tickets | Focus sur l'infrastructure et l'optimisation |
Impact sur l'entreprise | Décisions basées sur des données erronées | Des données fiables permettent des décisions sûres |
Coût | Élevé : lutte contre les incendies + dommages en aval | Faible : prévention + détection précoce |
Scénario d'exemple | Dashboard se brise, le PDG demande "Pourquoi les chiffres du T3 sont-ils erronés ?" → s’efforcer de corriger | Une vérification de fraîcheur alerte l’ingénieur 2 heures après une défaillance ETL → correction avant la mise à jour du tableau de bord |
Des vérifications automatiques de la qualité des données vous font passer du réactif au proactif, en capturant les problèmes lors de l'ingestion ou de la transformation bien avant qu'ils n'aient un impact sur les décisions commerciales.
6 Vérifications de la qualité des données que vous pouvez mettre en œuvre aujourd'hui
Voici la bonne nouvelle : si vous êtes un ingénieur en données cherchant à automatiser vos procédures de qualité des données, vous n'avez pas besoin de réinventer la roue. En tant qu'experts dans le domaine, nous avons identifié des vérifications qui faciliteront votre vie dès le premier jour et nécessiteront presque aucune connaissance du domaine. Si l'une de ces vérifications déclenche une alarme lors d'un scan, alors il y a de fortes chances que quelque chose ne tourne pas rond.
1. Suivez le nombre de lignes dans votre ensemble de données
Simple mais efficace, un contrôle du nombre de lignes vous permet de vous assurer que vos ensembles de données ne sont pas vides — une condition préalable importante pour toute tâche en aval. Les vérifications du nombre de lignes peuvent également vous alerter des pics inhabituels dans le volume de vos données.
Exemple : Lorsqu'un ensemble de données transformées contient soudainement beaucoup plus de lignes que prévu, cela peut indiquer un bug dans votre code analytique, comme une jointure externe utilisée incorrectement pour joindre deux tables au lieu d'une jointure interne.
SodaCL :
checks for orders_table: - row_count > 0 - row_count: warn: when > 10000 # Unusual spike name
2. Suivez l'évolution de votre schéma
Un schéma décrit les colonnes dans votre ensemble de données. Bien que les schémas de jeux de données puissent changer aux premiers stades de votre entreprise - colonnes ajoutées ou supprimées, ou changements dans l'ordre des colonnes - ils devraient se stabiliser à un moment donné.
Exemple : Ajoutez une vérification de l'évolution du schéma pour surveiller automatiquement les changements de votre schéma et vous avertir dès que quelque chose se passe. Exécutez deux analyses pour commencer à voir les résultats : d'abord pour capturer une mesure de référence, une autre pour exécuter une comparaison.
SodaCL :
checks for dim_product: - schema: fail: when required column missing
3. Vérifiez la ponctualité de vos données
À une époque où de nouveaux points de données sont produits et transmis de manière continue, il est particulièrement important de garder un œil sur la ponctualité des données. À cette fin, vous pouvez utiliser SodaCL pour mettre en œuvre une vérification de fraîcheur sur une colonne de date ou d'horodatage.
Exemple : Vous pouvez l'utiliser pour configurer une alerte si la donnée la plus récente d'un ensemble de données est plus vieille qu'un jour. Lorsqu'elle est déclenchée, elle vous alerte sur les obstacles dans votre écosystème de données plus large. Peut-être qu'un fournisseur tiers a envoyé par erreur un fichier avec des données anciennes ? Ou peut-être qu'un pipeline n'a pas fonctionné correctement ? Avec une vérification de fraîcheur, vous le saurez.
SodaCL :
checks for inventory
4. Vérifiez que les valeurs sont uniques
Les valeurs en double peuvent grandement déformer les ensembles de données. Appliquez une vérification des doublons pour vous assurer qu'une colonne ne contient que des valeurs uniques.
Exemple : Appliquez-le à la fois à order_id et account_numberpour vous assurer que les commandes ne sont pas faussement dupliquées.
SodaCL :
checks for orders_table
5. Repérez les valeurs invalides
Utilisez une vérification de validité pour émettre des avertissements lorsque les données de votre ensemble de données sont invalides ou inattendues.
Exemple : Quelqu'un a-t-il entré incorrectement une date par accident ? Une colonne de numéros de commande doit-elle contenir un certain nombre de caractères ?
SodaCL :
checks for orders_table: # check for order_date validity - invalid_count(order_date) = 0: valid format: date valid min: 2020-01-01 name: Order date validity - failed rows: fail condition: order_date > current_date() name: Future dates not allowed # check for order_id validity - invalid_count(order_number) = 0: valid regex: 'ORD-[0-9]{6}' name: Order number format pattern check warn
6. Trouvez les pièces manquantes
Utilisez une vérification des manquants pour trouver les NULL et vous assurer que les données avec lesquelles vos équipes travaillent sont complètes.
Example: Un rapport sur les revenus prévus ne donnera pas de prévisions très précises si une colonne monthly_payments manque de valeurs.
checks for suppliers: # a check with a fixed threshold - missing_count(payment_id) = 0 # a check with a relative threshold
Que se passe-t-il lorsque vous commencez à automatiser vos vérifications de qualité des données ?
Nous ne nous lassons jamais de le répéter : l'automatisation de vos vérifications de qualité des données n'apportera que des résultats positifs à votre entreprise. Les ingénieurs en données peuvent revenir à leur véritable travail et, espérons-le, être soulagés de la pression associée aux problèmes de qualité des données non détectés. Plus de goulots d'étranglement liés aux ingénieurs en données !
Bien sûr, des données non fiables ne sont pas seulement une source de stress constante pour l'ingénieur en données. Cela se traduit également par un environnement où vous ne savez jamais vraiment dans quelle mesure vous pouvez faire confiance à vos décisions basées sur les données. Après tout, même le modèle d'apprentissage automatique le plus astucieux ne sera aussi bon que les données sur lesquelles il est formé. En outre, avoir des vérifications automatiques de la qualité des données en place augmente également le potentiel pour des analyses en libre-service, ce que nous aborderons dans un autre guide.
Quelles autres mesures votre entreprise peut-elle prendre ?
La qualité des données n’est pas intrinsèquement bonne ou mauvaise. Ce jugement dépend beaucoup de ce que vous voulez que les données accomplissent. Par exemple, le même ensemble de données peut avoir des exigences de qualité différentes selon qu’il est utilisé pour des rapports que peu de gens lisent, ou pour prendre des décisions stratégiques pour un département entier.
Lorsque tout le monde dans votre entreprise est clair sur ce qu'il attend des données qu'il utilise, vous obtenez des conversations mieux informées sur les données. Voici deux autres façons de guider vos équipes vers un environnement de données fiable.
1. Établissez le concept de propriétaires de données
Des vérifications de qualité régulières et automatisées sont une base importante pour toute entreprise axée sur les données. Mais elles ne peuvent fournir une valeur réelle que lorsqu'une personne est responsable de la gestion des alertes générées lors d'une analyse.
C’est pourquoi chaque ensemble de données devrait avoir un propriétaire de données, une personne qui est en fin de compte responsable de la qualité de ces données. Lorsqu’il y a un problème ou qu’une personne en aval nécessite un changement, le propriétaire des données est sa personne de contact.
Notez que les propriétaires de données ne sont généralement pas des ingénieurs en données. Cela est dû au fait que l'expertise d'un ingénieur en données réside dans la gestion des données plutôt que dans la compréhension du contenu et du contexte des données elles-mêmes.
Un propriétaire de données apporte une expertise domainale à la table grâce à sa connaissance intime de ce que représentent les données et des processus qui les génèrent. Les propriétaires de données et les ingénieurs travaillent ensemble pour apporter des données de haute qualité à tous les membres de l'équipe qui en ont besoin.
2. Attribuez un score de santé à vos produits basés sur des données
Les équipes souhaitent souvent que leurs produits basés sur des données soient 100 % précis, mais ne sont pas conscientes de la réalité peu réaliste de cette attente. En réalité, les données réellement intéressantes peuvent également être très désordonnées !
Les données du monde réel ont toujours des valeurs manquantes, des valeurs aberrantes et d’autres bruits. Une bonne manière pour votre entreprise de répondre à la variabilité inhérente de vos données est de quantifier la fiabilité des données comme un « score de santé ».
Imaginons un instant qu’un des ensembles de données utilisés dans un tableau de bord périodiquement mis à jour échoue à la vérification de fraîcheur. En introduisant un score de santé, vous pouvez toujours mettre à jour votre tableau de bord malgré les données inexactes, mais indiquer aux utilisateurs que c'est légèrement moins fiable que les précédentes itérations. Les utilisateurs de vos données peuvent alors décider d'attendre des données plus fiables ou de travailler avec ce qu'ils ont déjà.
Commencez à vérifier
Prendre le contrôle de la qualité des données peut sembler être un défi insurmontable, mais plus maintenant !
En introduisant des procédures dédiées à la qualité et à la fiabilité des données dans votre flux de travail, vous permettez aux ingénieurs en données d’utiliser leur expertise à son meilleur usage.
De plus, tout le monde dans votre entreprise est récompensé avec des données de meilleure qualité et plus fiables pour travailler.
Commencez un essai gratuit de Soda pour mettre en œuvre dès aujourd'hui des vérifications de qualité des données fondamentales et éviter la douleur de ne pas savoir, ou de découvrir trop tard, qu'un problème de qualité des données a eu un impact en aval. Si vous préférez nous parler directement, prenez rendez-vous.
Bonne chance !
Trusted by the world’s leading enterprises
Real stories from companies using Soda to keep their data reliable, accurate, and ready for action.
At the end of the day, we don’t want to be in there managing the checks, updating the checks, adding the checks. We just want to go and observe what’s happening, and that’s what Soda is enabling right now.

Sid Srivastava
Director of Data Governance, Quality and MLOps
Investing in data quality is key for cross-functional teams to make accurate, complete decisions with fewer risks and greater returns, using initiatives such as product thinking, data governance, and self-service platforms.

Mario Konschake
Director of Product-Data Platform
Soda has integrated seamlessly into our technology stack and given us the confidence to find, analyze, implement, and resolve data issues through a simple self-serve capability.

Sutaraj Dutta
Data Engineering Manager
Our goal was to deliver high-quality datasets in near real-time, ensuring dashboards reflect live data as it flows in. But beyond solving technical challenges, we wanted to spark a cultural shift - empowering the entire organization to make decisions grounded in accurate, timely data.

Gu Xie
Head of Data Engineering
4,4 sur 5
Commencez à faire confiance à vos données. Aujourd'hui.
Trouvez, comprenez et corrigez tout problème de qualité des données en quelques secondes.
Du niveau de la table au niveau des enregistrements.
Adopté par




Trusted by the world’s leading enterprises
Real stories from companies using Soda to keep their data reliable, accurate, and ready for action.
At the end of the day, we don’t want to be in there managing the checks, updating the checks, adding the checks. We just want to go and observe what’s happening, and that’s what Soda is enabling right now.

Sid Srivastava
Director of Data Governance, Quality and MLOps
Investing in data quality is key for cross-functional teams to make accurate, complete decisions with fewer risks and greater returns, using initiatives such as product thinking, data governance, and self-service platforms.

Mario Konschake
Director of Product-Data Platform
Soda has integrated seamlessly into our technology stack and given us the confidence to find, analyze, implement, and resolve data issues through a simple self-serve capability.

Sutaraj Dutta
Data Engineering Manager
Our goal was to deliver high-quality datasets in near real-time, ensuring dashboards reflect live data as it flows in. But beyond solving technical challenges, we wanted to spark a cultural shift - empowering the entire organization to make decisions grounded in accurate, timely data.

Gu Xie
Head of Data Engineering
4,4 sur 5
Commencez à faire confiance à vos données. Aujourd'hui.
Trouvez, comprenez et corrigez tout problème de qualité des données en quelques secondes.
Du niveau de la table au niveau des enregistrements.
Adopté par
Solutions




Trusted by the world’s leading enterprises
Real stories from companies using Soda to keep their data reliable, accurate, and ready for action.
At the end of the day, we don’t want to be in there managing the checks, updating the checks, adding the checks. We just want to go and observe what’s happening, and that’s what Soda is enabling right now.

Sid Srivastava
Director of Data Governance, Quality and MLOps
Investing in data quality is key for cross-functional teams to make accurate, complete decisions with fewer risks and greater returns, using initiatives such as product thinking, data governance, and self-service platforms.

Mario Konschake
Director of Product-Data Platform
Soda has integrated seamlessly into our technology stack and given us the confidence to find, analyze, implement, and resolve data issues through a simple self-serve capability.

Sutaraj Dutta
Data Engineering Manager
Our goal was to deliver high-quality datasets in near real-time, ensuring dashboards reflect live data as it flows in. But beyond solving technical challenges, we wanted to spark a cultural shift - empowering the entire organization to make decisions grounded in accurate, timely data.

Gu Xie
Head of Data Engineering
4,4 sur 5
Commencez à faire confiance à vos données. Aujourd'hui.
Trouvez, comprenez et corrigez tout problème de qualité des données en quelques secondes.
Du niveau de la table au niveau des enregistrements.
Adopté par
Solutions



