Architecture médaillon
Date de publication: 02/07/2025
Date de publication: 02/07/2025
Après une semaine de congé, me voilà de retour ! Et aujourd’hui, on s’attaque à un sujet un peu plus théorique (mais promis, pas trop barbant) : l’architecture en médaillon.
Pour ceux qui ne connaissent pas, l’architecture en médaillon part du constat que vos données sont organisées en trois couches : une couche bronze, une couche argent et une couche sale ... or, évidemment ! (Désolé, mon humour n’a pas évolué pendant les vacances…). Donc : bronze, silver, gold
Pour schématiser :
La couche bronze, c’est l’endroit où atterrissent les données brutes, sans aucune transformation. C’est une réplique exacte et historique, utile pour l’audit ou la réanalyse.
Ensuite vient la couche silver, dont l’objectif est d’améliorer la qualité des données : nettoyage, standardisation, enrichissement minimal… Bref, de quoi préparer un terrain propre pour les futures analyses.
Et enfin, la couche gold: la crème de la crème. Cette couche est destinée aux utilisateurs métiers (reporting, data science, etc.). On y trouve des données raffinées, agrégées, prêtes à briller dans vos dashboards comme des médailles olympiques !
Bronze Layer : fondation brute et immuable
Les données arrivant dans cette couche sont brutes et non modifiées. La règle d'or ? On ne touche à rien !
C'est le principe de l'immuabilité : une fois qu'une donnée, même erronée, est entrée, tant pis, c'est trop tard. On ne peut pas aller l'éditer (c'est comme un tatouage fait à 4h du matin, il faudra vivre avec, du moins à ce stade).
À ce point, les données ne sont pas validées et le « business » n'est pas censé avoir accès à ces dernières.
Formats supportés :
Tout format de fichier peut être supporté, mais nous utiliserons généralement du CSV, JSON, Parquet ou encore Delta. (Promis, un article sera rédigé un jour pour vous expliquer ce qui se cache derrière ces noms barbares).
Comme le but de ce blog est de parler de Fabric, faisons le lien.
Composants Fabric pour l'ingestion et le stockage :
Lakehouse (via OneLake) : Il s'agit du stockage principal pour les fichiers bruts.
Pipeline Data Factory : Pour orchestrer l'ingestion en batch via l'activité « Copy Data » (plus de 200 connecteurs disponibles).
Shortcuts : Pour référencer directement des données externes stockées dans Amazon S3, Dataverse, etc., sans les copier physiquement.
Notebooks : Pour ingérer des sources de données complexes (API, JSON, etc.).
Silver Layer : consolidation et assurance qualité
Avant d'atterrir dans cette couche, les données de la couche bronze vont subir des transformations afin de devenir exploitables. Généralement, les transformations appliquées pour passer de bronze à « silver » sont :
Nettoyage : On supprime ou on traite les valeurs nulles ou invalides, on normalise les formats (dates, textes) et on filtre les doublons.
Fusion : On consolide les données similaires issues de sources multiples (exemple : combiner plusieurs tables, gérer les changements de noms des colonnes, etc.).
Enrichissement : Ajout d'informations d'appoint (par exemple, attribution de clés, géocodage, etc.).
Contrôle de qualité : On applique des règles métiers pour valider la cohérence (p. ex., tester que chaque vente dispose d'un client existant, vérifier que les montants sont positifs, etc.).
Après ces transformations, les données sont structurées en tables, prêtes à être analysées et présentent une première source de vérité partagée.
Format des données
Le format Delta Lake est généralement privilégié pour ses propriétés ACID, sa gestion du temps (Time Travel) et ses optimisations (V-Order).
Composants Fabric utilisés pour la transformation et le stockage :
Lakehouse « Silver » : Il s'agit du composant de stockage principal pour les tables Delta nettoyées.
Notebook : Très efficace pour les traitements volumineux ou complexes (plus technique, mais beaucoup plus efficace).
Dataflow Gen2 : Adapté aux transformations plus simples via une interface graphique (pour les utilisateurs de Power BI, vous retrouverez l'interface de Power Query avec quelques différences minimes).
Pipeline Data Factory : Ici, le pipeline aura un rôle d'orchestrateur pour planifier (scheduler) les flux de transformations de bronze vers silver
Gold Layer : la donnée prête à la consommation
Contrairement aux couches précédentes plus généralistes, la couche gold est orientée use case. Par exemple : un tableau de bord des ventes, un modèle prédictif du taux de rétention des clients, des rapports financiers, etc.
Les données y sont modélisées pour faciliter les requêtes : niveau d'agrégation voulu (quotidien, mensuel…), schéma en étoile ou en flocon (table de faits + dimensions), vues matérialisées optimisées…
Exemple de tables/vues
table de faits (ventes consolidées), tables de dimensions (profils clients enrichis). Ces tables sont généralement stockées dans un Warehouse.
Composants Fabric utilisés pour la transformation et le stockage :
Data Warehouse : Souvent préféré pour des requêtes T-SQL optimisées et complexes.
Power BI (Direct Lake) : Permet à Power BI de se connecter directement aux tables pour des performances élevées sans copier les données (Direct Lake, encore un autre sujet à venir…)
Endpoint analytique SQL : Le Warehouse expose une interface SQL qui permet d'utiliser des outils clients tiers (en toute objectivité, vous disposez du meilleur outil existant, alias Power BI, pourquoi vouloir utiliser un outil plus cher et moins bon ?).
Modèles sémantiques : La couche sémantique finale pour définir les relations entre les tables, les hiérarchies et les mesures DAX.
Synthèse et best practices
Nous touchons à la fin de l'article ; faisons donc un bref récapitulatif de ce que nous venons de voir avant de passer aux best practices.
Résumé du parcours de la donnée
L'architecture Médaillon structure le traitement des données en un flux progressif et maîtrisé, de la source brute à la consommation finale :
Bronze : Ingestion des données à l'état originel.
Silver : Application des traitements de nettoyage, de standardisation et d'enrichissement pour fiabiliser la donnée.
Gold : Modélisation et agrégation des données pour les optimiser en vue de cas d'usage analytiques spécifiques (BI, Data Science).
Bonnes pratiques fondamentales pour la mise en œuvre
Pour garantir une architecture robuste, évolutive et sécurisée, il est recommandé de suivre plusieurs principes clés :
Isolation des couches logiques et physiques : Séparez physiquement chaque couche dans des conteneurs de données distincts : un Lakehouse pour la couche Bronze, un second pour la couche Silver, et un Data Warehouse pour la couche Gold. Pour des projets d'envergure, envisagez également de dédier un workspace Fabric par couche afin de cloisonner la gestion des accès et des ressources.
Automatisation de l'ingestion : Utilisez les pipelines de Data Factory pour automatiser l'alimentation de la couche Bronze. Mettez en place des déclencheurs (triggers) planifiés (p. ex., exécution nocturne) ou événementiels (p. ex., à l'arrivée d'un nouveau fichier) pour une mise à jour continue et autonome.
Orchestration modulaire des transformations : Structurez les flux de transformation (ETL/ELT) en pipelines distincts et indépendants :
Pipeline Bronze vers Silver : Déclenche les Dataflows ou Notebooks de nettoyage après chaque ingestion réussie.
Pipeline Silver vers Gold : Orchestre l'exécution des logiques de modélisation et d'agrégation pour construire les produits de données finaux.
Dans cette approche, je n'ai pas mentionné les shortcuts, qui eux permettent une hyper connectivité entre les couches (encore et toujours un article à venir :-) )
L'adoption de cette architecture modulaire est un gage de flexibilité et de résilience, car elle permet d'isoler les traitements et de rejouer une étape spécifique sans impacter les autres couches. Cette approche structurée est la clé pour transformer durablement les données brutes en actifs stratégiques pour l'entreprise.
Voilà, j’espère que l’architecture Médaillon vous paraît maintenant plus claire !
Si vous avez la moindre question ou remarque, n’hésitez pas à la partager dans les commentaires — c’est fait pour ça 🙂