Le profilage des données est le processus qui consiste à examiner un jeu de données pour en décrire la structure, le contenu et les relations. Il mesure des choses comme les types de données, les plages de valeurs, le nombre de valeurs nulles et distinctes, les motifs et les clés en double, et produit un portrait factuel de l’état des données. Le profilage est un diagnostic plutôt qu’un remède : il vous dit dans quel état sont les données pour que vous décidiez quoi faire ensuite.

Comment fonctionne
Le profilage est habituellement décrit en trois passes, chacune répondant à une question différente : quelle est la forme de ces données, qu’y a-t-il dedans, et comment se rattachent-elles au reste. En pratique, elles s’exécutent ensemble, sur un échantillon ou sur la table complète, et le résultat est un ensemble de mesures que vous comparez à ce que les données étaient censées être.
Comparaison
On confond souvent le profilage avec les tests de qualité et l’observabilité des données. Les trois répondent à des questions différentes, à des moments différents : le profilage examine un jeu de données avant qu’on s’y fie, les tests vérifient les règles déjà écrites, et l’observabilité guette les changements que personne n’avait prévus.
| Profilage des données | Tests de qualité des données | Observabilité des données | |
|---|---|---|---|
| Quand ça s’exécute | Avant de modéliser un jeu de données ou de s’y fier | À chaque exécution du pipeline | En continu, en arrière-plan |
| Ce que ça répond | Qu’y a-t-il réellement dans ces données? | Respectent-elles encore les règles écrites? | Quelque chose a-t-il changé sans qu’on l’attende? |
| Ce que ça donne | Des mesures : types, valeurs nulles, plages, doublons | Un succès ou un échec face à des règles explicites | Des alertes sur la fraîcheur, le volume et le schéma |
Quand votre entreprise en a besoin
- Vous intégrez un nouveau système source et vous ne savez pas encore à quel point il est propre.
- Une jointure perd ou multiplie discrètement des lignes et personne ne peut l’expliquer.
- Vous êtes sur le point de migrer ou de consolider des systèmes et devez évaluer l’ampleur du nettoyage.
- Une mesure a été remise en question et vous devez établir l’état des données qui la sous-tendent.
- Vous écrivez des tests de qualité et devez savoir ce qui est normal avant de fixer des seuils.
Avantages et limites
- Les hypothèses sont vérifiées avant qu’on bâtisse dessus, et trouver une clé brisée au profilage coûte une fraction de ce qu’il en coûte de la trouver en production.
- L’effort de nettoyage peut être estimé plutôt que deviné.
- Le résultat vous donne des seuils réalistes pour les tests de qualité continus.
- Il fait ressortir la logique d’affaires non documentée cachée dans les données, comme des codes de statut que plus personne n’utilise.
- Un profil est un instantané. Une source propre le trimestre dernier peut dériver, alors un profil ponctuel vieillit vite.
- Il mesure les données, pas leur sens. Seule une personne qui connaît l’entreprise peut dire si une valeur qui semble étrange est réellement fausse.
- Profiler une très grande table au complet coûte cher, et l’échantillonnage coûte moins cher mais peut manquer des anomalies rares à fort impact.
- Il produit des constats, pas des décisions. Un profil que personne ne prend en charge ne change rien.
- Le profilage décrit la structure, le contenu et les relations d’un jeu de données avant que vous le modélisiez ou lui fassiez confiance.
- C’est une étape de diagnostic plutôt qu’une étape de nettoyage : le résultat, ce sont des mesures et des constats, pas des données corrigées.
- Un profil vieillit, alors là où les données continuent d’arriver, le profil devrait devenir des tests continus plutôt qu’un rapport ponctuel.
Questions fréquentes
Quelle est la différence entre le profilage des données et la qualité des données?
Le profilage est la façon de mesurer l’état actuel d’un jeu de données. La qualité des données est la norme à laquelle vous le comparez, c’est-à-dire si les données sont exactes, complètes et adaptées à l’usage prévu. Le profilage produit la preuve, et la gestion de la qualité décide quoi en faire.
Quand faut-il faire du profilage des données?
Tôt, et plus d’une fois. Profilez une source quand vous la connectez la première fois, de nouveau avant de la modéliser, et encore avant toute migration ou tout changement majeur de schéma.
Le profilage se fait-il à la main ou automatiquement?
Les deux. Un profil simple, c’est du SQL ordinaire : comptes, valeurs distinctes, minimums, maximums et taux de valeurs nulles. Les outils de profilage dédiés automatisent les mêmes mesures sur de nombreuses tables et en conservent l’historique.
Quel est le lien entre le profilage et les tests de qualité des données?
Le profilage vient en premier et est exploratoire, parce que vous ne savez pas encore ce que vous allez trouver. Les tests viennent ensuite et sont affirmatifs, parce que vous avez décidé ce qui devrait toujours être vrai et que vous le vérifiez à chaque exécution. Les constats du profilage sont ce à partir de quoi on écrit de bons tests.
Puis-je profiler des données dans BEEM?
Il n’y a pas de fonctionnalité de profilage dédiée, mais les morceaux sont là. Le Datalake affiche les schémas, le nombre de lignes et un aperçu de chaque table source. L’éditeur SQL du Warehouse vous permet d’exécuter des requêtes de profilage sur une source et d’en prévisualiser les résultats avant de déployer quoi que ce soit. Les tests de jeux de données transforment ensuite ce que vous apprenez en assertions SQL qui s’exécutent à chaque rafraîchissement.
