首页/数据/数仓建模速查/维度常见质量规则清单
维度与事实设计149 条

维度常见质量规则清单

维度质量围绕主键、枚举、参照与格式四类:自然键不重复、枚举在册、层级可追溯、格式统一;规则与告警阈值一起登记。

数仓建模速查数据更新于 2026-10-13

维度质量查什么

维度质量规则围绕四类问题:唯一性(自然键不重复)、枚举(取值在册)、层级(无孤儿节点)、格式(统一规整)。规则要与告警阈值和责任人一起登记,并在维度加载完成后执行,失败时阻断下游事实作业,或明确标记为降级数据。

基本信息

唯一性自然键不重复、代理键唯一
枚举取值在册,例如等级限于 A、B、C
层级无孤儿节点,父节点必须存在或本身为根
格式手机号位数、大小写、去首尾空格
配套要求每条规则绑定阈值与责任人

典型使用场景

  • 加载校验:维度入库后立即执行,不合格不进入下游
  • 上线验收:一次性检查全部规则并留存结果
  • 日常巡检:核心维度每日执行,异常自动告警
  • 变更回归:源系统改字段后重跑规则,确认口径未被破坏
  • 问题定位:事实关联异常时先查维度质量

两类规则示例

两类规则示例
-- 孤儿节点检查:父节点必须存在
SELECT count(1) AS orphan_cnt
FROM dim_org o
WHERE o.parent_id IS NOT NULL
  AND NOT EXISTS (
    SELECT 1 FROM dim_org p WHERE p.org_id = o.parent_id);

-- 枚举校验:取值必须在册
SELECT count(1) AS bad_cnt
FROM dim_customer
WHERE is_current = 1 AND tier NOT IN ('A', 'B', 'C');

四类规则

规则类检查内容示例写法
唯一性自然键不重复总行数等于去重后行数
枚举取值在册等级限于 A、B、C
层级无孤儿与环路父节点存在或为根
格式统一规整手机号 11 位、去首尾空格
维度质量要在事实加载之前执行:脏维度会悄悄污染全局,等到指标异常再回头查,影响范围已经扩大到所有下游模型。
规则要带阈值与责任人:没有阈值的规则会天天告警而被忽略,没有责任人的告警最终无人处理。
规则要同时覆盖增量与全量两种执行方式:增量批次容易漏掉跨批次的重复与孤儿,建议每周补跑一次全量校验兜底。

易错点

  • 只查事实不查维度:脏维度污染全局,问题发现太晚
  • 规则无阈值与责任人:告警泛滥或被忽略
  • 枚举校验靠外部分类代替在册清单:新增取值时无人更新,校验失效
  • 格式规则只在小样本上跑:全量数据里的异常格式仍然进入维表
  • 校验失败只告警不阻断:下游继续消费脏数据,损失扩大

数据来源与参考

  • 数据质量实践:维度校验规则
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌