Comment préparer un projet de profilage de données
Le profilage de données est un maillon clé dans la qualité de la donnée. Cet article livre une formule simple pour calculer le temps nécessaire pour profiler un ensemble de données.
Le profilage de données (data profiling) est devenu un composant nécessaire de l’arsenal de tout bon spécialiste de la qualité des données. Les outils de profilage de données suivent la fréquence, la distribution et les caractéristiques des valeurs, qui peuplent les colonnes d’un ensemble de données ; ils présentent ensuite les résultats statistiques aux utilisateurs dans le cadre de rapports ou d’analyses détaillées. Il existe un nombre de scenarios d’usages où les techniques de profilage de données ont un rôle important à jouer, le plus fréquemment liés à l’évaluation de la qualité des données et à la découverte de métadonnées.
Les résultats d’un profil de données capturent généralement des ensembles d’indicateurs clés associés aux valeurs de chaque colonne individuelle de données, tel que le nombre et le pourcentage de champs nuls ou remplis, le nombre de valeurs uniques, le nombre de fréquences pour chaque valeur et les patterns, les valeurs maximales ou minimales ; et l’information sur les types de données et la longueur des chaînes de caractères. Les applications de profilage de données les plus sophistiquées offrent un niveau de détails supplémentaire sur les dépendances entre les colonnes et les relations entre tables, notamment. L’objectif est d’identifier les anomalies ou partager les spécificités des éléments des données.
Le danger est que l’attrait de l’exploration, induit par le processus de profilage de données, peut placer le spécialiste de la qualité de la donnée dans une spirale sans fin. Chaque valeur repérée comme étant douteuse peut inviter à poursuivre l’analyse, le spécialiste cherchant à mieux interpréter les détails, le contexte ou encore les causes premières d’un problème de qualité des données. Bien sûr, certains de ces analystes peuvent mettre le doigt sur des problèmes critiques. Mais la plupart certifient la validité des données, ou à l’inverse, ne parviennent pas à déterminer si le problème identifié correspond à un flux de données ou pas.
Cela met ainsi en avant l’un des risques opérationnels du profilage de données : le manque de planification. Cette liberté d’explorer les données st souvent en conflit avec la nécessité de programmer efficacement le processus, comme estimer le temps et les ressources requis pour réaliser ce travail de profilage de données. Planifier en amont le processus, en mettant en place des périodes dédiées, risque d’entraver la capacité des analystes à faire leur travail d’exploration. Mais si l’on ne fixe pas de règles en matière de gestion du temps, les opérations peuvent se poursuivre, même si les problèmes les plus critiques ont été identifiés.
Le profilage de données : assez prévisible
Heureusement, lorsque l’on considère un profilage de données réalisé fréquemment, il est assez facile de prévoir le temps et le niveau de travail nécessaires. Nous pouvons déjà nous reposer sur les scénarios d’usages existants pour nous faire une idée et établir une estimation.
Dans l’évaluation de la qualité des données, l’objectif est d’identifier les anomalies potentielles qui pourraient être dues à des valeurs contestables. Voici quelques exemples de problèmes types que l’on peut rencontrer avec des techniques de profilage de données :
- Des valeurs manquantes.
- Des valeurs présentes mais qui auraient dû être absentes.
- Des valeurs qui apparaissent à une fréquence imprévues, qu’elle soit basse ou haute.
- Des valeurs qui ne respectent pas un pattern ou un format donné.
- Des données aberrantes qui sont bien trop basses ou trop élevées pour la plage définie.
Le but de la découverte et l’analyse de métadonnées est de documenter les caractéristiques structurelles et sémantiques de chaque attribut de données analysé. Outre les types de données et la taille des éléments de données, les caractéristiques généralement recherchées portent sur la distribution des valeurs à un ensemble de données, la conformité avec les types de données et l’identité des clés de base de données et les relations des clés externes.
Dans ces deux scénarios, il est utile de différencier les éléments qui semblent correspondre aux attentes, de ceux qui requièrent une analyse plus poussée. Par exemple, séparer les données contestables et les programmer à suivre une analyse plus détaillée permet à l’analyste d’avoir le bon niveau de concentration, lors de la bonne phase du processus d’évaluation. Par ailleurs, les anomalies peuvent être confiées à d’autres analystes pour y réaliser des analyses plus poussées.
Un peu de mathématiques
Une fois les outils de profilage appliqués à la donnée, un bref examen de chaque élément des données nécessite de parcourir une ckecklist de conformité, ce qui dans la plupart des cas ne doit pas prendre plus de 10 minutes par élément. Les éléments identifiés comme douteux nécessitent une enquête avancée, ce qui selon mon expérience augmente le temps d’analyse de 90 minutes environ. Etant donné que 20% des éléments dans un ensemble de données ont généralement besoin d’une analyse plus détaillée, nous pouvons évaluer le temps total moyen par élément comme suit :
(0.8 x 10) + (0.2 x 90) = 26 minutes
Disons environ 30 minutes. Ce qui signifie, approximativement, que pour calculer le temps nécessaire pour évaluer un profil de donnée dans son ensemble, il faut multiplier le nombre des éléments par 30 pour obtenir le nombre total en minutes. Celui peut ensuite être divisé par 60 pour l’obtenir en heures. Ou pour simplifier, vous obtiendrez le même résultat en divisant le nombre des éléments par deux.
Cet exercice de mathématiques doit constituer une méthode relativement fiable pour évaluer le niveau d’effort requis pour un projet de profilage de données – sans trop d’effort en amont de votre part. Vous pouvez ensuite vérifier la véracité de la moyenne (30 minutes) en ciblant un sous-ensemble d’éléments de données et contrôler le temps que cela prend pour l’analyser. Si vous estimez que ces suppositions sont hors-cadre, recommencez l’estimation avec des variables à jour et démarrez le profilage.
A propos de l’auteur
David Loshin est président de Knowledge Integrity, une entreprise spécialisée dans le conseil et dans le développement de services qui travaillent autour de projets liés à la BI, au Big Data, à la qualité des données, à la gouvernance de données et au MDM.