数据平台-第一章-数据质量提升

概述

元数据为数据数据平台提供了一致的描述信息,描述系统的结构特征和静态特征,并作为控制性信息,控制并配置特定工具和进程运行,实现数据平台管理和维护的自动化处理。数据质量管理是构建在元数据对数据平台全流域,全生命周期,全景式的全方位描述上,对支持业务需求的数据进行全面质量管理,通过质量相关办法,组织,流程,评价考核规则的指定,及时发现并解决数据质量问题,提升数据的完整性,及时性,准确性及一致性,提升业务价值。
影响数据平台数据质量的几个方面

  • 元数据因素:主要由元数据描述或者理解错误,数据度量的各种性质难以保证,变化粒度和频度不恰当
  • 技术因素:由具体数据处理技术环节的异常造成的数据质量问题。问题的产生环节:包括数据创建,数据获取,数据传输,数据装载,数据使用,数据维护等
  • 流程因素:由于系统作业流程和人工操作流程设置不当造成的数据质量问题,主要来源系统数据的创建流程,传递流程,装载流程,使用流程,卫华流程和稽核流程等各环节
  • 管理因素:由于人员素质及管理机制等造成的数据数据质量问题

从上我们看到数据质量影响是多方面。需要建立一套常态化,体系化,标准化,自动的数据质量管理解决防范,以达到数据质量控制的,全面性,可控性,可度量性能,可迅速定位和有效解决。遗憾的是目前大多的数据团队解决数据质量问题,是事后补救,补救方式碎片化,滞后性,难以控制,成本高昂,问题不定期重现,甚至是不可持续。

  1. 在数据接入阶段,发现可能出现网络中断导致数据传输中断,引起的数据质量问题,单独开发了一个脚本用于检验数据是否一致,将检验结果放在集群的某个角落,以供下游的人员使用。后面就形成了一种约定的习惯只要有接入都需要额外开发这样的一段业务无关的代码。无形中增加bug的产生几率,同时将检验结果随意存放,给日后对接人员,维护人员都带来不小麻烦。
  2. 经业务发现数据量,有逐渐下降的趋势,经排查是由于业务规则更改,ETL开发人员信息没有同步到。这类问题还不时重现在业务规则更改的时候
  3. 经业务发现某日数据环比以前的数据异常高接近翻倍,经排查在仓库处理阶段,由于调度系统bug,一个任务在一个时间区间被重复调度。

以上的这些问题,在本文中都将得到监控和有效解决

预定义数据质量规则

根据之前企业预定的质量管理目标,策略,和范围,通过元模型,实现建立起数据质量的规则体系,包括接口质量规范,数据模型质量规则,指标质量规划,报表质量规划,程序模块规范。事前质量检查的关键项举例

  1. 字符串比较:Schema和解析字段映射是否匹配不上;检查没有于任何数据处理过程建立数据处理关系的数据实体b
  2. 非空检查:某个属性不能为空
  3. 值域检查:判断某个值是否在指定范围内
  4. 时间比较:判断某个时间是否复合之前预定的时间规则下
  5. 格式检查:判断某个值是否复合特定的格式
  6. 相关性比较:取相关对象的指标值范围波动检查
  7. 维度波动对比:取某个时间段数据的所有属性跟某个指定的数据进行所有对比
  8. 静态Schema属性变动检查:检查新增或减少的成员,或减少的成员大于一定的比例告警
  9. 静态Schema属性波动检查:检查成员的波动率范围

运行时数据质量监控

该阶段根据动态监控规则或算法,进行监控数据采集和规则校验,并依据稽核和检查过程中发现的数据质量异常情况进行警告的过程。该环节包括源数据接口检查,数据实体检查,处理过程检查,关键指标检查、

元系统接口检查

  • 数据结构变更监控:对结构中字段的更删改进行监控。当字段更新时,识别变化所在的接口,影响的数据模块。
  • 字段维值监控:将一个表的有数量和值要求的字段和之前的历史数据进行对比,发现存在值数据和大小的变化
  • 业务规则监控: 检查逻辑的合理性,一个统一社会信用号,在存续等正常状态下只有一个公司在用

数据实体检查

这个阶段从模型约束,实体属性,实体关系和实体业务特征等角度,更具预定义规则检查数据合理性并及早发现异常,从而保证数据中心系统所提供数据的可用性与正确性。主要涉及实体完整性,参照完整性。具体包括以下主要内容。

  • 实体主键合法性:存在实体主键重复的值
  • 外检检查:检查是否满足引用完整的规则
  • 值域检查:检查特定字段的取值是否在预设范围内
  • 实体关键属性完整率:检查实体关键属性是否为空
  • 属性合法性:实体属性的取值在语法和语义上均应符合业务规则

处理过程检查

根据预先配置的规则和质量检查度量,对数据处理过程的检查稽核。处理环节包括,接口数据处理过程(eg:抽取,传输,清洗,转化,加载等过程),仓库处理过程(关联,汇总等),数据集市处理过程及应用展现过程,重点关注处理过程的及时性和准确性。

  • 及时性:根据预先设定的时间范围,检查数据各处理环节是否及时完成,比如关键性指标,是否能按照T+1产出等
  • 准确性:检查各处理环节对数据的处理清苦,eg,对接口文件的文件级别,记录级别的校验,校验数据层数据的准确性;通过对比处理过程输入端和输出端数据平衡性,检查各个处理过程的准确率,验证个数据层业务逻辑是否正确。eg:ETL过程中的记录数的平衡性检查,仓库处理阶段的数值的平衡性,和数据关联检查

关键指标

关键指标,是对企业做组织运营来说特别重要的数据项信息,eg:业务量类指标,收入类指标等。对这类指标一般采用下面这几种方式进行检查:

  • 指标波动检查:包括指标数据检查,波动检查等,其中数值检查,主要是通过检查单个指标的数值,一般是最大值,最小值来发现指标的异常和突变情况。波动检查包括同比波动,环比波动检查。
  • 平衡性检查:通过对若干可加性指标的四则运算,来检查各个指标间健在的平衡或其他比较关系
  • 指标加权波动检查:通过对单个指标的基础检查结果和影响因素的加权计算分析。综合检验检查指标的波动和变化状况

事后数据质量评估

为了应对数据质量现状进行分析和改进,需要在数据质量问题处理完成,展开评估分析工作,其中包括对生产系统运行过程产生的问题,人员报告,维护,用户投诉保障的问题进行分析。例如对问题和解决办法进行总结,可以供其他人员进行学习,也可以上升到系统层面,变成一种固定逻辑,减少日后出现问题的可能。
在这个阶段有下面的一些实践方式可供参考:

  • 数据质量知识库,对数据及过程问题的处理经验总结,把数据质量知识库结构化。为了切实保证这类的知识的落地和可用性,需要定期对其他人员提交的数据质量知识进行评审
  • 质量问题分析报告,包括有变成引起的质量问题和影响,以及问题处理情况
  • 数据质量评估报告,针对数据完整性,唯一性,合法性,时效性,编码检查,统计口径进行评估
  • 跨系统质量关系分析报告,即对跨系统数据一致性进行比较核对,核对方法包括指标核对,总量核对,分量核对。通过这些方法除了对一致性进行比对,可以找出问题发生的源头。

数据质量的处理

数据质量问题的处理要求提供一个统一的数据质量问题入口,基于对质量监控所发现的问题(包括系统自动检查发现,技术人员和业务人员手工提交的问题等),统一通过该入口进行问题单的填写和提交,并触发问题处理流程。
围绕数据质量问题的处理,实际上就是一个流程化的过程,包括问题生成,问题分析,问题处理和问题总结,内容如下:

  1. 问题生成:问题生成包括了质量监控过程生成,质量评估过程生成,人员手工提交生成这三类。这些问题基础信息包括问题类别,问题描述,问题发现时间,发现者,联系人员。
  2. 问题分析:在问题分析与定位过程中,根据问题信息和问题关联的对象,对问题的原因进行分析。可以用到的工具包括元数据分析,数据质量知识库等
  3. 问题处理:根据具体的情况,采取多种数据质量问题处理方式,包括了系统自修复,问题隔离屏蔽,生成任务工单处理,监控告警信息发送

备注

  1. 全流程:从空间维度来进行治理的方式,从源数据开始,就必须对数据口径,使用对象,处理方式,流转过程等进行管理,并支持对数据血缘式的追本溯源
  2. 全生命周期:是从时间维度来进行治理,关注不同数据对象在它生成,应用,分离,归档等不同阶段的变化
  3. 全景式:从应用场景维度来进行治理的方式,对于数据来说,既有全局规划的管理者,也有关注细节定义的使用者,还有各类加工,运维,挖掘分析,可视化站的开发者。

引用

  1. 《数据仓库中的元数据管理》戴超凡,刘青宝,黄宏斌,邓苏
  2. 《数据资产管理--盘活大数据时代的隐形财富》 高伟
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值