6.2 数据质量
数据质量是保证数据应用效果的基础,因此数据质量管理是数据治理的重要模块。
数据质量管理模块支持针对质量模型进行管理,数据质量模型是“数据质量管理”的核心载体:
质量模型中支持针对数据集进行检测规则的设置;
质量模型可以进行手动运行/定时运行,并且针对不同的运行结果支持设置监控告警;
每个质量模型的所有历史运行记录可进行集中管理,并支持展示每次运行的详细质量评估报告。
入口:数据中心-数据质量管理
质量模型的编辑
针对质量模型可进行:评估对象(数据集)和评估指标(检测规则)的定义。
数据集:支持选择该项目数据中心内的数据集作为评估对象
检测规则:每个质量模型需要针对每一条规则进行检测,每条规则都满足后当前质量模型的运行会判断为“通过”
如果存在某条规则状态为“不通过”,本次运行记录状态为“不通过”
“不通过”表示规则运行完毕,但数据存在异常
如果存在某条规则状态为“失败”,本次运行记录状态为“失败”
“失败”表示规则运行过程中发生问题(eg:数据集丢失、字段丢失等),没有运行完毕
如果某条规则运行“不通过”/“失败”,其他规则的运行不受影响
目前支持的检测规则有如下几类:
表粒度规则
行数检查:检测对象的行数为某常数,或者满足某阈值范围eg:某张表的数据行数需要稳定为三十行;数据行数不得小于下限阀值/大于上限阀值
字段检查:检测对象必须包含某些必需字段eg:业务方提供的手工表文件中不得缺失SKU number、Category、Brand字段;列名大小写、格式需要符合规范
字段粒度规则
唯一值检查:以某一字段/某几个字段为主键,不能有重复数据eg:员工编号不得重复;同一期的出院病人,姓名、性别、身份证号不应该重复
异常值检查:检测对象的某一字段/某几个字段,不能包含指定的异常值eg:员工信息中部门编码不能为空;订单明细表中orderid以及skuid不能为空
枚举值检查:检测对象的某一字段/某几个字段,只能包含指定的枚举值eg:性别列中不能出现男/女以外的数据值
值格式检查:检测对象的某一字段/某几个字段,所有数据必须符合指定格式eg:时间字段的格式必须为yyyy-mm,如2020-01
值域检查:检测对象的某一/某几个字段(数值类型)检查值域范围eg:单笔报销金额不得超过10000
逻辑检查:支持自定义检查规则公式,模型运行时会根据公式判断对每一行数据是否满足条件,从而筛选出异常数据eg:出院时间一定是在入院时间之后的;促销结束日期早于促销开始日期;促销期限超过 60 天
质量模型保存前需要确保:
至少包含一个数据集
至少包含一条规则
所有规则都是“正常”状态:配置完成,且不存在字段缺失
针对数据集的变更/删除,质量模型会进行异常状态检测:
质量模型编辑页的数据集操作:
切换数据集:
如果对规则的检测字段存在影响,那么支持进行字段映射
如果用户不进行映射,那么相应规则变成“异常”状态
数据中心的数据集操作:
数据中心的数据集被删除:数据集变为“异常”状态,相应规则变成“异常”状态
数据中心的数据集发生字段变更:如果对规则的检测字段存在影响,那么相应规则变成“异常”状态
质量模型的运行
质量模型可以进行手动运行/定时运行:
质量模型支持设置监控告警:支持对于各种运行结果发送邮件告警(通过、不通过、失败、取消)
质量评估结果的展示
查看运行记录
针对每个质量模型支持查看所有的历史运行记录:
运行记录的状态分为:运行中/取消/通过/不通过/失败
状态为“运行中”的运行记录支持取消
状态为“取消”的运行记录无法查看报告
状态为“通过”/“不通过”/“失败”的运行记录支持查看质量报告
质量报告的展示
质量报告支持展示质量模型运行的详细质量评估结果,包括:检测数据集、规则总数、规则列表、校验结果、数据状态等