Automatisation de la qualité des données dans les pipelines
Un moyen d'améliorer le suivi de la qualité des données dans les pipelines de données d'entreprise.
― 8 min lire
Table des matières
- Comprendre les Pipelines de Données
- L'Importance de la Qualité des Données
- Approches Existantes pour la Validation des données
- Défis des Méthodes Actuelles
- Une Nouvelle Approche pour la Validation des Données
- Conception de la Solution
- Évaluation de la Solution Proposée
- Analyse de Sensibilité
- Efficacité du Système
- Conclusion
- Travaux Futurs
- Source originale
- Liens de référence
Les pipelines de données sont super importants pour beaucoup d'entreprises aujourd'hui. Ces systèmes aident à gérer les données en s'assurant qu'elles sont propres et prêtes à être utilisées dans diverses applications comme l'apprentissage automatique et l'intelligence d'affaires. Mais des problèmes de Qualité des données peuvent survenir, rendant nécessaire de trouver de meilleures façons de surveiller et de corriger ces soucis automatiquement. Cet article explore une méthode pour valider automatiquement la qualité des données dans ces pipelines, visant à gagner du temps et à réduire les erreurs.
Comprendre les Pipelines de Données
Les pipelines de données sont des sèquences de processus qui déplacent des données d'un endroit à un autre. Ils effectuent généralement des actions comme la collecte de données, la transformation et le stockage. Dans beaucoup de boîtes, les pipelines de données tournent souvent, parfois toutes les heures ou chaque jour, pour garder les informations à jour.
Pendant que ces pipelines fonctionnent, ils rencontrent souvent des problèmes de qualité des données. Ces problèmes peuvent survenir à cause de changements dans la façon dont les données sont structurées (dérive de schéma) ou de changements inattendus dans les données elles-mêmes (dérive de données). Ces changements peuvent affecter la fiabilité des informations sur lesquelles les entreprises s'appuient pour prendre des décisions.
L'Importance de la Qualité des Données
Une mauvaise qualité des données peut entraîner des problèmes sérieux. Par exemple, des données incorrectes pourraient amener un modèle d'apprentissage automatique à faire de mauvaises prédictions. En intelligence d'affaires, des données défectueuses peuvent conduire à de mauvaises décisions. Donc, garantir une haute qualité des données est crucial pour toute organisation qui s'appuie sur les données pour fonctionner.
Approches Existantes pour la Validation des données
Actuellement, beaucoup d'entreprises utilisent des méthodes manuelles pour gérer la qualité des données. Les ingénieurs de données passent beaucoup de temps à surveiller les pipelines et à régler les problèmes au fur et à mesure qu'ils apparaissent. Certains outils, comme TensorFlow Data Validation de Google et Deequ d'Amazon, ont été développés pour aider à automatiser certains aspects de la validation des données. Cependant, ces outils nécessitent encore une intervention manuelle importante, ce qui les rend moins efficaces.
Défis des Méthodes Actuelles
Malgré les avancées des outils de validation des données, des défis persistent. Beaucoup d'outils existants obligent les ingénieurs à définir manuellement les règles de qualité des données pour chaque colonne, ce qui peut être long et compliqué, surtout pour les grandes organisations qui gèrent des milliers de pipelines de données.
En plus, les ingénieurs ont souvent besoin d'une compréhension approfondie des données et des méthodes statistiques utilisées pour définir avec précision ces règles. Cela crée une charge supplémentaire pour eux et peut mener à des contrôles de qualité des données incohérents.
Une Nouvelle Approche pour la Validation des Données
Pour relever ces défis, on propose une nouvelle méthode qui détecte automatiquement les problèmes de qualité des données dans les pipelines de données récurrents. Cette méthode s'appuie sur des données historiques, lui permettant d'apprendre des exécutions passées des pipelines. L'objectif est de faciliter la gestion de la qualité des données pour les entreprises, sans nécessiter une intervention manuelle importante.
Tirer Parti des Données Historiques
Notre approche utilise les données des exécutions précédentes du pipeline pour détecter d'éventuels problèmes. En analysant les motifs dans les données historiques, le système peut automatiquement identifier à quoi ressemblent les données "normales" et signaler les écarts par rapport à cette norme.
Par exemple, si un Pipeline de données produit habituellement 50 lignes de données, mais en sort soudainement seulement 10, ce changement peut être le signe d'un problème. Le système apprendra de ces sorties historiques et pourra automatiquement créer des alertes pour les problèmes de qualité des données à l'avenir.
Conception de la Solution
La solution se compose de plusieurs composants qui travaillent ensemble pour fournir un système de validation des données automatisé complet. Voici quelques aspects clés :
Métriques Statistiques
L'approche utilise diverses métriques statistiques pour évaluer la qualité des données. Ces métriques peuvent aider à identifier des problèmes comme les valeurs manquantes, des changements inattendus dans les distributions de données, et des incohérences entre les données attendues et réelles.
Programmation Automatique des Contraintes de Qualité des Données
Au lieu d'exiger des ingénieurs qu'ils écrivent manuellement les règles de qualité des données, notre méthode génère automatiquement ces règles en fonction des propriétés statistiques des données. Cela permet au système de s'adapter aux changements des données au fil du temps, le rendant plus efficace et réduisant la charge de travail des ingénieurs.
Garantir l'Exactitude
Une préoccupation majeure avec les systèmes automatiques est l'exactitude. Pour maintenir une haute précision dans la détection des problèmes de qualité des données, la méthode proposée garantit que la probabilité de faux positifs reste faible. Cela signifie que le système ne signalera que les problèmes de qualité des données qui sont susceptibles d'être réels, minimisant ainsi les alertes inutiles.
Évaluation de la Solution Proposée
Pour tester l'efficacité de notre méthode, nous avons effectué des évaluations approfondies en utilisant des données de production réelles provenant de grandes organisations. Les résultats ont montré que notre approche surpassait significativement les méthodes existantes en termes d'exactitude et d'efficacité.
Tests sur des Données Réelles
Nous avons échantillonné des milliers de pipelines de données et testé le système proposé contre ces scénarios du monde réel. L'évaluation a indiqué que la méthode automatisée pouvait identifier avec précision les problèmes de qualité des données tout en nécessitant une intervention manuelle minimale.
Tests Synthétiques
En plus des tests du monde réel, nous avons effectué des expériences synthétiques où nous avons simulé divers problèmes de qualité des données. Cela impliquait d'introduire des problèmes courants, comme l'augmentation des valeurs nulles ou des changements de schéma, dans les ensembles de données. Le système a réussi à détecter ces problèmes, validant ainsi son efficacité.
Analyse de Sensibilité
Nous avons également examiné comment notre méthode a fonctionné dans des conditions variées, comme différentes longueurs d'entrée de données historiques et divers types de problèmes de qualité des données. Les évaluations ont montré que le système restait efficace même avec un input historique limité, soulignant sa robustesse.
Efficacité du Système
Un aspect essentiel de toute solution automatisée est son efficacité. Notre méthode a été conçue pour traiter les données rapidement, avec une latence minimale dans l'identification des problèmes potentiels. Les benchmarks ont montré que le système pouvait gérer de grands ensembles de données sans difficulté, le rendant adapté aux environnements d'affaires à forte demande.
Conclusion
Dans le monde d'aujourd'hui axé sur les données, garantir la qualité des données est vital. Notre méthode proposée pour automatiser la validation des données dans les pipelines récurrents offre une solution qui réduit la charge sur les ingénieurs de données tout en augmentant l'exactitude et la fiabilité des évaluations de la qualité des données. En tirant parti des données historiques et en utilisant des méthodes statistiques, les organisations peuvent maintenir des normes élevées de qualité des données et prendre des décisions éclairées basées sur des informations précises.
Travaux Futurs
Bien que notre approche montre des résultats prometteurs, il y a encore des domaines à améliorer et des recherches à mener. Nous prévoyons d'explorer des méthodes statistiques plus sophistiquées et de peaufiner les algorithmes pour de meilleures performances. De plus, intégrer ce système dans les écosystèmes de données existants sera une étape cruciale pour le rendre accessible à plus d'organisations.
En fin de compte, notre objectif est de fournir une solution automatisée, fluide pour la gestion de la qualité des données qui permet aux entreprises d'exploiter leurs données de manière efficace et efficiente.
Titre: Auto-Validate by-History: Auto-Program Data Quality Constraints to Validate Recurring Data Pipelines
Résumé: Data pipelines are widely employed in modern enterprises to power a variety of Machine-Learning (ML) and Business-Intelligence (BI) applications. Crucially, these pipelines are \emph{recurring} (e.g., daily or hourly) in production settings to keep data updated so that ML models can be re-trained regularly, and BI dashboards refreshed frequently. However, data quality (DQ) issues can often creep into recurring pipelines because of upstream schema and data drift over time. As modern enterprises operate thousands of recurring pipelines, today data engineers have to spend substantial efforts to \emph{manually} monitor and resolve DQ issues, as part of their DataOps and MLOps practices. Given the high human cost of managing large-scale pipeline operations, it is imperative that we can \emph{automate} as much as possible. In this work, we propose Auto-Validate-by-History (AVH) that can automatically detect DQ issues in recurring pipelines, leveraging rich statistics from historical executions. We formalize this as an optimization problem, and develop constant-factor approximation algorithms with provable precision guarantees. Extensive evaluations using 2000 production data pipelines at Microsoft demonstrate the effectiveness and efficiency of AVH.
Auteurs: Dezhan Tu, Yeye He, Weiwei Cui, Song Ge, Haidong Zhang, Han Shi, Dongmei Zhang, Surajit Chaudhuri
Dernière mise à jour: 2023-06-04 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2306.02421
Source PDF: https://arxiv.org/pdf/2306.02421
Licence: https://creativecommons.org/licenses/by/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.
Liens de référence
- https://www.dropbox.com/sh/cftey10kq0yx28t/AACUq9VBXuJxfxXJ1rZ1QzcTa?dl=0
- https://tex.stackexchange.com/questions/179320/parameter-section-similar-to-input-and-output
- https://tex.stackexchange.com/questions/424066/acmart-multiple-authors-all-with-same-affiliation-one-author-an-additional-af
- https://en.wikipedia.org/wiki/False_positive_rate