3、数据质量评估维度:完整性、准确性、一致性、及时性、唯一性、规范性
数据质量评估,说白了就是给数据「体检」。我做了这么多年数据治理,见过太多项目一上来就建平台、上工具,结果数据还是一团糟。为什么?因为没搞清楚到底要评什么。
我个人习惯把数据质量拆成六个维度。这六个维度就像六面镜子,能从不同角度照出数据的真实面貌。你想想看,如果连数据「好不好」的标准都没定,后面的评分体系就是空中楼阁。
3.1 完整性:数据有没有「缺胳膊少腿」
完整性,就是看数据该有的东西有没有。比如客户表里,姓名、手机号、身份证号这些必填字段是不是都填了。我见过最夸张的一个项目,客户表的手机号字段空值率高达 40%,销售打电话一打一个空号。
度量方式其实很简单:
- 字段级完整性 = 非空记录数 / 总记录数 × 100%
- 记录级完整性 = 所有必填字段都非空的记录数 / 总记录数 × 100%
- 表级完整性 = 各字段完整性的加权平均
3.2 准确性:数据是不是「对的」
完整性只解决了「有没有」,准确性要解决「对不对」。举个例子,订单金额字段填了,但填的是负数——这就是准确性问题。
我个人习惯把准确性分成两类:
- 值域准确性: 数据是否在合理范围内。比如年龄 0-150,性别只能是男/女。
- 业务准确性: 数据是否与真实业务一致。比如订单金额是否等于商品单价×数量。
度量公式:
准确性 = (1 - 错误记录数 / 总记录数) × 100%
其中「错误记录」需要定义明确的校验规则:
- 值域规则:年龄 > 0 且 < 150
- 格式规则:手机号匹配 1[3-9]\d{9}
- 逻辑规则:订单金额 = 单价 × 数量
3.3 一致性:数据之间「打架」了吗
一致性,说白了就是不同地方的数据能不能对得上。同一个客户,CRM 系统里叫「张三」,ERP 系统里叫「张先生」,这就叫不一致。
我遇到过最头疼的情况:两个系统都声称自己是「主数据源」,结果对账时发现客户名称对不上,财务部门加班三天才搞清楚。
度量方式:
| 一致性类型 | 定义 | 度量方法 |
|---|---|---|
| 跨系统一致性 | 同一数据在不同系统中的值是否相同 | 匹配记录数 / 总记录数 × 100% |
| 逻辑一致性 | 关联字段之间的逻辑关系是否成立 | 例如:订单日期 ≥ 发货日期 |
| 格式一致性 | 同一类数据的格式是否统一 | 例如:日期格式统一为 YYYY-MM-DD |
3.4 及时性:数据「过期」了吗
及时性,就是数据从产生到可用,花了多长时间。你想想看,如果昨天的销售数据今天下午才出来,销售总监还怎么调整策略?
度量指标:
- 延迟时间: 数据产生时间到数据可用时间的差值
- 更新频率: 数据多长时间更新一次(如 T+1、实时)
- 时效性达标率: 在 SLA 规定时间内完成更新的次数 / 总更新次数
3.5 唯一性:数据「重复」了吗
唯一性,就是看同一实体在数据集中是否只出现一次。重复数据会带来什么问题?我举个例子:营销活动发优惠券,同一个客户因为数据重复收到了 3 张券,公司直接亏了 200 万。
度量方式:
唯一性 = (1 - 重复记录数 / 总记录数) × 100%
重复记录判定规则:
- 精确匹配:所有字段完全相同
- 模糊匹配:关键字段相似度超过阈值(如姓名+身份证号)
- 业务主键匹配:按业务定义的唯一标识判断
3.6 规范性:数据「守规矩」了吗
规范性,就是数据是否符合预定义的格式、编码和标准。比如性别字段,有人填「男」,有人填「M」,有人填「1」——这就是不规范。
我见过最乱的一个项目:同一个「省份」字段,有的填「北京」,有的填「北京市」,有的填「BJ」,数据清洗时差点崩溃。
度量方式:
- 格式规范率: 符合标准格式的记录数 / 总记录数
- 编码规范率: 使用标准编码的记录数 / 总记录数
- 命名规范率: 字段命名符合规范的比例
举个例子:
规范性 = 符合 GB/T 2260 行政区划代码的记录数 / 总记录数 × 100%
如果总记录 10000 条,其中 9500 条使用了标准编码,则规范性 = 95%
3.7 六大维度的综合应用
六个维度不是孤立的。我习惯把它们分成两组:
- 基础维度: 完整性、规范性。这两个是数据质量的「底线」,必须先达标。
- 进阶维度: 准确性、一致性、及时性、唯一性。这些决定了数据能不能真正用起来。
在实际项目中,我会先做完整性评估,因为数据都没填全,其他维度根本没法评。然后做规范性检查,把数据格式统一了。最后再评估准确性、一致性、及时性和唯一性。