
Tout savoir sur le data mesh
Introduction
De nombreuses entreprises utilisent le Big Data, exploitent et analysent des données afin de prendre de meilleures décisions. Toutefois, l’architecture Data d’une organisation n’est pas toujours optimisée.
Le Data Mesh est un nouveau paradigme de gestion des données, bien différent des modèles historiques Data Lakes et Data Warehouses. Ce nouveau système vient repenser la manière dont les données sont stockées, analysées et utilisées. Dans cet article on vous explique tout du data mesh architecture.
L’essentiel sur le stockage des données
Face aux quantités de données toujours plus importantes, de nombreuses stratégies de stockage dans le cloud ont émergé. Historiquement, on distingue les méthodes du Data Warehouse et celles du Data Lake. Plus récemment, le Data Lakehouse est venu compenser les difficultés des deux précédentes techniques.
L’objectif du premier est le stockage de données structurées et déjà retraitées dans le cadre d’un objectif précis. Cet “entrepôt de données” regroupe des systèmes complets, qui vont intégrer à la fois des bases de données, des moteurs d’exécutions et divers outils de traitements analytiques. Optimale pour l’analyse de données et les cas de business intelligence (BI), elle est cependant coûteuse et manque de rapidité et de flexibilité. On y retrouve par exemple les très populaires Snowflake, BigQuery ou encore Redshift.
Le second vise de son côté un stockage rapide et volumineux. En cela, les données sont stockées de manière brute, avec pas (ou peu) de retraitement. Ces données ne sont pas stockées dans un objectif précis, c’est donc un vaste “lac de données”, avec un potentiel à définir. Elles peuvent être facilement récupérées et analysées, ce qui rend ce stockage optimal pour le machine learning et l’intelligence artificielle. On y retrouve souvent des bases de données NoSQL, comme Cassandra ou Hive, et des systèmes de stockage de fichiers plats, comme Amazon S3 ou Google Cloud Storage.
Les Data Lakehouse visent à prendre le meilleur des deux mondes : on peut y stocker à la fois des données structurées et les semi ou non structurées, que l’on peut analyser via les meilleures techniques de machine learning et business intelligence.
Ces systèmes traditionnels de stockage fonctionnent sur une logique centralisée, ce qui permet une meilleure efficacité et interaction avec les applications, scripts et utilisateurs de l’infrastructure. Cette logique offre également une séparation logique entre les données brutes et leur exploitation par les différents métiers opérationnels. Cependant, elle apporte son lot d’inconvénients.
S’il est aujourd’hui possible de stocker facilement de larges quantités de données, la difficulté porte plutôt sur la manière de compartimenter et d’optimiser l’accès aux données. Il est également compliqué de respecter les standards de qualité des sources de données, elles aussi, en croissance constante.
Le Data Mesh, de son côté, vient apporter une nouvelle perspective vis-à-vis de l’architecture et du stockage des données, afin de résoudre une partie de ces limites.
Qu’est-ce qu’un data mesh ?
Le Data Mesh représente un changement de paradigme, une nouvelle façon de relever le défi de la gestion des données issues du Big Data, avec une perspective business. Cette nouvelle architecture combine un Data Lake centralisé, et des domaines qui gèrent leurs propres pipelines.
Selon la première définition de Zhamak Dehghani, consultant chez ThoughtWorks, ce type d’architecture de plateforme de données vise à tenir compte de l’omniprésence des données dans l’entreprise en s’appuyant sur une conception orientée domaine et libre-service.
Pour rappel, un domaine est un découpage logique de l’ensemble des données dont dispose une entreprise. Un domaine regroupe l’ensemble des données qui représentent une information spécifique, il est donc déterminé par les métiers qu’il sert.
Par son modèle architectural, le Data Mesh se distingue des infrastructures de données monolithiques traditionnelles qui gèrent la consommation, le stockage et la transformation des données dans un système centralisé. Au contraire, un Data Mesh prend en charge des données distribuées et spécifiques à un domaine. Les domaines deviennent alors responsables de la propriété et du traitement de leurs données.
Ce système qui considère la donnée comme un produit permet de limiter les coûts, tout en augmentant la valeur ajoutée et en facilitant la mise à l’échelle des données et des systèmes d’information.
Pourquoi utiliser un data mesh ?
Ce modèle Data Mesh repose sur le principe d’une architecture décentralisée ou distribuée exploitant un maillage de données.
Si le but final de ce maillage reste le même que celui des Data Lakes et Warehouses et propose une vision d’ensemble de la connaissance exploitable, le Data Mesh adresse, à chaque métier de l’entreprise, l’information clé qui le concerne.
Jusqu’à présent, de nombreuses entreprises utilisaient un Data Warehouse unique connecté à de nombreuses plateformes de Business Intelligence. Un petit groupe de spécialistes étaient chargés de maintenir ces solutions.
Le Data Mesh repose sur un modèle différent et se révèle particulièrement pertinent pour les équipes devant gérer un large volume de sources de données et les traiter rapidement.
Les Data Meshes offrent de leur côté une plus grande autonomie et une meilleure flexibilité aux équipes chargées de l’exploitation des données, ce qui facilite l’expérimentation et optimise la prise de décision.
Ces nouveaux types de data infrastructures allègent aussi la charge des responsabilités incombant aux équipes chargées des données, qui doivent répondre aux besoins de chaque consommateur de données par le biais d’un pipeline unique.
Parallèlement, l’infrastructure en tant que plateforme “self service” des Data Meshes permet aux équipes chargées de la normalisation des données d’établir une approche universelle, indépendante du domaine et souvent automatisée.
Tous ces éléments constituent un avantage concurrentiel par rapport aux architectures de données traditionnelles, qui sont souvent paralysées par le manque de normalisation des données entre les collecteurs et les consommateurs.
Quels sont les piliers du data mesh ?
Une architecture décentralisée et orientée domaine
Avec le Data Mesh Architecture, il n’y a plus une base de données unique regroupant l’ensemble des données de manière centralisée, mais chaque domaine construit ses propres structures afin qu’elles soient le plus adaptées à ses besoins.
Les pipelines de données ne sont plus l’interface entre le Data Lake et le Data Warehouse, mais sont situés directement dans les domaines. Cela permet d’avoir la main sur l’intégralité du processus de transformation de données, tout en garantissant une gouvernance des données efficiente.
L’interopérabilité du système
Une caractéristique principale du Data Mesh consiste également en l’interopérabilité du système (la possibilité de communication entre deux ou plusieurs systèmes). Elle est assurée par un ensemble de standards universels facilitant la collaboration entre les domaines.
Les formats de données, la gouvernance, la découvrabilité ou les champs de métadonnées doivent par exemple être standardisés pour permettre la collaboration entre les différents domaines autour des données.
Une architecture self-service
Le caractère self service est une autre spécificité du Data Mesh. Les principes de design orienté domaine sont exploités pour délivrer une plateforme intuitive permettant aux utilisateurs d’exploiter facilement les données.
Ainsi, le Data Mesh est un nouveau paradigme de gestion et d’exploitation des données qui présente une alternative à la centralisation.
Ces derniers peuvent ainsi se focaliser sur leurs cas d’usage individuels sans avoir à s’inquiéter de la complexité technique du système.
Comprendre le score du data mesh
Il est possible de savoir s’il est pertinent d’implémenter un Data Mesh dans une organisation à l’aide d’un score. Il suffit de répondre à chaque question ci-dessous, puis d’additionner les nombres obtenus pour obtenir le score du Data Mesh.
- Combien de sources de données possède l’organisation ?
- Combien d’analystes de données, d’ingénieurs de données et de chefs de produit (le cas échéant) compte l’équipe chargée de l’exploitation des données ?
- Combien d’équipes fonctionnelles (marketing, ventes, opérations, etc.) s’appuient sur les sources de données pour prendre des décisions, combien de produits possède l’organisation et combien de fonctionnalités data-driven sont en cours de construction ?
- Sur une échelle de 1 à 10, 1 étant « jamais » et 10 étant « toujours », à quelle fréquence l’équipe d’ingénierie des données constitue-t-elle un goulot d’étranglement pour la mise en œuvre de nouveaux produits de données ?
- Quel est le degré de priorité de la gouvernance des données pour votre organisation sur une échelle de 1 à 10 ?
Si le score obtenu se situe entre 1 et 15, alors l’organisation n’a pas besoin de mettre en place un Data Mesh. En effet, l’écosystème de données de l’organisation en question est de taille modeste et ses sources ne sont pas assez nombreuses pour qu’une structure décentralisée soit pertinente.
Si le score obtenu se situe entre 15 et 30, intégrer certains concepts du Data Mesh à l’organisation peut s’avérer être un très bon moyen de gagner en efficacité et de faciliter une migration ultérieure complète.
Si le score obtenu est plus important que 30, il est vivement recommandé d’instaurer un modèle Data Mesh au sein de l’organisation. L’exploitation des données est un acteur majeur dans la prise de décision de l’entreprise et un système décentralisé optimisera le stockage et l’analyse.
Plus le score obtenu est élevé, plus les besoins de l’entreprise en matière d’infrastructure de données sont complexes et exigeants.
Conclusion
Pour conclure, même si ce modèle est encore sujet à des discussions, des évolutions et des améliorations. Il séduit de plus en plus d’organisations grâce à son efficacité et à la manière dont il optimise la prise de décision. Il risque donc de détrôner rapidement la centralisation !
De manière générale, il semble que plus les besoins en infrastructure de données sont importants et complexes au sein de l’entreprise, plus il est probable qu’un Data Mesh soit bénéfique.
Les données deviennent de plus en plus omniprésentes et les demandes des consommateurs de données continuent de se diversifier, si bien qu’il est très probable de voir la Data Mesh Architecture devenir une norme pour bon nombre d’entreprises.
Si vous cherchez à créer, déployer voire exploiter une application d’intelligence artificielle, ou que vous souhaitez en apprendre plus sur le monde de l’IA, n’hésitez pas à nous contacter.