一、前言
数据质量保障的关键的步骤是数据质量规则、数据质量指标,数据探查,数据保障机制和数据清洗,不管是在做数据质量或者打算做数据质量工作的朋友都可以详细研究下,应该会有帮助。
本篇包含数质量基础,数据质量规则、指标(附模板下载),数据探查(附模板下载),数据保障机制,数据清洗(附模板下载),常见质量问题(附下载文档)
二、数据质量基础
数据质量管理(Data Quality Management),是指对数据从计划、获取、存储、共享、维护、应用、消亡生命周期的每个阶段里可能引发的各类数据质量问题,进行识别、度量、监控、预警等一系列管理活动,并通过改善和提高组织的管理水平使得数据质量获得进一步提高。
数据质量最关键的6个维度:
1)完整性:指数据在录入、传递过程中无缺失和遗漏,包括实体完整、属性完整、记录完整和字段值完整四个方面。
2)及时性:指及时记录和传递相关数据,满足业务对信息获取的时间要求。
3)有效性:指数据的值、格式和展现形式符合数据定义和业务定义的要求。
4)一致性:指遵循统一的数据标准记录和传递数据和信息,主要体现在数据
记录是否规范、数据是否符合逻辑。
5)唯一性:指同一数据只能有唯一的标识符。
6)准确性:指真实地、准确地记录原始数据,无虚假数据及信息。
三、数据质量规则,数据质量指标
数据质量规则是数据质量最核心的内容,数据质量规则和指标设计的全与不全,是否合理,决定了数据的质量的好坏。下面是我根据华为数据之道和工业企业数字化转型之道加上我的经验综合出来的一个版本,如果这些规则都用到位,数据质量应该是有保障的,由于列比较多,完整版请在公众号获取。
对象 | 质量特性 | 规则类型 | 指标 |
单列 | 完整性 | 不可为空类 | 空值率 |
有效性 | 语法约束类 | 1-样本记录异常值比率 | |
有效性 | 格式规范类 | ||
有效性 | 长度约束类 | ||
有效性 | 值域约束类 | ||
准确性 | 事实参照标准类 | 样本记录中真实记录的比率 | |
跨列 | 完整性 | 应为空值类 | |
及时性 | 入库及时类 | 满足时间要求的样本记录的比率 | |
一致性 | 单表等值一致约束类 | ||
一致性 | 单表逻辑一致约束类 | ||
跨行 | 唯一性 | 记录唯一类 | |
一致性 | 层级结构一致约束 | ||
跨表 | 一致性 | 外关联约束类 | 外键无对应主键的样本记录比率 |
一致性 | 跨表等值一致约束类 | ||
一致性 | 跨表逻辑一致约束类 | ||
跨系统 | 一致性 | 跨系统记录一致约束类 | 样本记录与其它系统的匹配率 |
及时性 | 入库及时类 | 满足时间要求的样本记录的比率 |
四、数据探查
数据探查是数据质量保障非常重要要的一步,他是设计的基础,排除客观原因,好的效率和质量是可以通过设计来提升的,如果没有数据探查,一般情况下数据类项目都会反复多次,有可能影响人员变动,交接困难,维护困难,项目完成周期长等问题。
下面只是其中几个方面的数据探查,供参考,具体案例,请在公众号获取。
探查出的常见问题和分类请在公众号获取。
探查项 | 分析意义 | 分析点 | 分析点解释 |
完整性分析 | 保证分析的可靠性 | 空值记录数 | 探查字段在探查时间点没有值的记录条数 |
总记录数 | 探查字段在探查时间点总记录数 | ||
缺失率 | 探查字段在探查时间点缺失信息记录数占总记录数的比重 | ||
空值预警 | 探查字段在探查时间点缺失率高于10%则提出预警 | ||
主键唯一性 | 探查主键字段在探查时间点是否有重复记录 | ||
值域分析 | 分析是否有异常数据 | 最大值 | 数值型,日期型字段在探查时间点的最大值 |
最小值 | 数值型,日期型字段在探查时间点的最小值 | ||
枚举值分析 | 列出检测字段所有的枚举值 | 枚举范围 | 属性字段的枚举值定义 |
枚举实际范围值 | 属性字段在探查时间点实际的枚举值及其分布 | ||
异常比例 | 探查时间点,不在枚举定义范围的枚举值占总记录数的比重 | ||
逻辑性探查 | 业务逻辑点 | 根据业务逻辑探查字段是否遵循业务逻辑 |
五、数据质量保障机制
数据质量持续提升就要靠保障机制了,只有自动化,常态化,持续监控数据质量,才能不断提升数据的质量,数据质量保障主要有如下几个关键步骤:
设计量化指标—>设计质量打分细则->设计分值考核->异常数据监控->指标展现->按规则推送提醒相关负责人
例:空值率>5%,记1分,每日空值率指标预警,每日全部门通报,影响年底考核。
此部分需要根据公司实际情况详细设计。
六、数据清洗
数据清洗(Data cleaning)– 对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性。主要有不完整的数据、错误的数据、重复的数据三大类;
如果前端控制不到位,又想有高质量的数据,只能靠数据清洗,数据清洗是存量数据质量提升的关键步骤,数据清洗后的数据可以更好的支持数据分析,数据洞见。
参考模板在公众号获取。
七、结语
上面是我对数据质量的一些理解和实战经验,如果对您有帮助,烦请关注、转发,如有任何问题,请留言或加我微信入群,我们一起探讨,一起持续构建数据治理体系。