**Medallion Architecture奖章架构**是现代 Lakehouse 数据平台里非常核心的一种分层设计模式。你最近一直在研究Lakehouse、Iceberg、AI-Ready Data、Semantic Layer、数据治理、AI 数据平台所以这个架构其实是把这些东西串起来的一个非常重要的基础。Databricks 对它的定义是通过Bronze → Silver → Gold多层逐步提升数据质量、结构化程度和业务可用性它本质上是一个数据设计模式而不是某个具体产品。(Databricks 文档)一、先用一句话理解 Medallion可以把它理解成原始数据 → 可信数据 → 业务数据产品即Data Sources │ ▼ ┌─────────────────┐ │ Bronze │ │ Raw Data │ │ 原始数据 │ └─────────────────┘ │ │ 清洗 / 去重 / 类型统一 / CDC ▼ ┌─────────────────┐ │ Silver │ │ Trusted Data │ │ 可信明细数据 │ └─────────────────┘ │ │ 建模 / 指标 / 聚合 / 语义 ▼ ┌─────────────────┐ │ Gold │ │ Business Data │ │ 业务数据产品 │ └─────────────────┘ │ ├── BI ├── Data API ├── AI / Agent ├── RAG ├── Feature Store └── Data Science最核心的不是三个名字而是数据随着层级向上逐渐变得可信、统一、业务化。Databricks 官方也明确把 Bronze 定义为 raw ingestion、Silver 为 cleaning/validation、Gold 为 dimensional modeling/aggregation。(Databricks 文档)二、为什么会出现 Medallion Architecture传统数据平台经常是ODS ↓ DWD ↓ DWS ↓ ADS你应该非常熟悉这个模式。例如MySQL Oracle Kafka API 文件 ↓ ODS ↓ DWD ↓ DWS ↓ ADS ↓ BIMedallion 和这个思想其实非常接近。可以粗略理解传统数仓MedallionODSBronzeDWDSilverDWS/ADSGold但是二者不能完全画等号。因为ODS/DWD/DWS/ADS 更偏向数仓建模体系而 Bronze/Silver/Gold 更偏向 Lakehouse 数据生命周期与质量分层。Medallion 不规定你必须使用维度模型、星型模型也不规定必须有 DWD/DWS。Delta Lake 官方也强调Medallion 是一个灵活的数据分层设计模式而不是强制的数据建模规范。(Delta)三、Bronze原始数据层1. Bronze 是什么Bronze 的核心关键词Raw / Fidelity / Replay也就是尽可能保留数据进入平台时的原始状态。例如数据源MySQL Kafka API CSV JSON IoT 日志 CDC进入Bronze例如 MySQLcustomer ---------------- id name phone create_time update_timeBronzebronze.customer原则上尽量保留id name phone create_time update_time _source _ingest_time _batch_id _partition_date _op _offset四、Bronze 最重要的原则不要急着清洗这是理解 Medallion 最关键的一点。例如源系统传来id 1001 name 张三 age abc phone null很多传统 ETL 会发现 age 错误 ↓ 过滤掉但 Bronze 不应该这么干。更合理的是Source ↓ Bronze ↓ 原样保存然后Bronze ↓ Silver ↓ 发现 age abc ↓ 进入 quarantine / bad records为什么因为 Bronze 的一个核心价值就是Replayability可重放。如果半年以后发现 Silver 的清洗逻辑写错了错误逻辑 ↓ Silver ↓ Gold你可以Bronze ↓ 重新处理 ↓ 新的 Silver ↓ 新的 Gold而不需要再向业务系统要一次历史数据。Databricks 也明确强调Bronze 保留原始数据使下游层能够在需要时从原始层重建。(Databricks 文档)五、Bronze 到底允许做什么这是实际架构设计中非常重要的问题。Bronze 可以做① 数据格式转换例如JSON ↓ Parquet / Iceberg / Delta② 增加技术元数据例如_ingest_time _source _batch_id _file_name _partition_date _offset③ CDC 原始事件保存例如INSERT UPDATE DELETE④ 基础 schema 解析例如Kafka JSON ↓ 结构化字段但是一般不要在 Bronze 做业务规则 复杂 Join 指标计算 数据聚合 业务去重 业务语义转换六、Silver可信数据层Silver 是整个 Medallion 最重要的一层。关键词Clean Conformed Trusted也就是把原始数据变成可以被多个下游系统复用的可信数据。例如Bronze Customer Bronze Order Bronze Product Bronze Payment │ ▼ Silver七、Silver 主要做什么① 数据清洗例如age 18转换age INT② 去重例如id1001 id1001 id1001根据id update_time进行 CDC 去重。③ 数据质量校验例如id IS NOT NULL age BETWEEN 0 AND 150 amount 0④ 数据标准化比如不同系统CRM: customer_id ERP: cust_id 订单系统: user_id统一customer_id⑤ 主数据统一例如上海市 上海 Shanghai 上海市(01)统一上海⑥ 跨系统 Join例如Customer Order Payment形成customer_order⑦ 数据实体统一这是 Silver 非常重要的价值。例如企业里面客户 用户 会员 Account Customer Buyer最终统一成为Customer这就是Conformed Data八、Silver 的真正价值建立企业可信数据底座你可以把Bronze理解成事实而Silver理解成企业认可的事实例如Bronze订单金额 100 订单金额 100 订单金额 100.0Silverorder_amount DECIMAL(18,2)再比如Bronzeuser_id userid customer_id cust_idSilvercustomer_id所以 Silver 是整个企业数据平台真正的Trusted Data Layer九、Gold业务数据产品层Gold 的关键词Business Ready / Purpose Built也就是针对具体业务场景把 Silver 数据加工成可以直接消费的数据产品。例如Silver ↓ Gold产生销售日报 客户画像 经营分析 财务指标 库存分析 用户增长 AI Feature十、Gold 和 Silver 最大的区别这是面试特别容易问的。Silver回答这个数据是什么例如customer_id order_id product_id order_amount order_time它强调统一、准确、可复用。Gold回答这个数据拿来干什么例如customer_daily_spend或者daily_revenue或者customer_lifetime_value它强调业务语义和消费场景。Databricks 对 Gold 的描述也强调它通常是面向业务需求的聚合、维度模型和业务语义数据集。(Databricks 文档)十一、举一个完整的电商案例假设用户 订单 商品 支付 物流数据来源MySQL Kafka APIBronzebronze.user bronze.order bronze.product bronze.payment bronze.logistics特点Raw Append 可重放 保留来源Silver处理去重 类型转换 数据质量 CDC 主键处理 实体统一 跨系统 Join形成silver.customer silver.order silver.order_item silver.product silver.paymentGold针对业务gold.daily_sales gold.customer_value gold.product_performance gold.regional_sales gold.customer_portrait最终┌── BI │ Gold ────────────────┼── Dashboard │ ├── API │ ├── Agent │ └── AI十二、Medallion 和 Lakehouse 的关系这一点非常重要。Medallion不是 Lakehouse。关系应该是Lakehouse │ ├── Storage │ └── Object Storage │ ├── Table Format │ ├── Iceberg │ ├── Delta │ └── Hudi │ ├── Compute │ ├── Spark │ ├── Flink │ └── Trino │ └── Data Organization └── Medallion所以Medallion 是 Lakehouse 上的一种数据组织和处理模式。你完全可以Iceberg Medallion也可以Delta Lake Medallion也可以Hudi Medallion甚至不使用 Lakehouse也可以借鉴 Medallion 思想。十三、Iceberg Medallion 是什么关系对于你现在关注的 AI 数据平台我更建议这样理解Object Storage │ ┌──────┴──────┐ │ │ Iceberg Parquet │ ┌───────┼────────┐ │ │ │ Bronze Silver GoldIceberg 解决表怎么可靠地存。Medallion 解决数据怎么分层、怎么逐步变得可信。Spark/Flink 解决数据怎么计算。Trino/Doris/StarRocks 解决数据怎么查询。Data Governance 解决谁能看、数据是否可信、血缘是什么。Semantic Layer 解决业务到底怎么理解这些数据。十四、Medallion 和你之前问的 Semantic Layer 是什么关系这个特别值得讲。你之前的架构Data Sources ↓ Data Ingestion ↓ Data Lakehouse ↓ Data Processing ↓ Data Governance ↓ Semantic Layer ↓ AI-Ready Data ↓ Data API / Agent / RAG / BI如果加入 Medallion我会建议改成Data Sources ↓ Data Ingestion ↓ ┌──────────────────────────┐ │ Lakehouse │ │ │ │ Bronze → Silver → Gold │ └──────────────────────────┘ ↓ Data Governance ↓ Semantic Layer ↓ AI-Ready Data ↓ Data Services ↓ Agent / RAG / BI / API但更准确一点其实Governance 不应该只放在 Gold 后面。应该是横向贯穿Data Governance │ ┌───────────────────────┼────────────────────────┐ │ │ │ Bronze Silver Gold │ │ │ └───────────────────────┴────────────────────────┘ │ Semantic Layer │ AI-Ready Data治理应该覆盖Bronze Silver Gold Semantic AI-Ready包括Catalog Metadata Lineage Quality Security Access Control Data Classification PII Audit十五、最容易犯的错误把 Gold 当成 AI-Ready Data这个和你之前问的问题直接相关。很多人会说Bronze ↓ Silver ↓ Gold ↓ AI-Ready这个方向大体没问题。但是Gold ≠ AI-Ready Data例如gold.sales_daily非常适合BI Dashboard 经营分析但未必适合Agent RAG NL2SQL DataAgent AI Analytics因为 AI 需要的不只是“干净的数据”。它还需要业务语义 指标定义 实体关系 单位 口径 时间语义 权限 数据质量 描述 血缘 可解释性因此Gold Semantic Layer Metadata Quality Business Context Access Policy ↓ AI-Ready Data这个才是你现在应该重点理解的方向。十六、Medallion 和传统 ODS/DWD/DWS/ADS 怎么对应可以这样理解传统数仓 ODS ↓ DWD ↓ DWS ↓ ADS对应Lakehouse Bronze ↓ Silver ↓ Gold但是不要简单地认为Bronze ODS Silver DWD Gold ADS因为实际情况会复杂很多。例如 Silver 可以包含DWD 部分 DWS Data Vault Canonical Model Feature EngineeringGold 可以包含DWS ADS Data Mart Feature AI Dataset所以Medallion 是数据生命周期分层DWD/DWS/ADS 是数仓建模分层。这是两个不同维度。十七、Medallion 的数据流并不一定只有三层这一点很多面试官喜欢问。标准Bronze ↓ Silver ↓ Gold但实际可以Raw ↓ Bronze ↓ Silver ↓ Gold也可以Bronze ↓ Silver ↓ Gold ↓ Serving甚至Bronze ↓ Silver ├── Gold BI ├── Gold AI ├── Gold ML └── Gold APIDatabricks 官方明确指出三层只是常见模式并不是所有系统都必须严格使用三层。(Delta)十八、一个非常适合 AI 数据平台的 Medallion如果让我给你设计一个2026 年 AI 数据平台版 Medallion我不会只设计 Bronze/Silver/Gold。我会设计成Data Sources │ ▼ ┌─────────────┐ │ Bronze │ │ Raw / Event │ └─────────────┘ │ Quality Gate 1 │ ▼ ┌─────────────┐ │ Silver │ │ Trusted Data│ └─────────────┘ │ Quality Gate 2 │ ▼ ┌─────────────┐ │ Gold │ │ Business Data│ └─────────────┘ │ ┌──────────┴──────────┐ ▼ ▼ Semantic Layer AI Data Layer │ │ ├── Metrics ├── Training Data ├── Dimensions ├── Feature ├── Business Terms ├── RAG Dataset └── Relationships └── Agent Dataset │ │ └──────────┬──────────┘ ▼ AI / Data Services │ ┌─────────────┼─────────────┐ ▼ ▼ ▼ BI Agent API这就从传统数据仓库升级成AI 数据基础设施。十九、AI-Ready Data 应该放在哪里这个问题非常关键。我建议不要把 AI-Ready Data 简单理解成Gold 的下一层更准确的架构是Bronze ↓ Silver ↓ Gold ↓ ┌────────┴─────────┐ ↓ ↓ Semantic Layer AI Data Layer ↓ ↓ └────────┬─────────┘ ↓ AI-Ready Data ↓ Agent / RAG / AI / BI因为 AI-Ready Data 本质上是一个能力状态/数据产品状态不一定是一个物理存储层。这点非常重要。二十、Medallion 最核心的三个 Data Contract如果你以后面试AI 数据平台架构师 / 数据负责人 / P7/P8不要只说Bronze 原始、Silver 清洗、Gold 聚合。这个回答比较初级。更高级的说法是Bronze ContractFidelity保证原始性 完整性 可追溯 可重放Silver ContractTrust保证Schema Quality Consistency Conformance Deduplication Entity ResolutionGold ContractFitness for Purpose保证Business Semantics Metrics Performance Consumer SLA这三个 Contract 才是 Medallion 真正的灵魂。二十一、数据质量应该在哪里做不是Silver 才做质量而应该是Bronze ↓ 基础完整性 ↓ Silver ↓ 业务质量 ↓ Gold ↓ 业务指标质量例如Bronze检查文件是否完整 Kafka offset 是否连续 schema 是否解析 数据是否丢失Silver检查主键唯一 字段合法 外键有效 时间合理 金额合理Gold检查GMV Revenue DAU MAU 订单数 转化率例如GMV SUM(order_amount)到底是否包含退款 取消订单 优惠券 税这已经不是技术质量而是业务语义质量。二十二、Medallion 和数据治理Medallion 特别适合做数据治理。因为每一层都有明确的治理责任Layer治理重点Bronze来源、完整性、血缘、留存Silver数据质量、标准、主数据、实体Gold指标、业务口径、数据产品Semantic业务语义、指标定义AIAI 可理解性、权限、可信度最终形成Data Governance │ ├── Metadata ├── Catalog ├── Lineage ├── Quality ├── Security ├── Privacy ├── Access Control └── Observability横向贯穿整个数据链路。二十三、Medallion 最大的几个优点1. 数据可重放Bronze ↓ 重新计算 ↓ Silver ↓ Gold这是非常大的价值。2. 解耦例如20个数据源 ↓ Bronze ↓ Silver下游BI AI ML Agent不用重复清洗数据。3. 数据质量逐级提升Raw ↓ Clean ↓ Trusted ↓ Business4. 多团队协作例如Data Engineering ↓ Bronze / Silver Data Analytics ↓ Gold Data Science ↓ Silver / Gold / Feature AI Team ↓ Gold / AI Data二十四、Medallion 最大的问题它也不是银弹。问题一数据复制Bronze Silver Gold可能产生3份数据所以成本会增加。不过现代对象存储成本较低而且 Silver/Gold 往往远小于 Bronze更重要的是获得了可重算和可复用能力。(TechFabric)问题二层级泛滥有些公司最后变成bronze1 bronze2 bronze3 silver1 silver2 silver3 gold1 gold2 gold3结果没人知道到底哪个才是真正的数据。问题三Gold 变成垃圾场例如gold_tmp gold_test gold_final gold_final_v2 gold_final_v3 gold_new gold_new2这说明数据产品管理失控。问题四Silver 做成万能层所有业务逻辑都塞到 SilverSilver ↓ 各种指标 ↓ 各种报表 ↓ 各种业务逻辑最终 Silver 变成“大杂烩”。正确做法是Silver 负责可信、统一、可复用Gold 负责场景化的数据产品。二十五、Medallion 和你的 AI 数据平台定位如果你现在准备往AI 数据平台架构师 / AI 数据平台负责人这个方向走我建议你把 Medallion 放到下面这个架构里┌──────────────────────┐ │ Data Sources │ │ DB / API / Kafka / IoT│ └──────────┬───────────┘ │ ▼ ┌──────────────────────┐ │ Data Ingestion │ │ Kafka / CDC / Flink │ └──────────┬───────────┘ │ ▼ ┌────────────────────────────────┐ │ Lakehouse │ │ │ │ Bronze → Silver → Gold │ │ │ │ Iceberg / Delta / Hudi │ └────────────────┬───────────────┘ │ ┌──────────────┴──────────────┐ │ │ ▼ ▼ Semantic Layer AI Data Layer │ │ Metrics / Ontology Training Business Terms Feature Relationships RAG │ Evaluation └──────────────┬──────────────┘ │ ▼ AI-Ready Data │ ┌────────────────┼────────────────┐ ▼ ▼ ▼ Agent RAG BI │ ▼ Data API这里就非常清楚了Medallion 是数据底座的数据加工骨架。Semantic Layer 是业务理解层。AI-Ready Data 是面向 AI 消费的数据产品/能力状态。Agent / RAG / BI / API 是最终消费层。