La gestion des données est un enjeu majeur pour nos clients. Les données sont devenues un actif stratégique, et leur utilisation efficace peut faire la différence entre le succès et l’échec d’un nouveau produit ou d’un service. Il est donc primordial de définir une gouvernance capable de répondre à ces enjeux.
Le data warehousing traditionnel a longtemps été considéré comme la norme pour centraliser et stocker les données.
Chez DecideOm on pense qu’il n’existe pas une unique approche. Ne peut-on pas dans certains cas, être pragmatique et valider en amont la pertinence de l’utilisation de nouvelles données au travers de Quick Wins avant de mettre en application la stratégie Data définie initialement ? Peut-on se dispenser de centraliser les données par copie dans un référentiel unique ?
Contrairement aux architectures traditionnelles, la Modern Data Stack est plus flexible et permet de s’adapter rapidement aux nouveaux cas d’utilisation ou nouvelles exigences.
2 approches, le Single Source of Truth & le Single Point of Access
1. Single Source of Truth
La vision « Single Source of Truth » consiste à stocker toutes les données dans un seul référentiel centralisé, afin de garantir que tous les acteurs aient accès aux mêmes données fiables et cohérentes.
Cette approche est utilisée depuis toujours ou presque et permet de garantir la qualité et la cohérence des données.
Nous avons retrouvé cette approche dès les années 2000, dans le secteur de la Finance notamment, et a permis l’avènement de solutions comme :
Data Warehouse réglementaire
Stockage centralisé qui collecte, stocke et gère les données provenant de différentes sources. Cela permet de créer une source unique de vérité. Ex de solutions : Oracle, PostgreSQL, Teradata mais également les solutions Cloud comme BigQuery, Redshift, Snowflake, etc
MDM - Master Data Management
Création et maintien d'une source unique et cohérente pour les données maîtres de l'entreprise, telles que les informations sur les clients, les produits et les fournisseurs. Ex : Informatica, Salesforce
ERP
Gestion des processus métiers et des données de l'entreprise dans un seul système. Ex : SAP, Dynamics, …
À noter que la bonne réussite de ces implémentations dépend également de la collaboration entre les différents services, de la gouvernance des données mise en œuvre (et souvent en défaut) et de la qualité des données.
Dans certains cas, on veut parfois aller vite, être agile et tester des choses avant de modifier son architecture data ou encore il n’est pas possible pour des contraintes techniques, de coûts ou réglementaires de déplacer les données. On a alors besoin de flexibilité pour accéder aux données à partir de différentes sources et ceci pour les analyser en temps réel.
Dans ces conditions, sur le périmètre concerné, il peut être intéressant d’avoir une approche « Single Point of Access« . Cela consiste à permettre aux utilisateurs d’accéder aux données à partir de différentes sources de données, sans avoir à les copier ou à les déplacer vers le référentiel centralisé.
2. Single Point of Access
La vision « Single Point of Access » vise à fournir un point d’accès unique aux données provenant de différentes sources.
Data Virtualization
Une des premières implémentations de Single Point of Access ; on intègre les données provenant de différentes sources sans avoir à les déplacer physiquement. Les outils de data virtualization créent une couche d'abstraction qui permet aux utilisateurs d'accéder aux données à partir d'un point d'accès unique, tout en laissant les données dans leurs sources d'origine. Ex : Denodo
Data Federation
La data federation est une approche similaire à la data virtualization, qui permet d'intégrer les données provenant de différentes sources en créant une vue unifiée des données. Les outils de data federation permettent aux utilisateurs d'accéder aux données à partir d'un point d'accès unique, sans avoir à les déplacer ou à les copier. Ex : Dremio
Query Engines
Les moteurs de requêtes sont des outils qui permettent d'interroger et d'analyser les données provenant de différentes sources à l'aide d'un langage de requête commun, généralement SQL. Ces moteurs offrent un point d'accès unique aux données et permettent aux utilisateurs d'effectuer des analyses en temps réel sans avoir à déplacer les données. Des logiciels tels que Trino, Apache Drill et Starburst sont utilisés pour interroger et analyser les données provenant de différentes sources.
3. Et donc dans quels cas par exemple utiliser la Data Virtualization ?
Mise en œuvre d'un nouvel applicatif au sein du patrimoine de l'entreprise sans que celui-ci n'ait été inclus à l'architecture Data dès son initialisation. (Ex : PIM, analytics, etc…)
Fusion acquisition qui amène à avoir des données analogues qu'il faudra à terme consolider / merger / uniformiser (ou pas).
Utilisation d'Open Data, Data Sharing
Dans ces exemples, on se retrouve avec une source dite de référence et une autre , que l’on aimerait interroger ensemble, un peu de manière empirique, avec une approche Test & Learn.
Via des outils comme Trino ou Starburst, on peut interroger, requêter ces 2 sources de données pour jauger de l’intérêt et la pertinence d’intégrer cette nouvelle source à l’architecture Data. Cela permet de rapidement confirmer / infirmer une hypothèse et se laisser le temps de voir dans quelles conditions intégrer ces nouvelles données à l’architecture Data.
Une autre caractéristique puissante de la Data Virtualisation est sa capacité à intégrer les données en temps réel, offrant ainsi une vision plus actuelle et précise de l’état des données. Contrairement au data warehousing traditionnel, qui implique souvent des chargements de données périodiques, la Data Virtualisation permet d’accéder aux données les plus récentes dès qu’elles sont disponibles, ce qui est crucial dans un environnement en constante évolution.
Avec la Data Virtualisation, les données restent dans leurs sources d’origine, mais sont accessibles de manière virtuelle. Cela signifie que les politiques de gouvernance des données doivent être centralisées et appliquées de manière cohérente à travers toutes les sources de données virtuelles. Cela nécessite une coordination étroite entre les équipes chargées de la gouvernance des données pour garantir que les politiques de sécurité, de confidentialité et de qualité des données sont uniformément appliquées.
Enfin dernier point, la Data Virtualisation peut introduire des défis supplémentaires en matière de sécurité et de confidentialité des données, car les données restent souvent dans leurs sources d’origine et sont accessibles via des vues virtuelles. Il est crucial de mettre en place des contrôles de sécurité robustes pour garantir que seules les personnes autorisées ont accès aux données virtuelles et que les politiques de confidentialité soient respectées.
Il est clair que tant la Data Warehousing traditionnelle que la Data Virtualisation offrent des avantages significatifs en termes d’accès, d’intégration et de gestion des données. Cependant, il n’existe pas de solution universelle ou idéale pour toutes les organisations. Le choix entre ces deux approches doit être soigneusement examiné en fonction du contexte spécifique dans lequel vous évoluez.
Pour certaines entreprises, en particulier celles avec des besoins en matière de stockage et d’analyse de grandes quantités de données structurées, le data warehousing traditionnel ou datalake peut être la meilleure option. Il offre une structure centralisée, des performances élevées et une intégration étroite avec les outils d’analyse et de reporting.
D’autre part, pour les entreprises qui ont besoin d’accéder à des données dispersées dans des sources multiples et variées, la Data Virtualisation peut être la solution idéale. Elle offre une flexibilité et une agilité accrues, permettant aux entreprises de tirer parti de leurs données sans avoir à les déplacer ou à les dupliquer.