INSIGHT #03 // DATA WAREHOUSE & SÉMANTIQUE MÉTIER
La couche sémantique dbt : le chaînon manquant pour fiabiliser votre BI
Pourquoi unifier vos règles de calcul dans dbt Core avec MetricFlow est indispensable avant d'alimenter vos dashboards et assistants Text-to-SQL.
Martial GNINHI
Directeur Technique & Architecte Data
Secteur & Contexte
E-commerce & Retail omnicanal multi-filiales
Contraintes d'exploitation
3 outils concurrents de restitution (Power BI pour la finance, Metabase pour le terrain, requêtes SQL manuelles pour les analystes)
Enjeu critique
Mettre fin aux réunions d'arbitrage où l'on débat pendant 40 minutes de la validité du chiffre plutôt que de la stratégie commerciale
Dans la quasi-totalité des entreprises en forte croissance, le comité de direction mensuel commence par le même rituel stérile : la direction financière annonce 14,2 M€ de chiffre d'affaires, le marketing revendique 15,1 M€, et les responsables de filiales comptabilisent 13,8 M€. Personne n'a tort : chaque équipe a simplement calculé son chiffre dans son outil avec ses propres filtres (dates de commande contre dates de facturation, exclusion tardive des retours, gestion hétérogène des remises promotionnelles). Tenter de résoudre ce chaos en multipliant les dashboards ne fait qu'aggraver la dispersion. Seule une couche sémantique centralisée, déclarée en amont dans le data warehouse, permet de réconcilier durablement les chiffres.
La dispersion de la logique métier dans les outils de visualisation
Laisser chaque dashboard ou outil de BI coder ses propres agrégations génère une dette analytique exponentielle et ruine toute tentative d'interrogation en langage naturel.
Discordance structurelle des calculs locaux
Une formule DAX complexe dans Power BI exclut les avoirs avec 15 jours de décalage, tandis que la requête SQL sous Metabase les retranche en temps réel.
Inutilisabilité des agents Text-to-SQL sans ontologie
Un LLM connecté directement à des tables brutes de base de données hallucine sur la définition de la 'marge brute' et choisit aléatoirement entre prix catalogue et prix net.
Multiplication du coût de maintenance des règles
Toute évolution comptable ou fiscale exige de retoucher manuellement 35 rapports distincts dans différents outils, avec un risque critique d'oubli.
Modélisation Medallion, dbt Core 1.8+ et MetricFlow universel
Nous déportons 100% de la logique métier dans le dépôt de code dbt versionné sous Git : les outils de visualisation ne font plus aucun calcul, ils consomment des métriques certifiées.
Stack & Composants de production qualifiés
Pipeline de la donnée brute à la consommation unifiée
Normalisation Medallion (Bronze / Silver)
Ingestion et nettoyage des transactions brutes ERP/Shopify sous Snowflake avec typage strict et déduplication automatique.
Medallion Architecture & Idempotent ELTModélisation dimensionnelle Gold (Star Schema)
Construction de tables de faits transactionnelles auditées et de dimensions conformes (Clients, Produits, Magasins, Calendrier).
Kimball Dimensional ModelingDéclaration sémantique MetricFlow
Définition déclarative des mesures et métriques dérivées en fichiers YAML versionnés : agrégations additives, non-additives et fenêtres glissantes.
Semantic Metrics Layer (MetricFlow)Exposition universelle (BI & Text-to-SQL)
Diffusion via l'API Semantic Layer (GraphQL / JDBC) vers Power BI, Metabase et les agents conversationnels sans réécriture locale.
Universal Semantic Consumption# Définition sémantique unique du chiffre d'affaires net
semantic_models:
- name: transactions
model: ref('fct_transactions_gold')
entities:
- name: transaction_id
type: primary
- name: customer_id
type: foreign
measures:
- name: gross_amount
agg: sum
- name: refund_amount
agg: sum
- name: tax_amount
agg: sum
metrics:
- name: net_revenue
description: "Chiffre d'affaires net consolidé après déduction des remboursements et taxes"
type: derived
type_params:
expr: gross_amount - refund_amount - tax_amount
metrics:
- name: gross_amount
- name: refund_amount
- name: tax_amountCette métrique est calculée de manière identique, que la requête provienne de Power BI, d'Excel ou d'un agent IA.
Arbitrages techniques & Rigidité maîtrisée
Adopter une couche sémantique centrale met fin aux désaccords de chiffres, mais impose de renoncer au bricolage opportuniste des analystes.
Toute nouvelle métrique doit faire l'objet d'une PR Git dbt avec tests d'intégrité avant d'apparaître dans les dashboards.
Délai de création d'un nouvel indicateur passant de 15 minutes en local à 24-48h de revue d'ingénierie.
Espaces bac à sable 'Sandbox Schema' temporaires pour les expérimentations d'analystes, isolés du reporting officiel.
MetricFlow assemble les requêtes SQL via des sous-requêtes imbriquées pour garantir la conformité sémantique.
Légère surconsommation de crédits Snowflake (estimée entre 10% et 18% à titre indicatif) sans partitionnement fin.
Matérialisation incrémentale dbt sur les dimensions temporelles et clustering keys rigoureuses sur Snowflake.
Résultats mesurés sur le reporting de direction
Impact opérationnel mesuré après déploiement de la couche sémantique dbt sur un portefeuille de 42 tableaux de bord.
0.0%
Sur l'ensemble des 25 métriques de gestion clés
91%
Passée de 58% à 91% grâce à l'ontologie dbt
÷ 4
Focalisation sur l'action commerciale et non sur le recalcul
Bénéfices d'exploitation constatés :
- Alignement immédiat entre la direction financière, la logistique et le marketing lors des comités de direction.
- Facilité d'intégration de nouveaux outils de visualisation sans avoir à réimplémenter la logique comptable.
- Possibilité d'activer des agents conversationnels de décision fiables interrogeant la donnée sans halluciner.
- Documentation vivante des règles de calcul directement synchronisée dans le dbt Docs partagé.
Prolonger cette architecture sur vos projets
Découvrez les services d'ingénierie et les solutions métiers directement liés à cette problématique :
Service 04 — Data & Décision Augmentée
Modern Data Stack, modélisation Medallion, BI décisionnelle et interrogation en langage naturel.
BI prédictive omnicanal
Suite décisionnelle unifiée croisant ventes, stocks et comportement client pour pricing dynamique.
Optimisation logistique par l'IA
Prédiction de la demande et ré-ordonnancement dynamique basé sur des données certifiées.
Vous concevez ou auditez une architecture similaire ?