Data profiling : un incontournable de la qualité des données

Tête en 3D fil de fer regardant des statistiques de données évoquant le profilage des données

Comme vous le savez, mieux vous analysez vos données, plus elles vous apportent de la valeur. Toutefois, il convient d’évaluer au préalable le contenu et la qualité de vos données, d’autant plus que leur volume et leur variété augmentent sans cesse (big data). En somme, il n’a jamais été autant nécessaire de surveiller et de nettoyer les données.

Le profilage des données (ou data profiling en anglais) sont des techniques puissantes pour lutter contre les données inexactes, manquante ou inutilisables. Il permet notamment d’améliorer la qualité des données et d’acquérir un avantage concurrentiel sur le marché.

Dans cet article, nous étudions la définition, les techniques et les technologies associées au data profiling, ainsi que son fonctionnement dans la pratique et la manière dont il aide les entreprises à résoudre leurs problèmes de données.

Qu’est-ce que le data profiling ?

Le data profiling est le processus consistant à évaluer les sources de données, analyser leur structure, leur contenu et leurs relations dans le but d’identifier leurs usages et problèmes potentiels.

En d’autres termes, le data profiling est l’acte d’examiner et d’analyser des données pour en apprendre davantage sur leur structure, les informations qu’elles incluent, les liens entre différents ensembles de données et les applications potentielles.

Par exemple, les équipes d’analyse de données effectuent un data profiling pour mieux comprendre l’état et la valeur de leurs données avant de se lancer dans les développements. En somme, le data profiling est une sorte d’état des lieux de la donnée.

Pourquoi avons-nous besoin du data profiling ?

Le data profiling peut vous aider à trouver, comprendre et gérer vos données. Si vous ne l’utilisez pas déjà dans votre entreprise, nous vous conseillons de le mettre en place sans délai et voilà pourquoi :

Tout d’abord, le data profiling vous permet de vérifier que vos données correspondent bien à la description qui en est faite (idéalement dans votre catalogue de données).

Il peut ensuite vous aider à mieux comprendre vos données en révélant les connexions entre différentes bases de données, applications sources ou tables.

De surcroît, le data profiling vous aide à trouver des pépites d’informations enfouies dans vos propres données et à vous assurer que vos données sont conformes aux normes de l’industrie en matière d’exigences métiers spécifiques à votre entreprise.

Par exemple, des colonnes Pays peuvent avoir des codes à deux lettres, ainsi que des noms complets de pays parfois mal orthographiés. Le data profiling révélera cette divergence et fournira des informations pour l’élaboration d’une méthode de normalisation qui pourrait aboutir à des codes uniformes à deux lettres pour toutes les applications de l’entreprise. Dans cet exemple, il peut donc aider une démarche de gestion des données maître (master data management ou MDM).

Types de data profiling

Le data profiling peut être de trois types principaux :

  1. Découverte de structures
  2. Découverte de contenu
  3. Découverte de relations

Découverte de structures

L’analyse de structure, communément appelée découverte de structure, confirme l’exactitude et le formatage correct des données dont vous disposez déjà.  Vous pouvez y parvenir en utilisant des techniques telles que la correspondance de motifs (ou pattern matching en anglais).

Par exemple, le pattern matching peut vous aider à localiser les ensembles valides de formats contenus dans un ensemble de données de numéros de téléphone. Ainsi, vous pouvez déterminer la nature textuelle ou numérique d’un champ, ainsi que d’autres détails spécifiques au format.

La vérification peut s’étendre aux modèles de données. Par exemple : y a-t-il des colonnes redondantes dans une même table ?

Découverte de contenu

Le processus de découverte de contenu consiste à examiner toutes les lignes des tables de données afin de vérifier la véracité des données. Cela peut vous aider à identifier les valeurs nulles, inexactes ou ambiguës.

Toute utilisation d’un jeu de données devrait débuter par un data profiling afin de mettre en lumière les éléments incohérents ou ambigus.

Par exemple, si vous souhaitez effectuer une campagne d’envoi de cartes de vœux à vos clients par voie postale, vous devriez d’abord vérifier que les adresses de vos clients sont cohérentes afin de minimiser le taux de courriers non distribués.

Ce type d’analyse est rendu possible par des méthodes statistiques élémentaires (valeurs minimales, maximales, moyennes, médianes, modes, écarts-types…) ou des méthodes statistiques avancées comme l’apprentissage machine (machine learning en anglais), populairement appelé intelligence artificielle.

Découverte de relations

La découverte de relations implique de comprendre les relations entre les ensembles de données. Il s’agit d’identifier les liens les plus importants entre les données et de se concentrer sur les domaines où les données se chevauchent. Utilisée avec le data lineage, cette technique permet d’aligner dans toute l’entreprise les données qui partagent la même signification.

Utilisations du data profiling

Le data profiling est utilisé principalement dans les cas d’usage suivants :

Qualité des données

Comme nous avons commencé à le dire plus haut, le data profiling est très utilisé pour évaluer rapidement la qualité des données et préparer sa mise au standard de l’entreprise. Ces opérations seront réalisées par une unification des modèles de données et / ou des campagnes de corrections ou nettoyage des données.

Le nettoyage des données est une étape essentielle du processus de préparation des données, car il aide à la déduplication et à la correction des erreurs tout en assurant l’exactitude et la pertinence des données. Toutefois, il n’est utile que pour les données de mauvaise qualité ; or c’est là que le data profiling entre en jeu : en détectant les problèmes qui sans lui seraient passés totalement inaperçus.

Pour cette raison, les technologies de qualité et de data profiling examinent minutieusement des quantités massives de données pour identifier les champs inexacts, les valeurs nulles et d’autres anomalies statistiques susceptibles d’affecter le traitement des données.

Ce cas d’usage intéresse particulièrement les data stewards, responsables de jeux de données dans le cadre d’une gouvernance des données.

Migration de données

La migration de données est le processus de transfert d’une grande quantité de données d’un système source (à décommissionner) vers un système cible (nouveau). Par exemple : migration d’un ancien système de gestions des clients (CRM) vers un nouveau (on veut impérativement conserver toutes les données clients).

Pour préserver la cohérence entre l’ancien et le nouveau système, les données doivent d’abord être vérifiées pour trouver les différences et les résoudre avant que le transfert débute.

Les techniques de data profiling sont idéales pour réduire les risques d’erreurs, de doublons et de données inexactes avant le début du processus de migration. Ne pas gérer ce type de risque peut conduire à un échec de la migration avec des répercussions financières importantes pour l’entreprise.

Ce cas d’usage intéresse notamment les architectes d’entreprises ou architectes data, parfois chargés de ce type de projets.

Intégration des données

En combinant des données provenant de plusieurs sources, l’intégration des données donne une perspective complète des données de l’entreprise. Lorsque les données sources sont ingérées et introduites dans un data warehouse, un data hub ou un datamart, leur profilage en amont de l’intégration est un rempart aux erreurs les plus courantes.

Ce cas d’usage intéresse ainsi les data engineers ou data custodians.

Cybersécurité et détection des fraudes

Enfin, grâce à la vue d’ensemble qu’il offre, le data profiling peut souligner des anomalies qui font suite à une cyberattaque ou une fraude.

Par exemple, parmi les données de tous les comptes d’un réseau social, une répétition statistiquement anormale peut suggérer de faux comptes servant à diffuser des fakes news à grande échelle…

Stratégies de mise en place des outils de data profiling

Il existe plusieurs approches pour mettre en place le profilage des données dans une entreprise :

Outils de data profiling dans les ETL

Rappelons tout d’abord qu’un ETL (Extract Transform Load) est un outil qui permet d’automatiser le transfert de données d’une source de donnée (exemple : base de données) vers une autre (exemple : entrepôt de données). On parle aussi d’intégration de données. Comme vu plus haut, il est recommandé d’effectuer des évaluations de qualités de données avant de procéder. C’est pourquoi la plupart des solutions d’ETL du marché proposent des modules de data profiling, à l’instar de Talend Open Studio.

Talend Open Studio est l’un des outils d’intégration et de profilage de données open source les plus connus. Il effectue des tâches d’intégration de données simples en lots ou en flux continu (bach ou streaming en anglais). Cet outil dispose d’un certain nombre de fonctionnalités, telles que la gestion et la purification des données, l’analyse des champs de texte, l’intégration de données en temps réel à partir de n’importe quelle source, et plus encore. La gestion des séries temporelles (time series en anglais) est l’une des propositions de valeur distinctives de l’outil. En outre, il offre une interface utilisateur simple qui affiche un certain nombre de graphiques et de tableaux qui montrent les résultats du profilage pour chaque élément de données.

Résultats d'un data profiling dans Talend
Résultats d’un data profiling dans Talend. Source : Talend.com, 2023.

Outils de data profiling dans les suites de gestion de données

Les plateformes de gestion de données et d’informatique décisionnelle – qu’elle soient on-premises ou dans le cloud – disposent généralement de fonctionnalités de data profiling. On peut citer Microsoft Power BI ou Qlik pour la BI ; ou encore Ataccama ou Denodo pour les plateformes de données. Si vous utilisez d’autres plateformes, référez-vous à leur documentation pour voir ce qu’elles proposent en matière de qualité et profilage des données.

Outils de data profiling dans les outils de gouvernance de données

En plus de leur catalogue de données, les suites de gouvernance de données les plus riches – parmi lesquelles on trouve Collibra et Alation – comprennent également un module de data profiling. Les utilisateurs voient côte-à-côte les métadonnées et l’aperçu de la qualité des données qu’elles [les métadonnées] décrivent.

En revanche, cette approche soulève des questions de sécurité : s’il est souhaitable qu’un maximum de salariés accèdent aux métadonnées du catalogue des données (voir notre article sur la culture des données), qu’en est-il du risque d’exposer des informations sur les données elles-mêmes ? Ces modules sont bel et bien paramétrables pour ne pas tout afficher… au prix d’un travail de data stewardship bien plus important.

Outils de data profiling autonomes

Lorsqu’une entreprise veut un système d’information flexible et évolutif, elle préfère limiter le nombre de fonctionnalités par outil. Par exemple, si vous choisissez de baser votre data profiling sur Talend Open Studio, il vous sera plus difficile de le remplacer par un autre ETL, car vous devrez aussi remplacer le data profiling qui va avec.

C’est pourquoi il existe divers outils dédiés au data profiling, des plus simples aux plus puissants :

OpenRefine

OpenRefine est une application open source pour nettoyer et mettre en forme des données. Elle était auparavant connue sous le nom de Google Refine et Freebase Gridworks. L’outil de data profiling publié en 2010 a été amélioré par la communauté active d’OpenRefine dans le but de le maintenir à jour avec les besoins changeants des utilisateurs.

Open Source Data Quality and Profiling

Open Source Data Quality and Profiling est une plate-forme intégrée de gestion des données hautes performances avec des fonctionnalités pour la préparation des données, l’identification des métadonnées, la découverte des anomalies et d’autres tâches de gestion des données.

Apache Griffin

Pour le big data, il existe une solution open source dédiée à la qualité des données et au data profiling : Apache Griffin. Elle prend en charge les modes batch et streaming. De plus, elle offre un processus unifié pour mesurer la qualité de vos données sous différents angles, vous aidant à créer des actifs de données de confiance.

Ecosystème Python et data science

Quant aux data scientists, ils ne manquent pas d’options grâce à de nombreuses librairies accessibles en Python (et Jupyter). Les plus connues sont : pandas-profiling, Lux, Sweetviz, AutoViz, dataprep, skimpy

Data profiling et gouvernance des données

Cet article vous offre une vue d’ensemble de ce qu’est le data profiling et de son utilité. Il aborde également les différentes approches pour l’implémenter.

Aujourd’hui, la majorité des entreprises utilise quotidiennement de nombreuses applications de données. Par conséquent, les données sont dispersées dans diverses bases de données (on parle de silos) qui les rendent difficilement exploitables en vue 360 degrés. Pour remédier à ce problème, les entreprises ont tendance à concentrer toutes leurs données dans un endroit central appelé data hub, suivant une approche dite data centric. Néanmoins, il est nécessaire de maitriser la qualité des données pour que le résultat soit à la hauteur des attentes : le data profiling est le premier outil à utiliser.

Enfin, puisqu’il permet de mieux valoriser la donnée et de la gérer comme un actif, le data profiling est également un des outils de la gouvernance des données, aux côtés du catalogue des données. À Data Éclosion, nous avons l’expertise pour vous accompagner sur le data profiling et bien plus encore… Alors n’hésitez-pas à nous contacter.