Le "data lineage", comment ça marche et à quoi ça sert ?

 

image - Pixabay 


Qu'est-ce que le data lineage ?

Le data lineage révèle le cycle de vie des données. Il vise à présenter des flux de données complets des sources, à l’exploitation de la donnée par les métiers. Cela inclut toutes les transformations subies par les données jusqu’à leur représentation finale dans des outils de data visualisation.

Le data lineage permet aux entreprises de :

  • Suivre les erreurs dans le processing de la donnée,
  • Mettre en œuvre des correctifs, des améliorations avec un risque maîtrisé,
  • Effectuer des migrations techniques, vers le Cloud typiquement, en mesurant les impacts en temps continu,
  • Par la combinaison des différents flux de données, le data lineage permet d’établir une véritable cartographie du Système d’Information partagée à tous,
  • De s’assurer que les données proviennent d’une source fiable, et qu’elles ont été processées correctement, etc. La traçabilité des données joue un rôle important lorsque les décisions stratégiques reposent sur des informations précises, ce qui est souvent le cas 😊.

Si le processing de la donnée n’est pas contrôlé de façon un tant soit peu automatisée, les données deviennent presque impossibles à contrôler, ou tout du moins cela devient très coûteux, car chronophage. Les vérifications sont de facto obsolètes dès que l’analyse a eu lieu.

Le data lineage se concentre sur la validation de l'exactitude, et de la cohérence des données, en permettant aux utilisateurs d’opérer des recherches en amont et aval, de la source à la cible, pour découvrir les anomalies et les corriger.

Pourquoi le data lineage est-il important ?

  • Le simple fait de connaître la source d'un ensemble de données particulier n'est pas toujours suffisant pour comprendre son importance, pour résoudre des erreurs, et encore moins pour réaliser des migrations complètes de chaînes d’alimentation.
  • C'est important pour savoir qui a effectué des changement, comment s'est opérée la mise mise à jour des données, quels seront les impacts finaux de quelconque chargement. Cela permet aussi aux data owners de s'assurer que l'intégrité et la confidentialité des données sont protégées tout au long de leurs cycles de vie.

Le data lineage peut avoir un impact important dans les contextes suivants :

  • Dépendance stratégique aux données : de bonnes données assurent le bon fonctionnement des entreprises. Toutes les business units, y compris le marketing, la production, le contrôle de gestion, les départements ventes, etc., dépendent des données. Les informations recueillies à partir de recherches, du terrain, des systèmes opérationnels, permettent d'optimiser les organisations et d'améliorer les produits et services. Les informations granulaires fournies par le data lineage aident à mieux comprendre la signification réelle de ces données, et permettent d’en valider la qualité.
  • Des flux de données à jour : les données changent au fil du temps, de nouvelles méthodes de collecte et d'agglomération de données doivent être combinées, et utilisées par les équipes pour créer de la valeur business. Le data lineage fournit des fonctionnalités de suivi qui permettent de réconcilier ces flux, et de tirer le meilleur parti des anciens, et des nouveaux sets de données, Cloud ou on Prem’.
  • Migrations de données : lorsque le service IT doit migrer des données vers de nouvelles solution de storage, typiquement le Cloud, ou encore opérer des migrations techniques de logiciel à logiciel, il doit être capable de cartographier et de définir le cycle de vie des données dans son système en source. Le data lineage fournit ces informations efficacement, ce qui rend les projets de migration infiniment plus simple et moins risqués. En outre le data lineage permet de hiérarchiser et de ségréger les flux, pour organiser précisément les migrations.
  • Gouvernance des données : le data lineage est un bon moyen de fournir des gages en cas d’audit de conformité, d'améliorer la gestion des risques et de garantir que les données sont stockées et traitées conformément aux politiques organisationnelles et aux exigences réglementaires. Les plus connues étant le texte BCBS239, le volet data de Bâle III qui ambitionne de consolider le reporting de risque dans le monde bancaire, ainsi que tous les flux d’alimentation sous-jacents. Le second, bien plus connu, étant le GDPR, le règlement européen qui ambitionne de redonner aux particuliers un contrôle sur leurs données personnelles. Le data lineage permettra d’éviter une diffusion anarchique des données dites personnelles. 

Techniques et exemples de Data Lineage :

Voici les principales techniques utilisées pour faire du data lineage

Une data lineage basé sur des modèles de données :

Cette technique effectue un data lineage sans traiter le code utilisé pour générer ou transformer les données. Cela implique d’analyser les métadonnées pour les tables, les colonnes et les dashboards. À l'aide de ces métadonnées, le data lineage est établi par rapprochement. Par exemple, si deux ensembles de données contiennent une colonne avec un nom similaire et des valeurs de données très différentes, il est très probable qu'il s'agisse des mêmes données à deux étapes de son cycle de vie. Ces deux colonnes sont ensuite associées dans un data lineage.

Le principal avantage du lineage basé sur des modèles de données est qu'il ne se focalise que sur les données, pas sur le traitement des données, et qu'il est donc indépendant de la technologie de processing. Il peut être utilisé de la même manière sur n'importe quelle technologie de stockage de transformation de données.

L'inconvénient est que cette méthode n'est pas précise. Bien souvent les rapprochements entre des ensembles des données sont impossibles, il y a des renommage de colonnes, de tables, des couches d'abstraction comme les vues SQL, du processing opaque qui rend l’analyse parfaitement aveugle.

Lineage par un tag des données

Cette technique repose sur un middleware qui va appliquer un tag sur les données d'une manière ou une autre. Afin de générer le data lineage, l’outil de transformation de données va « suivre » le tag de bout en bout. Cette méthode n'est efficace que si l’entreprise dispose d’un outil de transformation de données (ELT /ETL i.e. Extract-Transform-Load) qui gère tout le processing de la donnée et qui saura reconnaître le tag.

Même si de tels outils existent, le data lineage via les tags ne peut être appliqué à aucune donnée générée ou transformée au delà de l'outil corporate. En ce sens, il ne convient que pour effectuer un data lineage sur des systèmes de données fermés, homogènes. Vous aurez compris que c’est rarement le cas.

Un data lineage autonome

Certaines entreprises disposent d'un environnement de données qui fournit le stockage, le processing, et des outils de gestion des données de référence (Master Data Management) pour un contrôle central des métadonnées. Dans de nombreux cas, ces environnements proposent un "data lake" qui stocke toutes les données à toutes les étapes de leur cycle de vie.

Ce type de système autonome peut intrinsèquement fournir un lineage, sans avoir besoin d'outils supplémentaire. Cependant, comme avec l'approche des tags, le lineage ne sera pas en capacité d’analyser ce qui se produit en marge de cet environnement contrôlé.

Data Lineage par parsing

Il s'agit de la forme la plus avancée de data lineage, qui repose sur une logique d’analyse automatique des modes de transformation de la donnée. Cette technique repose sur un reverse engineering de l’ensemble des solutions de processing de la donnée, pour permettre un tracking de la donnée de bout en bout.

Cette solution est complexe à déployer car elle nécessite de comprendre tous les langages de programmation et les outils utilisés pour transformer et déplacer les données. Cela peut inclure une logique d'extraction-transformation-chargement (ETL/ELT), des solutions basées sur du SQL (et de ses dérivés), des solutions utilisant des langages objets, des formats de données hérités, des solutions basées sur du XML, etc. Bref, ça peut être compliqué, mais c’est de très loin la meilleure des méthodes, la plus robuste, la plus à même de délivrer des réponses précises, sans ruptures. Certaines solutions iront même jusqu’à analyser les différents logs pour traiter les procédures dynamiques, qui créent mécaniquement des ruptures, ou encore pour connaître les usages réels de la donnée.

Conclusion :

Le data lineage devient un outil indispensable pour partager la gouvernance des systèmes d’information importants et complexes. Certains textes réglementaires ou encore des projets de migration technique /Cloud le rendront encore plus indispensable.


#datalineage  #datagovernance #masterdatamanagement


ellipsys@ellipsys-bi.com

www.ellipsys-bi.com 

Commentaires

Posts les plus consultés de ce blog

La Data Observabilité, Buzzword ou nécessité ?

BCBS 239 : L'enjeu de la fréquence et de l'exactitude du reporting de risque

Le data lineage, l’arme idéale pour la Data Loss Prevention ?