Een gelaagd data-designpatroon dat ruwe data stap voor stap verfijnt tot schone, business-ready inzichten, via de lagen Bronze, Silver en Gold.
Ontwerpprincipes
Medallion-architectuur is gebouwd op een set praktische engineeringprincipes die de reële noden van datateams weerspiegelen:
- Ontkoppeling, Data in lagen scheiden houdt flexibiliteit in stand. Wijzigingen in een bronsysteem cascaderen niet door naar je rapporteringslaag.
- Operationele rapportering en analytics, Applicatieteams hebben vaak near-real-time inzichten nodig uit operationele data, die op hun beurt gebruikt kunnen worden om de operationele systemen zelf te verbeteren.
- Historische bewaring, Teams moeten data jarenlang bewaren, voor trendanalyse, kwaliteitsverbetering en de mogelijkheid om te herladen of te herverwerken wanneer pipelines wijzigen.
- Integratie, Businessvragen leven zelden binnen één enkel systeem. Data uit meerdere bronnen combineren tot geïntegreerde perspectieven is een kernreden waarom de architectuur bestaat.
- Duplicatie voor performance, Verschillende teams hebben verschillende leespatronen en performance-eisen. Data dupliceren over lagen heen (bv. een samengevatte Gold-tabel naast een gedetailleerde Silver-tabel) is bewust, niet verspillend.
Waarom data überhaupt in lagen opdelen?
Het principe weerspiegelt klassiek datawarehouse-denken (Inmon, Kimball, Data Vault). Medallion geeft die separation-of-concerns-ideeën een moderne, lakehouse-native thuis. Teams hebben historische data nodig voor auditing en herladen, geïntegreerde views voor analytics en performance-geoptimaliseerde reads voor rapportering, vaak tegelijk. Lagen maken elke zorg apart beheersbaar.
De drie lagen
🟤 Bronze, Ruw, "as-is" De landingszone. Data wordt as-is ingeladen, immutable, en opgeslagen in originele formaten (CSV, JSON, Parquet) voor de conversie naar Delta. Verrijkt met metadata zoals ingestion-timestamps en databronlabels. Ondersteunt zowel batch als streaming, en is waardevol voor debugging en historische herladingen.
⚪ Silver, Opgeschoond en gefilterd Hier worden datakwaliteitsregels toegepast: datums corrigeren, speciale tekens verwijderen, formatteringsfouten rechtzetten. Historisatie gebeurt doorgaans met SCD2. De structuur blijft brongeoriënteerd maar is bevraagbaar en wordt gebruikt door operationele analyticsteams. Kolommen worden hernoemd voor leesbaarheid en er worden lichte conformaties aan enterprise-standaarden toegepast.
🟡 Gold, Verfijnd op businessniveau Data wordt geharmoniseerd en geïntegreerd over bronnen heen, doorgaans gemodelleerd volgens de dimensionele Kimball-stijl (facts en dimensions). Complexe businessregels, berekeningen en verrijkingen leven hier. De output bestaat uit consumer-ready dataproducten met backwards compatibility en datacontracten voor downstream-gebruikers.

Praktijkvoorbeeld: geïntegreerde Ad-ROI-analyse
De businessvraag: Een groeiend e-commercebedrijf wil de impact van marketinguitgaven over kanalen heen begrijpen. Het project: een geïntegreerde ROI-analyse voor multichannel-advertentiecampagnes.
Databronnen: Facebook Ads and Google Ads.
Rapporteringsvereisten: Kost, impressies, clicks, opgesplitst per ad, campagne, attributie (1-daags venster) en demografie (leeftijd, geslacht, device, platform).

Bronze: laad alles
Facebook Insights stelt 134 velden beschikbaar plus extra parametercombinaties. Google Ads stelt 329 velden beschikbaar. De aanbeveling is simpel: laad alles wat de API's teruggeven.
- Nadeel: Meer opslag gebruikt, maar opslag is goedkoop.
- Voordeel: Je vermijdt het klassieke "Dit rapport is top! Kan je er nog net dit ene veld bij zetten?" conversatie.
Transformaties zijn in dit stadium minimaal: corrupte of onbruikbare records verwijderen, converteren naar Delta-formaat, verrijken met metadata (databron, ingestion-timestamp), en enkel partitioneren per datum als datavolume een bottleneck wordt.
Silver: drie opties voor modellering
Hier vallen de echte ontwerpbeslissingen. Facebook en Google gebruiken verschillende veldnamen voor dezelfde concepten, cost_micros vs spend, ad_group vs adset, segments.age_range vs age, en sommige velden bestaan simpelweg niet op beide platformen.
Optie 1, twee aparte brontabellen Houd een Facebook-silvertabel en een Google-silvertabel bij, elk opgeschoond en hernoemd volgens een gemeenschappelijke naamgevingsconventie. Simpel te bouwen, behoudt bronnuance, maar vereist later joinen of unionen.
Optie 2, één geïntegreerde ads-tabel Map beide bronnen naar één gedeelde tabel in Silver. Eenvoudiger voor downstream-consumenten. Belangrijk: documenteer de mappingbeslissingen duidelijk, adset en ad_group zijn geen identieke concepten.
Optie 3, Data Vault Modelleer entiteiten als Hubs, relaties als Links en metrics als Satellites. Modulairder en beter in het volgen van wijzigingen in relaties doorheen de tijd. Best geschikt voor complexe, langlevende enterprise-dataplatformen.
Gold: twee opties voor serving
Optie A, dimensioneel model (Kimball) Bouw een Fact_Ad_Performance tabel, gejoind met dimensietabellen. Proper, goed begrepen door BI-tools en makkelijk te slicen. Dit is de meest voorkomende aanpak.
Optie B, One Big Table (OBT) Denormaliseer alles in één brede tabel. Makkelijker voor analisten en self-service-rapportering, geen joins nodig.

Uitdagingen
Data governance, Alles in Bronze bewaren kan een GDPR-probleem worden. Toegangsrechten vragen duidelijke policies, zeker wanneer silvertabellen PII uit meerdere bronsystemen bevatten.
De menselijke factor, Medallion is een naamgevingsframework, geen rulebook. Zonder gedocumenteerde teamafspraken over wat in elke laag thuishoort, degradeert de architectuur tot inconsistentie en shadow pipelines.
Belangrijkste conclusies
- Laad alles naar Bronze, opslag is goedkoop, maar later een veld missen is duur.
- Silver moet opschonen en conformeren; Gold moet modelleren en integreren, weersta de neiging om deze zorgen samen te voegen.
- Datamodelleringskeuzes in Silver (flat tables vs. Data Vault) hebben langdurige downstream-gevolgen.
- Documenteer je layer contracts. Consistentie over teams heen hangt af van geschreven, gedeelde afspraken.
Medallion-architectuur oogt simpel op een diagram, maar de echte ontwerpbeslissingen, zeker in de Silver-laag, kunnen langdurige gevolgen hebben. Wil je de juiste aanpak voor jouw situatie doordenken, aarzel dan niet om een afspraak te boeken.




