数据质量问题很少以“数据错了”的形式暴露,而是以业务异常的形式出现:凌晨跑批突然失败、报表里多了几万条空值、下游模型输出结果整体偏移。真正有效的质量管理,是把事后救火变成事前拦截和事中告警。

一、先把“好数据”定义清楚
数据质量通常从六个维度衡量,前四个最常用:
| 维度 | 含义 | 典型规则 |
|---|---|---|
| 完整性 | 该有值的字段不能为空 | 订单金额非空率 = 100% |
| 唯一性 | 主键不重复 | 订单号全局唯一 |
| 一致性 | 跨表存储同一业务对象时值一致 | 订单表金额 = 明细汇总金额 |
| 时效性 | 数据按时到达 | 每日 06:00 前完成昨日数据 |
| 准确性 | 值与真实业务情况相符 | 地址在有效行政区内 |
| 有效性 | 符合业务定义的范围与格式 | 订单状态在枚举值内 |
需要注意:准确性与有效性是最难自动校验的两个维度,通常需要业务侧提供基准数据。建议前期把精力集中在完整性、唯一性、一致性和时效性上,性价比最高。
二、数据标准:所有规则的基准
没有数据标准,稽核规则就无从写起。数据标准至少应包括:字段的业务定义、数据类型与长度、取值范围或枚举、编码规则、责任部门与系统。这份文档应成为新系统建设和接口开发的强制输入。
实践中一个容易忽略的点是枚举值的管理。各系统的“已支付”可能对应 1、2、PAID 三种取值,如果不统一到标准编码,稽核规则只能不停打补丁。
三、稽核规则:分三类落地
- 强规则(阻断):关键主键缺失、必填字段为空。发现即在入库前拦截,不允许脏数据进仓。
- 提示规则(告警):空值率突增、分布异常。允许数据进入但必通知责任人。
- 统计规则(监控):对比历史均值与波动区间,发现总量突变。用于发现上游系统变更带来的间接影响。
规则不是越多越好。一个几千条规则的稽核体系往往因为告警泛滥而被完全忽略。建议只对进入核心指标链路的字段设强规则,其余用统计规则监控。
四、监控与闭环
告警之后的处理流程才是质量体系的实际运行部分:
- 自动建单并指派责任人。质量问题的责任人应该是源头系统的负责人,而不是数据团队。
- 记录处理时长。从发现到修复的时间,是衡量质量体系有效性的核心指标。
- 区分上游问题与加工问题。前者需要推动业务系统修复,后者是数据开发自身的责任。两类问题混在一起看,会无法定位改进重点。
五、两个反模式
只监控不修复。看板上标红但没人处理,一周后就没人再看这个看板了。质量体系必须有明确的责任人和处理时限。
把质量当纯技术问题。很多质量问题的根源在业务录入环节——销售为了赶时间不填客户编号,前台为了快速通过不校验手机号。不解决业务流程问题,再密的稽核规则也只是在事后报错。真正的解法往往是在录入环节加校验、把填写质量与业务指标挂钩,而不是靠下游反复清洗。
数据质量建设的合适目标不是“零缺陷”,而是“缺陷能被及时发现、有人负责、并在可接受时间内修复”。把这三个环节跑通,数据就能开始被业务真正信任。
