维度质量查什么
维度质量规则围绕四类问题:唯一性(自然键不重复)、枚举(取值在册)、层级(无孤儿节点)、格式(统一规整)。规则要与告警阈值和责任人一起登记,并在维度加载完成后执行,失败时阻断下游事实作业,或明确标记为降级数据。
基本信息
| 唯一性 | 自然键不重复、代理键唯一 |
|---|---|
| 枚举 | 取值在册,例如等级限于 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 位、去首尾空格 |
维度质量要在事实加载之前执行:脏维度会悄悄污染全局,等到指标异常再回头查,影响范围已经扩大到所有下游模型。
规则要带阈值与责任人:没有阈值的规则会天天告警而被忽略,没有责任人的告警最终无人处理。
规则要同时覆盖增量与全量两种执行方式:增量批次容易漏掉跨批次的重复与孤儿,建议每周补跑一次全量校验兜底。