数据质量评价体系参考

2023-11-17

数据质量人人有责,这不仅仅只是一句口号,更是数据工作者的生命线。数据质量的好坏直接决定着数据价值高低。

数据质量管理是指在数据创建、加工、使用和迁移等过程中,通过开展数据质量定义、过程控制、监测、问题分析和整改、评估与考核等一系列管理活动,提高数据质量以满足业务要求。

可按照“谁创建、谁负责;谁加工、谁负责;谁提供、谁负责”的原则界定数据质量管理责任,由数据流转环节的各责任方对管辖范围内的数据质量负责。对数据质量规则优先采取系统程序的自动化控制措施,并尽可能前移管控点,从源头上控制数据质量。

01  数据治理问题场景

在日常工作中,业务领导经常会通过报表看板等数据产品来了解各项业务的发展趋势以及KPI的达成情况。倘若某天,他打开某张核心报表,发现当日的数据一直是空白的,询问报表开发人员,开发经排查分析,发现是依赖的上游有延迟,上游数据预计要下午才能到达,导致业务领导在正常时点无法查看业务数据情况。

又或某天,业务人员点开报表发现当日AUM规模暴增,数据增长当然开心,但仔细推敲,发现这波动有点不合常理,于是通知数据负责人验证下数据是否存在异常。经过几个小时的排查分析,数据负责人报告说数据确实算的有些问题,业务业务以后对该报表数据的准确性将会打上问号。

若类似的数据问题经常出现,估计迎接你的不是美好明天,而是你的职业生涯的最后一天。

02  数据质量的重要性

数据质量为什么至关重要?因为拥有高质量的数据可以让您更好地了解任何情况,从而更精准地执行任何事情。反之亦然。

伴随着技术的进步,组织或者企业能够收集大量的数据,用好这些数据已成为焦点。然而,由于以下原因,很多组织或者企业并没有实施数据质量计划:

  • 没有业务部门负责数据质量问题

  • 数据质量需要跨职能合作

  • 它要求组织认识到数据质量是一个重要问题

  • 它需要数据质量准则

  • 它需要投入财力和人力资源

  • 它被认为是非常人力密集的

  • 投资回报往往难以量化

看起来,挑战大于好处。


但是,数据质量务必重视,原因有三。

原因一:成本

数据质量差,是IT项目失败的主要原因,也是客户流逝背后的驱动因素之一。

原因二:合规

质量差的数据会带来重大的法律或者声誉风险。一些例子如下:

  • 数据缺失导致信用风险不准确

  • 信用记录不完整致使风险评估错误

  • 监管违规

原因三:决策

质量好的数据意味着有准确及时的信息来管理从研发到销售的产品和服务。质量差的数据导致错误的洞察力,从而做出错误的决策。决策的错误,公司会付出沉重的代价。

在企业,数据服务的方式有报表看板、标签指标和数据接口等,而这些数据服务要想为业务带来价值的,其首要前提就是要保证数据的准确性,输出高质量的数据。

低质量的数据会误导业务做出错误的决定,致使行动方向发生偏离。特别是在数据驱动的组织中,是否有准确的、可用的高质量的数据,将直接影响领导层能否做出正确的决策和战略目标的实现。

因此需要特别重视数据的质量问题,针对数据质量进行专项治理。

03  数据质量常见问题

在前面的场景案例中,我们可以发现有如下几个数据质量问题:

  1. 数据延迟,导致业务无法在正常时效内获得数据结果。

  2. 数据错误,导致数据结果完全不可信,以致无法使用。

  3. 数据恢复慢,问题发生后,排查分析耗时长,数据恢复时间慢。

发现滞后,数据开发晚于业务人员发现数据异常,导致影响已传导到数据应用端。

04  数据质量问题原因

那应该如何解决这些质量问题,保证数据的高质量交付呢?

首先,我们需要了解这些质量问题产生的根本原因,了解问题才能更好地去解决问题。通过对历次数据质量问题进行复盘、总结,发现质量问题主要由下面几类原因引发:

  • 数据平台问题:平台不稳定、队列资源不足等,导致作业运行延迟、报错。

  • 数据开发问题:数据开发人员的任务脚本性能太差,计算严重耗时,导致数据延迟;或是代码逻辑设计有问题,导致数据计算有误。

  • 上游系统异常:上游源系统异常,数据文件晚到,导致下游依赖作业延迟。

05  数据质量治理

出现问题不可怕,可怕的是出现问题后,我们毫无感知,不能做到“早发现、早处理、早恢复”,以致问题直接传导到业务方,影响业务的开展工作。

在大数据产品矩阵中,我们使用数据质量监控平台来支持数据质量的监控、治理。

数据质量监控平台,主要是对Hive数仓中的库表数据的质量进行监控,包括表级别和字段级别的数据进行监控,以减少或避免由数据质量引起的事故和损失。

借助数据质量监控平台,我们通过实施下面几个关键步骤来进行数据质量的治理:

(1)配置监控规则

对高价值分的作业,我们要求强制配置基础监控规则,如:主键唯一性校验、数据非空校验;

另还可以根据业务场景需要,配置对应的业务规则监控,如:字段总值环比校验、字段极值校验等,监控平台内置了约17种字段级校验规则、5种表级校验规则,供直接配置使用;

除内置了丰富的校验规则,质量监控平台还支持SQL自定义监控规则,极大地满足各种数据监控场景。

(2)监控告警

当校验规则识别异常时,需要通知负责人进行跟进处理,质量监控平台支持以电话、邮件和短信等方式通知作业属主。作业属主收到告警后,需及时地处理和关闭告警,否则告警将一直挂在那,在后面的告警响应度中会被稽核到,上报其领导。

(3)全链路数据监控

根据作业的价值分级,针对高价值作业,开发人员可根据数据血缘,对上游作业依次配上监控,实现全链路的数据质量监控。

06  数据质量评价体系

在执行了一系列的举措来提高数据质量后,如何来验证数据质量的治理效果呢?

根据企业本身的数据特点,设计并构建了一个数据质量七维评价模型,如下图所示:

数据质量评价模型,分别从数据完整性、监控覆盖率、告警响应度、作业准确性、作业稳定性、作业时效性、作业性能分等七个维度来考量平台的数据质量,基于该模型,还设计了“数据质量分”这个指标,来直观地反映平台数据质量的建设水平及健康状况。

数据质量七维模型的评价视角及其计算口径:

1、数据完整性

 ☆  考量数据项信息是否全面、完整、无缺失

 ★  指标公式:表完整性和字段完整性的平均值

2、监控覆盖率

 ☆  确保数据遵循统一的数据标准或规范要求

 ★  指标公式:监控的高价值作业个数/高价值作业总个数

     其中,高价值作业是指作业价值分在80分以上的作业

3、告警响应度

 ☆  通过日常管理、应急响应,降低或消除问题影响,避免数据损毁、丢失

 ★  指标公式:已处理告警个数(本周)/告警总个数(本周)

4、作业准确性

 ☆  考量数据是否符合预设的质量要求,如唯一性约束、记录量校验等

 ★  指标公式:1 - 告警作业个数(本周)/监控作业总个数

5、作业稳定性

 ☆  考量作业的运行稳定性,是否经常报错,导致数据事故

 ★  指标公式:1 - 错误作业个数(本周)/作业总个数

6、作业时效性

 ☆  考量数据项信息可被获取和使用的时间是否满足预期要求

 ★  指标公式:1 - 延迟的高价值作业个数(本周)/高价值作业总个数

     其中,基准时间为作业近30天平均完成时间加30分钟,作业晚于基准即延迟

7、作业性能分

 ☆  考量作业的执行效率和健康度,诊断作业是否倾斜等性能问题

 ★  指标公式:1 -  危急作业个数(本周)/作业总个数

从各质量维度的评价视角和指标公式可以发现,虽然数据质量监控的是表及字段的质量情况,但我们的质量分是设定在库这个层级。这么设计主要是为了更好地责任划分、统筹治理。

比如在银行业,每个库都有其对应的所属分层(如明细层、汇总层、应用层等),且每个库都有对应的库负责人,所以到库这个层级,我们能更好的分而治之,由库负责人对库的质量水平负责。

基于数据质量模型,我们还配套对应的数据质量监控报告。在报告中我们不仅能看到数据平台的整体质量评分,了解质量发展趋势,更能通过多维分析、单维深钻来了解平台的质量问题根源。

多维分析:详细展示七个质量维度的评分及趋势变化,每个维度下还配有TOP榜,用来展示低质量的库排名,督促库负责人进行优化、治理;

单维深钻:每一个质量维度都能从整体下钻到具体库及表,深入了解该维度质量评分低的具体原因,以便针对性地解决问题、提高质量;

综上,就是在数据质量治理方面的一些具体实践。数据质量治理是一个长期的、持续性的工作,不可能期望一蹴而就。

在治理过程中,需要不断优化质量短板,夯实质量基石。设目标、定责任,积极配合与行动,充分利用平台工具,共同建设一个数据乌托邦,让数据价值发挥耀眼光芒。

数据质量治理仅仅是数据治理的一个小环,而企业内部的数据质量问题并非不治之症,根据行业最佳实践开展管理体系提升,配备必要的软件,总能把这个问题解决掉,所谓企业内部的数据质量问题最终会消弭于无形。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据质量评价体系参考 的相关文章

  • Mysql中关于NULL值的处理

    一 Mysql空值介绍 MySQL认为任何和NULL值做比较的表达式的值都为NULL 包括select null null和select null null 在对统计索引列不重复值的数量时如何对待NULL值 MySQL专门提供了一个inno
  • React 练习项目,仿简书博客写作平台

    Introduction 技术栈 react redux react router express Nginx 练习点 redux 连接 react router 路由跳转 scss 样式书写 容器组件与展示组件的设计 express 脚手
  • 【100%通过率 】【华为OD机试c++】人数最多的站点【2023 Q1

    华为OD机试 题目列表 2023Q1 点这里 2023华为OD机试 刷题指南 点这里 题目描述 关注公园园区提供小火车单向通行 从园区站点编号最小到最大通行如1 2 3 4 1 然后供员工在各个办公园区穿梭 通过对公司N个员工调研统计到每个
  • cloudflare解析域名+CDN

    cloudflare解析域名 CloudFlare 是一家全球知名的 CDN 服务商 并且提供了免费的 CDN 套餐 还不限流量 所以我们完全不需要花一分钱就能使用它的 CDN 服务 接下来我就说明如何注册并使用 CloudFlare 1

随机推荐

  • C/C++中的数据结构对齐,#pragma pack() 和 __attribute__

    C C 中的数据结构对齐 总览 数据结构对齐是指在计算机内存中排列和访问数据的方式 它包含三个独立但相关的问题 数据对齐 data alignment 数据结构填充 data structure padding 和打包 packing 当数
  • Servlet传送对象给Applet使用

    前日 一位朋友与我谈论Servlet与Applet共享Java对象的问题 现发表出来与大家分享 文中瑕癖 之处甚多 望各位指教 朋友谈论的需求是这样的 他想通过页面上一个Applet呼叫一个服务器Servlet 而从Servlet产生 一个
  • Anaconda3安装TensorFlow2.0.0镜像并且配置好Jupyter Notebook

    我们安装TensorFlow1 2 1但是后面又要安装Tensorflow2 0 0 那么我们就需要让Tensorflow两个版本在windows电脑下进行共存 首先 我们先下载了anacoda3和配置好了清华镜像 我们打开anaconda
  • 从零开始编译OpenWrt固件

    从零开始编译OpenWrt固件 前言 进来阅读这篇文章的相信都是对OpenWrt有一定的了解的 对于OpenWrt的介绍这里就不再赘述 可以自行查找相关百科了解 OpenWrt是适合于嵌入式设备的一个Linux发行版 可以通过其提供的相关工
  • Docker使用基础命令(记录贴)

    Docker使用基础命令 基础命令 拉取 推送镜像 docker run命令 基础操作 保存镜像并压缩 基础命令 docker images grep xxx docker ps a grep xxx 导入容器 docker load i
  • vue+antD 表格中使用input

    vue antD 表格中使用input 在这里插入代码片
  • 【编程与算法基础】数据结构——时间复杂度与空间复杂度

    文章目录 算法的时间复杂度和空间复杂度 一 前言 1 算法的效率 2 复杂度的表示方法 大O渐进表示法 3 大O渐进表示法的规则 二 时间复杂度 1 时间复杂度的概念 2 简单时间复杂度计算举例 3 复杂时间复杂度的计算举例 三 空间间复杂
  • C++实践之Qt学习(六):Qt设计器之常用控件、布局和样式

    文章目录 常用控件 按钮 普通按钮 单选按钮 多选按钮 其他的按钮 显示控件 标签 其他显示控件 输入控件 数据项控件 容器控件 布局 Qt布局介绍 设置布局的方式 样式 外部样式表 常用控件 按钮 Buttons分类中包含了Qt中常用的按
  • Appium使用教程(七)——获取appPackage和appActivity

    appPackage和appActivity 进行appium自动化测试非常重要的两个参数 我们所测试的APP不同 这两个参数肯定也是不一样的 那如何快速的获取这APP的这两个参数呢 我这里介绍五个方法 方法一 最简单有效的方法 通过cmd
  • Ubuntu 之 docker 无法下载镜像

    问题 使用 docker pull 命令拉取镜像出现如下错误 解决方案 1 在 etc docker 中创建 daemon json 文件 vim etc docker daemon json 2 写入 registry mirrors h
  • Android 夜间模式(白/夜间模式的切换)

    在项目研发中 我们避免不了需求中会应用到夜间模式 这里对它做一些总结以及封装 从API 23后 Android就有自带的api能够实现夜间模式与白天模式的切换 Support Library 23 2 应用于API14 推出了适合Andro
  • 逐点比较法实现直线圆弧插补[数控机床]

    逐点比较法实现不同象限直线 圆弧插补 一 原理介绍 1 1 简介 1 2 逐点比较法偏差计算 直线 1 2 1 第一象限逐点比较法思路 1 2 2 四象限逐点比较法实现思路 1 3 逐点比较法偏差计算 圆弧 1 3 1 第一象限逐点比较法思
  • 笔记:快速上手shell编程

    SHELL学习笔记 变量赋值 赋值 A 10 不允许 赋值时不允许在等号两侧出现空格 A 10 允许 A 10 不允许 A 10 允许 当赋值时需要填充多个空格 可以使用 环境变量 root localhost gitee echo PWD
  • tf1.x和tf2.x查看TFRecord数据的方法

    Tensorflow 1 x和Tensorflow 2 x读取tfrecord方法略有不同 下面分别记录两段代码 Tensorflow 1 x for example in tf python io tf record iterator p
  • React基础之Refs的理解与使用

    目录 为什么会用到Refs 何时使用Refs Refs有哪些使用方式 字符串形式的refs 回调形式的refs createRef的使用 为什么会用到Refs 我们在使用React写代码的时候对Refs的使用比较少 因为我们很少直接操作底层
  • 常用DOC命令

    copy con 123 bat 创建批处理 color 改变cmd颜色 ping t l 65550 ip 死亡之ping ipconfig 查看ip ipconfig release 释放ip ipconfig renew 重获ip s
  • arm下蜂鸣器测试代码

    首先还是看内核蜂鸣器的实现 如下图 这个和led一样 都是比较简单的字符驱动 代码如下 include
  • JS 触发事件整理

    一般事件 onclick IE3 N2鼠标点击时触发此事件 ondblclick IE4 N4鼠标双击时触发此事件 onmousedown IE4 N4按下鼠标时触发此事件 onmouseup IE4 N4鼠标按下后松开鼠标时触发此事件 o
  • Android 最简单的应用间跳转小结

    不明所以的图示 通过 JumpOrigin 可以打开 JumpMe 以下简结了4种方式 1 通过查找包名直接启动 APP 这种方法最直接 通过解析包名 判断该应用是否安装 如果安装了就可以直接启动 也能够传递参数 代码如下 傻瓜式打开应用
  • 数据质量评价体系参考

    数据质量人人有责 这不仅仅只是一句口号 更是数据工作者的生命线 数据质量的好坏直接决定着数据价值高低 数据质量管理是指在数据创建 加工 使用和迁移等过程中 通过开展数据质量定义 过程控制 监测 问题分析和整改 评估与考核等一系列管理活动 提