1. 课程导入与全景认知
在 Databricks 湖仓一体(Lakehouse)平台上构建 AI 应用时,模型效果的上限往往不由算法决定,而由数据本身决定。一个推荐模型可能因为训练样本中 3% 的重复用户行为记录而出现严重偏差;一个 RAG 问答系统可能因为向量库中混入了过期的产品文档而给出错误答案。这些问题表面上是"模型问题",根子上却是数据质量问题与元数据治理缺失。本课程的目标,就是让学习者能够在 Databricks 上建立一套可落地、可度量、可追溯的数据质量与元数据治理体系,使 AI 应用建立在可信数据之上。
一、课程要解决的核心问题
本课程围绕三个递进的问题展开。第一,数据质量如何被定义和度量——完整性、唯一性、一致性、准确性、及时性、有效性这六个维度,在 Databricks 中分别对应哪些可执行的检查手段。第二,元数据如何被采集、组织和利用——技术元数据、业务元数据、操作元数据如何通过 Unity Catalog 统一管理,并进一步支撑血缘分析与影响分析。第三,质量与治理如何反哺 AI——如何用治理后的元数据驱动特征工程、训练数据筛选、模型监控与漂移检测。
这三个问题不是并列关系,而是层层支撑:没有元数据,质量规则就无处挂载;没有质量规则,AI 数据资产就无法被信任。下面的全景图展示了本课程的技术栈分层与数据流向。
二、核心概念:质量、元数据与治理的关系
很多团队把数据质量和元数据治理当成两件事:质量团队写 SQL 校验,治理团队维护数据字典。但在 Databricks 的实践中,两者必须耦合。原因在于:质量规则本身也是一种元数据。当你在 Unity Catalog 中为 catalog.schema.table 注册一条"订单金额必须大于 0"的规则时,这条规则需要知道它作用于哪张表、哪个字段、由谁负责、违反后通知谁——这些信息全部来自元数据。反过来,元数据中的血缘关系决定了当上游表结构变更时,哪些下游质量规则需要同步调整。
因此本课程采用"元数据为骨架、质量规则为血肉、AI 应用为出口"的组织逻辑。元数据提供"数据长什么样、从哪来、到哪去"的骨架;质量规则在骨架上定义"什么算合格";AI 应用则消费经过验证的数据资产。
三、技术栈全景与关键组件
在 Databricks 上落地这套体系,主要依赖以下组件,它们各自承担明确职责:
- Unity Catalog:统一元数据目录,管理 catalog → schema → table/view/volume/function/model 的层级命名空间,提供细粒度访问控制、血缘追踪、标签与分类。
- Delta Lake:提供 ACID 事务、时间旅行、Schema 演进与约束(NOT NULL、CHECK),是质量规则在存储层的第一道防线。
- Lakehouse Monitoring:自动计算表级与列级统计指标(空值率、唯一值数、分位数、分布漂移),并生成监控仪表板。
- Databricks SQL / Notebook:编写和执行自定义质量检查逻辑,支持将结果写回治理表。
- Workflows 与告警:调度质量检查任务,在指标越界时触发通知或阻断下游作业。
- Feature Store 与 Vector Search:将治理后的特征与向量资产注册为可发现、可复用的元数据对象。
四、学习路径与阶段目标
本课程共 30 章,建议按四个阶段推进。第一阶段(第 1–8 章)建立认知与基础操作:理解质量维度、掌握 Unity Catalog 的元数据对象模型、学会用 Delta 约束做基础校验。第二阶段(第 9–16 章)进入规则工程:编写可复用的质量规则、配置 Lakehouse Monitoring、设计告警与阻断策略。第三阶段(第 17–24 章)聚焦治理深化:血缘分析、影响分析、标签分类、敏感数据识别与合规。第四阶段(第 25–30 章)面向 AI 场景:训练数据质量筛选、特征漂移检测、RAG 知识库的元数据治理与端到端案例复盘。
五、一个贯穿全课程的示例场景
为了让抽象概念有具体落点,本课程将贯穿一个示例场景:某电商平台的用户行为日志表 ai_governance.behavior.user_events,字段包括 event_id、user_id、event_type、event_time、item_id、price。这张表既用于训练推荐模型,也用于构建 RAG 的商品知识库。后续章节中,我们会逐步为它添加:主键唯一性约束、事件时间及时性检查、价格非负校验、用户 ID 空值率监控、字段业务标签、上下游血缘关系,以及基于质量分数的训练数据筛选逻辑。这些操作全部使用真实可执行的 Databricks SQL 与 PySpark 代码,参数和结果会明确标注为示例数据。
通过这个场景,你会在课程结束时拥有一套完整的、可迁移到其他数据域的治理方案,而不是零散的知识点。