Un data mesh est une architecture de données décentralisée qui organise les données par domaine d’activité (marketing, vente, service client, etc.), afin d’offrir plus d’autonomie aux producteurs de jeux de données.
La compréhension qu’ont les producteurs des données du domaine leur permet d’établir des politiques de gouvernance des données axées sur la documentation, la qualité et l’accès. Cela permet une utilisation en libre-service au sein de l’entreprise. Si cette approche fédérée élimine en grande partie les goulets d’étranglement opérationnels associés aux systèmes centralisés et monolithiques, elle ne permet pas nécessairement d’utiliser les systèmes de stockage traditionnels tels que les data lakes et les entrepôts de données. Il s’agit tout simplement de passer d’une plateforme de données unique et centralisée à plusieurs référentiels de données décentralisés.
Il est important de noter que le data mesh favorise l’adoption de technologies cloud natives et de plateformes cloud pour dimensionner et atteindre les objectifs en matière de gestion des données. Pour mieux comprendre son utilisation dans ce type d’environnement, on peut comparer cette approche à celle des microservices. Cette architecture distribuée étant particulièrement utile pour dimensionner les besoins en données à l’échelle de l’entreprise, on peut en déduire que le data mesh peut ne pas convenir à tout type d’entreprise. En d’autres termes, il peut s’avérer peu adapté aux besoins des petites entreprises, dont les données sont moins complexes.
Zhamak Dehghani, directrice de la technologie chez ThoughtWorks, une société de conseil informatique, est connue pour être à l’origine du concept de data mesh comme solution face aux défis inhérents aux structures de données centralisées et monolithiques telles que l’accessibilité et l’organisation des données. L’adoption de cette architecture a été stimulée par la pandémie de COVID-19 en vue de provoquer un changement culturel et de réduire la complexité organisationnelle liée aux données.
Le data mesh change la manière dont les entreprises abordent leurs données. En effet, ces dernières quittent leur statut de sous-produit d’un processus pour devenir elles-mêmes le produit, et ceux qui les produisent en deviennent les propriétaires. Traditionnellement, c’était l’équipe chargée de gérer l’infrastructure centralisée qui conservait la propriété des données dans chaque domaine. Avec l’approche du produit qu’impose le modèle de data mesh, cette propriété est transférée aux producteurs, qui sont les experts en la matière. Parce qu’ils comprennent les principaux consommateurs de données et la manière dont ils tirent parti des données opérationnelles et analytiques du domaine, ils sont en mesure de concevoir des API parfaitement adaptées à leurs besoins.
Si cette conception orientée domaine charge également les producteurs de données de documenter les définitions sémantiques, de cataloguer les métadonnées et de définir les politiques d’autorisation et d’utilisation, c’est toujours à l’équipe de gouvernance des données d’appliquer ces normes et procédures. En outre, même si les équipes de domaine sont responsables de leurs pipelines de données ETL au sein de l’architecture data mesh, l’équipe d’ingénierie des données demeure indispensable. Cependant, son rôle consiste désormais surtout à déterminer les meilleures solutions d’infrastructure pour les produits de données stockés.
De la même manière qu’une architecture de microservices associe des services légers pour fournir des fonctionnalités à une application destinée aux entreprises ou aux consommateurs, un data mesh utilise des domaines fonctionnels pour définir les paramètres des données, ce qui permet de les traiter comme un produit accessible aux utilisateurs dans l’ensemble de l’entreprise. De cette façon, un data mesh permet une intégration plus flexible des données et une fonctionnalité interopérable, où les données provenant de plusieurs domaines peuvent être immédiatement consommées par les utilisateurs pour l’analyse commerciale, l’expérimentation en science des données et d’autres activités.
Comme indiqué précédemment, un data mesh est une architecture de données distribuée au sein de laquelle les données sont organisées par domaine pour être facilement accessibles aux utilisateurs de l’entreprise. Le data lake est un environnement de stockage à faible coût, qui accueille généralement des pétaoctets de données structurées, semi-structurées et non structurées à des fins d’analyse, de machine learning et d’autres applications. Le data mesh est une approche architecturale des données, dont le data lake peut faire partie. Le data lake sert le plus souvent de dépôt, puisqu’il est fréquemment utilisé pour ingérer les données n’ayant pas encore d’objectif défini. Par conséquent, il peut finir par devenir un marécage de données, c’est-à-dire un data lake dépourvu de la qualité de données et des pratiques de gouvernance nécessaires pour fournir des informations utiles.
Un data fabric est une approche architecturale qui consiste à automatiser l’intégration des données, l’ingénierie des données et la gouvernance dans une chaîne de valeur data entre les fournisseurs et les consommateurs de données. Le data fabric repose sur la notion de « métadonnées actives », qui associe graphique de connaissances, sémantique et intelligence artificielle/machine learning pour découvrir les schémas présents dans différents types de métadonnées (par exemple les journaux système, les réseaux sociaux, etc.). Ces informations sont utilisées pour automatiser et orchestrer la chaîne de valeur data (par exemple, permettre à un consommateur de données de trouver un produit de données qui lui est ensuite automatiquement provisionné). Le data fabric et le data mesh sont complémentaires, et non mutuellement exclusifs. En fait, le data fabric améliore le data mesh car il permet d’en automatiser les principaux éléments : accélérer la création des produits de données, renforcer globalement la gouvernance et faciliter l’orchestration des produits de données combinés.
Démocratisation des données : les architectures data mesh facilitent l’application en libre-service à partir de multiples sources de données, pour élargir l’accès aux données au-delà des ressources techniques telles que les data scientists, les ingénieurs de données et les développeurs. En rendant les données plus accessibles et plus faciles à découvrir, cette conception orientée domaine réduit les silos de données et les goulots d’étranglement opérationnels, accélère la prise de décision et permet aux utilisateurs techniques de prioriser les tâches qui exigent leur savoir-faire.
Rentabilité : cette architecture distribuée permet de renoncer au traitement des données par lots et favorise l’adoption des plateformes de données cloud et des pipelines de diffusion en continu pour collecter des données en temps réel. Le stockage cloud permet aux équipes de réaliser des économies supplémentaires en faisant tourner de grands clusters selon leurs besoins, afin de payer uniquement la capacité de stockage spécifiée. Cela veut dire que si vous avez besoin d’une puissance de calcul supplémentaire pour exécuter une tâche en quelques heures au lieu de plusieurs jours, vous pouvez facilement acheter des nœuds de calcul supplémentaires sur une plateforme de données cloud. En outre, vous bénéficiez d’une meilleure visibilité sur vos coûts de stockage, afin d’optimiser l’allocation du budget et des ressources nécessaires aux équipes d’ingénierie.
Allègement de la dette technique : une infrastructure de données centralisée augmente la dette technique en raison de la complexité et de la collaboration nécessaire pour maintenir le système. À mesure que les données s’accumulent dans un référentiel, leur volume commence à ralentir le système global. En répartissant le pipeline de données en fonction de la propriété du domaine, les équipes chargées des données peuvent mieux répondre aux demandes des consommateurs de données et réduire les contraintes techniques sur le système de stockage. Elles peuvent également améliorer l’accessibilité des données en fournissant des API avec lesquelles ces consommateurs peuvent interagir, réduisant ainsi le volume global de demandes individuelles.
Interopérabilité : dans un modèle de data mesh, les propriétaires de données conviennent à l’avance de la manière de standardiser les champs de données indépendants du domaine, ce qui facilite l’interopérabilité. De cette façon, lorsqu’une équipe de domaine structure ses jeux de données respectifs, elle applique les règles correspondantes pour permettre une liaison rapide et facile des données entre les domaines. Le type de champ, les métadonnées, les indicateurs de schéma, etc. sont parmi les champs couramment standardisés. La cohérence entre les domaines permet aux consommateurs de données d’interagir plus facilement avec les API et de développer des applications mieux adaptées à leurs besoins métier.
Sécurité et conformité : les architectures de data mesh contribuent à renforcer les pratiques de gouvernance en facilitant l’application de normes aux données indépendantes du domaine et le contrôle des accès aux données sensibles. Cela garantit que les entreprises respectent les réglementations gouvernementales comme les restrictions HIPAA, et la structure de cet écosystème soutient la conformité en permettant la réalisation d’audits de sécurité. La journalisation et la traçabilité des données dans une architecture de data mesh intègrent l’observabilité dans le système, permettant aux auditeurs de comprendre quels utilisateurs accèdent à des données spécifiques et la fréquence de ces accès.
Si l’adoption du data mesh reste encore faible, il permet aux équipes d’atteindre leurs objectifs d’évolutivité dans les cas d’utilisation courants des big data. Exemples :
Gérez les données en tant que produit tout au long de leur cycle de vie. Maîtrisez le cycle de vie des produits de données, de l’intégration à leur retrait, grâce à un système robuste de gestion des versions, de maintenance et de mise à jour des produits de données.
Transformez rapidement les données brutes en informations exploitables, unifiez la gouvernance, la qualité, la traçabilité et le partage des données, et offrez aux consommateurs des données fiables et contextualisées.
Avec IBM Consulting, exploitez les données de votre entreprise et développez une organisation basée sur les informations pour tirer des avantages métier.