Forum Discussion
Medallion Archtecture
- 1 month agoHi icassiem,No silly questions at all. These are exactly the right questions when you start thinking about data architecture instead of only solving one report.The goal is to avoid a spaghetti architecture later.I would separate two things:1. What you know today2. What might happen laterDo not over-design only based on assumptions. But also do not name everything so narrowly that it becomes hard to grow.For your case, I would choose a balanced approach:Workspace:ws-analytics-devws-analytics-prodThen keep the domain in the item/table names:lh_silverwh_goldTables or schemas:silver_product_customersilver_product_salesgold_dim_customergold_fact_salesIf Product becomes big enough later, or IT/Finance needs different ownership/security/lifecycle, then split into domain workspaces later:ws-product-analytics-prodws-it-analytics-prodSo yes, start with what is factual today, but use naming that does not block future growth.For the medallion question:Yes, it is still medallion even if the physical items are different.Medallion is a logical pattern, not a rule that every layer must be the same technology.Example:Silver = LakehouseGold = WarehouseOptional forecasting output = Gold Lakehouse or ML output tableThat is still a medallion architecture because the logic is:Source → cleaned/standardized → curated/business-readyI would not create lh_gold unless you have a clear need for it.For now, I would keep it simple:API / JSON / CSV→ lh_silver→ wh_gold→ semantic model→ Power BI / Copilot narrativesAdd lh_gold later only if forecasting/Python needs curated Delta output before loading to the Warehouse.Architecture criteria should be based on:- ownership- security- lifecycle- performance- data reuse- maintainabilityNot only “possible future request”.
Parchitect Thank You
1. Workspace = "Analytics"
2. Lkh Silver + Whs Gold = "Domain" Product / IT etc
3. Add Lhs Gold when FC needs, is it then still a medallion if lh_silver, wh_gold + lh_gold = 3 layers actually 4 if silver adds?
4. Does this mean "If Product or IT grows later, then split into separate domain workspaces." that under ws "analytics" i have lh_silver_Domain or should i only build what the need is now meaning i know its product iam guessing it could eveolve assumption, should i just focus on what is fact, like WS Product Analytics, lh_gol_tbl? How are arch criteria defined i guess what im lpoking for fact or possible assumption but its uneccessary broad or just push back when the need arrives as not part of design but then its not enterprise?
Apologies for the silly questions