首页 > 编程知识 正文

数据质量监控如何实现,数据库质量控制

时间:2023-05-04 18:36:52 阅读:276781 作者:806

文章目录 ==数据质量的理解====数据质量维度====问题反馈流程====数据质量治理的三个阶段====数据质量产生的根本原因====数据质量治理的对象====数据质量战略====数据质量战略12条指令====数据质量测试框架====最初的一次评估====初步评估执行流程====持续测量流程====持续测量的结果与交付结果====过程控制解决方案====定期测量====测试类型清单参考====数据质量监控软件==

暂时定义为数仓的质量管理,完全可以定义为数据中台的质量管理。

数据质量的理解

数据质量的高低代表了该数据满足数据消费者期望的程度,这种程度基于他们对数据的使用预期。数据质量必须是可测量的,把测量的结果转化为可以理解的和可重复的数字,使我们能够在不同对象之间和跨越不同时间进行比较。 数据质量管理是通过计划、实施和控制活动,运用质量管理技术度量、评估、改进,进而保证数据的恰当使用。

数据质量维度

也有说是6个维度的,本文是5个维度

完备性(也可以理解为准确性)有效性及时性一致性完整性

气泡图如下所示:

其中,ODS层主要完整性、有效性、及时性;
DW层主要是完整性、一致性、有效性、完备性;
APP层主要是完备性、及时性。

问题反馈流程

数据核查人员—>>>数据清洗人员---->>>数据开发人员—>>>修复、测试、上线—>>>添加至数据问题库—>>>数据核查人员

数据质量治理的三个阶段 被动问题治理阶段主动问题发现阶段预防出现问题阶段

数据质量产生的根本原因

源系统
01-源系统数据结构发生变更;

02-源系统业务流程发生变更;

03-源系统数据录入错误或者延迟;

04-源系统随着时间的推移,数据发生了演变;

05-源系统数据发生震荡;

ETL系统
01-需求不明确或者是没有满足客户需求;

02-ETL映射规则错误;

03-ETL程序错误;

04-数据没有及时到达或者依赖错误;

定时调度系统
01-调度系统因数据延迟到达严重延迟;

02-调度系统自身故障;

业务需求
01-随着时间的推移,数据需求发生了变化;

02-源系统和源业务需求发生冲突;

数据质量治理的对象

数据质量战略 大多数企业都没有一个数据战略,因为他们不理解其数据的价值,并且他们不认为数据是一个组织的资产,而把数据看作创建它的部门领域内的东西。缺乏数据战略将导致脏数据、冗余数据、数据不一致、无法整合、性能底下、可用性差、责任缺失、用户日益不满意IT的性能。 数据质量战略12条指令

指令主要分为三组:

第一组着眼于数据在企业内的重要性,并需要由高级管理层来推动。第二组把制造实物产品的概念应用到数据上,它们应该由数据质量项目团队推动。第三组的重点是建设质量文化,以应对数据的流体性质并满足战略管理的持续挑战。

具体如下所示:

第一组
01-获取管理层对数据质量的承若;
02-把数据当作资产;
03-应用资源来注重质量;
04-建立数据的元数据;

第二组
05-把数据当作可测量和可改进的流程的一个产品(重点落地到产品);
06-认识到数据质量是由数据消费者定义的;
07-解决造成数据质量的根本原因;
08-测试数据质量,监控关键数据;

第三组
09-保证数据生成者对自己的数据质量和元数据负责;
10-为数据消费者提供他们所需要的数据知识;
11-为数据的演进做规划;
12-构建数据质量超越数据本身的质量文化。

数据质量测试框架

最初的一次评估 初步评估通过数据剖析来完成的,数据剖析通常在准备把数据存入数据仓库是做一次,它是全面和跨数据集的,它描述了数据结构、内容、规则、和关系的概况。通过应用统计方法返回一组关于数据的标准特征,包括数据类型、字段长度、列基数、粒度、值域、格式模式、隐含的规则、跨列和跨表的数据关系,以及这些关系的基数。初步评估的目的是获得对数据和环境的了解,并对数据的状况进行描述。

数据剖析包括:

初步评估执行流程

初步评估的结果与交互结果
01-源系统的业务流程;
02-源系统的技术流程;
03-对数据模型的改进建议;
04-源系统改进机会的评估总结;
05-对元数据和参考数据的改进建议;
06-用于持续测量和控制的计划;

持续测量流程

持续测量流程如下图

持续测量的结果与交付结果

01-完备性总结;
02-有效性总结;
03-一致性总结;
04-数据流程效率总结;
05-对持续发现的问题进行跟踪;
06-对改进的步骤进行结果验证;

过程控制解决方案

这一点主要是处理ETL过程中

通常情况下,当我们遇到错误数据, ETL 一般提供以下 4 种解决办法:
1、没有任何处理的通过记录
2、通过记录,打上错误标记
3、拒绝记录
4、停止 ETL 任务

下面就这几种情况进行一下分析:
首先选项 1明显不能保证数据质量,并将最终影响报表质量。
其次选项 3也不能保证数据完整性,因为数据将发生遗弃,也将会影响报表质量。
再次选项 4会影响 ETL处理,导致数据仓库不能正常运行下去。
所以,最常见的处理方式就是选项 2,首先保证这些记录顺利通过,然后记录一些错误标志,并通过报表反映出来。

这样做有以下四种好处:
1、通过特殊处理确保了数据的完整性
2、反映了数据仓库的数据源数据质量
3、对数据质量可以有一个比较准确的度量
4、确保了数据仓库的顺利实施和任务的正常调度

数据质量应该尽量确保在 ETL 环节中进行,因为每一点的错误都会导致后续处理的无限放大,同时数据仓库的处理是线性进行的,当发现错误时,很难回过头来对数据进行重新的处理。因此尽量把错误和数据质量问题消除在靠前的位置。

定期测量 针对非关键性数据和不适合持续测量的数据,定期重新评估为数据所处状态符合预期提供一定程度的保证。定期评估可以确保参考数据保持最新,关系依然稳定,并且业务和技术演进不会导致意外的数据更改。 测试类型清单参考

数据质量监控软件 推荐学习一下Apache Griffin(Ebay开源数据质量监控平台),2018年12月成了Apache顶级项目

具体监测案例可以自行百度,这里不演示了。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。