数据质量管理深入浅出

news2024/11/8 9:16:23

质量是生活中最常关注的话题,我们都期望享用高质量的商品与服务,且企业也不断加大质量管理的投入,为了更好的用户体验。

在企业数字化转型浪潮下,传统手段已无法应对数字化转型中的数据质量管理需求,我们需要探索出一条数据独有的质量管理体系应对新的需求。

本篇文章以数据质量管理为目标,探究数据质量背后的逻辑,并通过管理与技术手段进行落地。

一、概述

1、数据质量

数据质量就是通过一组维度来评价数据的方式,如同判断商品的好坏一样,数据也有评价标准。

数据是对现实世界的反映,如果当前数据代表的意义与现实世界不符,则认为数据出了质量问题。

2、质量问题原因

追根溯源,导致数据出现质量问题的原因有很多,总的来看,主要有业务、技术、管理、基础设施四个方面:

  • 业务端: 业务源系统变更(源系统数据库表结构变更、源系统环境变更)、业务端数据输入不规范等;
  • 技术端: 数据开发任务中各种任务的流程、参数、配置等出错;
  • 管理端 : 认知层面缺乏质量意识、缺乏有效的数据质量问题处理机制等;
  • 基础设施: 物理资源不足、基础设施不稳定等。

3、数据质量评判标准

  • 准确性:
    数据描述的信息与客观现实是否相符,准确性是数据质量中最重要的评价标准。
  • 完整性:
    当前数据是否存在丢失、关键字段为空、或者不可用的情况,主要包括:实体完整、属性完整、记录完整和字段值完整。
  • 一致性:
    多源数据是否遵循了统一的规范,数据集合是否保持了统一的格式。
  • 规范性:
    数据是否遵循预定的语法规则并符合其定义,例如数据的类型、长度、格式、取值范围等。
  • 唯一性:
    当前数据是否有重复,是否存在唯一标识保证数据的唯一性,包括:主键唯一,实体唯一,事件唯一
  • 及时性:
    数据从产生到可以查看的时间间隔。数据分析对于及时性要求不高,但如果数据分析周期过长,可能导致分析结论失去借鉴意义。

图:数据质量评价标准

4、数据质量管理

数据质量管理(Data Quality Management),是指对数据生命周期的每个阶段可能引发的数据质量问题,进行识别、度量、监控、预警等一系列管理活动,并通过改善和提高组织的管理水平使得数据质量获得进一步提高。

通俗点说就是:能够确保数据质量的管理活动,我们称其为数据质量管理。

二:意义

下图即可说明:

图:数据质量是统计的生命

三:当前痛点

1、决策导向不可控(重中之重)

目前国内企业掀起了一波数字化转型的浪潮,数据作为生产要素的价值也愈发凸显出来。依赖错误的数据做出的决策,必然会将企业导向错误的方向。在此背景下,数据质量被越来越多的企业管理者重视。

2、数据使用成本高

数据质量较低,导致在数据使用过程中,开发人员需要反复对数据进行校准(准确性)、补全(完整性)、校对(一致性)、转义(规范性)、去重(唯一性)等操作,确保结果真实可用。数据使用成本激增。

3、故障恢复成本高

数据质量导致的问题,最后都会反馈到员工以及用户之中,到时无论是排错,修复,决策调整,都会占用开发-业务-管理人员大量的时间精力,增加人力成本开支。

四:主要目标

1、成本可控

高质量的数据在开发时可以省去数据清洗与预处理的成本,提高开发效率并大幅降低故障率,从而节省出大量的开发与使用成本,减少故障恢复的投入。

2、结果可靠

高质量的数据产出可靠的统计结果与报表。

3、协作高效

依据可靠的结果进行协作,降低了校对以及沟通成本,提高协作效率。

五:数据质量管理落地实施

1、痛点为导向

首先需要明确一点,数据质量在绝大多数的数据平台建设中,都不会作为前期建设的主要重点。

数据质量的建设一般不会以需求为导向,即在平台建设过程中就规划相关内容并进行开发迭代,平台建设的前期一般以业务产出为主。

平台建设完成后,数据质量相关痛点愈发凸显,导致平台遭受质疑,数据使用成本升高,此时数据质量才会被重点关注,并投入大量精力去进行整改优化。

2、事前规范

规范制定
在数据流程正常运行的前提下,大部分数据质量问题均是因为没有遵循开发规范导致。我们可以根据数据质量特性制定相关开发规范并在事前进行遵守。

  • 数据模型规范:
    数据结构清晰、分层明确-层级依赖、高内聚-低耦合-可扩展、规范化-反规范化等。
  • 元数据规范:
    字段描述、字段类型-长度-取值范围、枚举范围、主键唯一等。
  • 命名规范:
    表、字段名称,项目名称,文件名称、函数名称、编码规范等。
  • 安全规范:
    隐私字段脱敏、权限层级管控等。
  • 上线规范:
    唯一性校验、试运行正常、数据条数校验、NULL 值校验等。

规范核验
针对已经制定的开发规范,需要采取自动化或人工手段进行规范校验,并提醒相关责任人进行整改,否则规范只是流于表面。

3、事中监控(数据质量监控系统)

图:数据质量监控系统

数据质量的落地实施,最核心还是需要通过数据质量监控系统,通过自动化的质量检核方式,极大的减少人力的投入和过程干预,提升效率,减少误差。围绕完备性、真实性性、一致性、及时性等指标监控分析数据质量问题并进行整改优化。

监控规则制定
引用系统定义的校验规则对系统表、字段进行多角度的数据质量监控,对系统关键业务数据的质量情况进行全方位把握,监控规则分为字段级与表级监控,具体包含以下几种:

  • 唯一值监控: 监控某个字段值是否唯一,例如 ID,如果唯一值字段出现重复数据,则代表数据质量异常。
  • 空值监控: 某个字段必须有值,例如付款记录中的金额。此规则监控此类字段是否为空,为空则判断异常。
  • 指标波动监控: 某个指标例如 GMV,如果当天指标比昨天暴涨 10 倍,大概率为异常。
  • 取值范围监控: 例如年龄字段,值是否超过常规范围。枚举字段,值是否超过定义范围。
  • 记录数量波动监控: 如果当前表日均增加 1W 条记录,某天新增超过 2W 条,大概率出现异常。
  • 数据规范校验: 字段格式规范(例如时间字段是否按照指定格式),

监控异常告警
对上述监控规则中,出现异常的任务进行告警至责任人。包括但不限于:微信、钉钉、飞书、邮件、短信、手机等方式。

异常修复及记录
责任人接收到异常告警后,及时对数据任务进行排查以及修复,同时对当前异常进行记录用于后续整改。

4、事后改进

事实上,再严格的预防措施和监控都无法完全避免数据质量问题的发生,事后的管理和评估就尤为重要了。

要想真正解决数据质量问题,就要明确业务需求并从需求开始控制数据质量,并建立数据质量管理机制。

从业务出发做问题定义,由工具自动、及时发现问题,明确问题责任人,通过邮件、短信等方式进行通知,保证问题及时通知到责任人。跟踪问题整改进度,保证数据质量问题全过程的管理。

六:评价体系

在公司实施了一系列的数据质量管理策略之后,我们如何评价是否有效,可以从以下几点:

  1. 数据完整性
    ☆ 考量数据项信息是否全面、完整、无缺失
    ★ 指标公式:表完整性和字段完整性的平均值

  2. 监控覆盖率
    ☆ 确保数据遵循统一的数据标准或规范要求
    ★ 指标公式:已监控作业个数/作业总个数

  3. 告警响应度
    ☆ 通过日常管理、应急响应,降低或消除问题影响,避免数据损毁、丢失
    ★ 指标公式:已处理告警个数(本周)/告警总个数(本周)

  4. 作业准确性
    ☆ 考量数据是否符合预设的质量要求,如唯一性约束、记录量校验等
    ★ 指标公式:1 - 告警作业个数(本周)/监控作业总个数

  5. 作业稳定性
    ☆ 考量作业的运行稳定性,是否经常报错,导致数据事故
    ★ 指标公式:1 - 错误作业个数(本周)/作业总个数

  6. 作业时效性
    ☆ 考量数据项信息可被获取和使用的时间是否满足预期要求
    ★ 指标公式:延迟的高价值作业个数/高价值作业总个数

  7. 作业性能分
    ☆ 考量作业的执行效率和健康度,诊断作业是否倾斜等性能问题
    ★ 指标公式:1 - 危急作业个数(本周)/作业总个数

    图:数据质量管理评价

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/185602.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

千万级数据,如何做性能优化?分库分表、Oracle分区表?

目录一、Oracle是如何存储数据的?1、逻辑存储与物理存储2、进一步分析它们之间的关系3、Oracle逻辑数据块(1)块头(2)行数据(3)可用空间(4)致块头增长的原因有&#xff1a…

关于我给dumi2.0提pr的完整记

前言 博主最近一年时间在工作业余都在写开源组件库 concis ,其中文档站点生成框架采取了 dumi,前几天不久dumi2.0正式发布,博主也是顺势而为直接把项目升级(dumi1 -> dumi2) 由于dumi2 的站点设计比原来好看太多了…

备忘:收藏栏式的主页

作为从DOS时代过来的骨灰,早期的 Window 出于各种原因需要重装,而重装之后IE的收藏夹全丢了(不可能每次重装之前备份了收藏夹)。所以编程把收藏夹提取出来(当时就是目录结构下的 .lnk 文本内容)转为 myfav.html 作为主页,(不备份目录是为了)方…

eclipse快捷键

Eclipse常用快捷键1几个最重要的快捷键代码助手:CtrlSpace(简体中文操作系统是Alt/)快速修正:Ctrl1单词补全:Alt/打开外部Java文档:ShiftF2显示搜索对话框:CtrlH快速Outline:CtrlO打开资源&…

python时间-time模块

time是python自带的模块,用于处理时间问题,提供了一系列的操作时间的函数。 以下说明针对于 python2.7,其他版本可能有所差异。 模块提供了两个种表示时间的格式: 1.时间戳,是以秒表示从“新纪元”到现在的时间&#x…

代码随想录训练营第16天|104.二叉树的最大深度 559.n叉树的最大深度 ● 111.二叉树的最小深度 ● 222.完全二叉树的节点个数

104 二叉树的最大深度 看完题后的思路 后续遍历 深度 f(root)终止条件 rootnull return 0递归 if rootnullreturn 0; leftf(root.left); rightf(root.right); return max(left,right)1;思路 节点深度: 该节点到根节点的节点数,某个节点的深度一次就能求出来 节点高度:该节点…

爱因斯坦求和约定:torch/np.enisum

结论:爱因斯坦求和约定就是用来省略求和符号的;所以它的本质是求和运算,它并不能决定具体的运算到底是矩阵乘法,还是内积外积之类的,它所涉及的所谓的矩阵乘法之类的,其实是人为定义的,和它自身…

Java 并发编程(Ⅰ)

目录1. 概念1. 基本概念2. 线程的状态2. 线程的初始化1. new Thread()2. new Thread(new Runnable())3. Thread 和 Runnable 的关系4. new Thread(new FutureTask(new Callable()))3. 常用方法1. start1. 线程组2. start 和 run2. sleep1. TimeUtil2. InterruptedException3. s…

DCMM数据管理能力成熟度认证详解

第一部分:评估基础篇 First part DCMM定义 DCMM是《数据管理能力成熟度评估模型》GB/T 36073-2018国家标准,英文简称:(Data management Capability Maturity Model)。是我国首个数据管理领域正式发布的国家标准。旨在帮…

【ZooKeeper】

1.ZooKeeper是什么? 答: ZooKeeper是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户…

100 家企业软件测试笔试面试题汇总(网友真实面试后征集)

目录 一、中科软 二、AURALOG 笔试面试(外企) 三、GWebs 公司笔试题 四、北京麒麟网信息技术有限公司笔试题 五、施惠特 六、总结 一、中科软 笔试题 1.谈谈你对测试的理解2.你三年的职业规划3.你对加班的看法?是否可以加班?4.你心…

推荐系统遇上深度学习(一四二)-[微软复旦]CTR预估中的对比学习框架CL4CTR

今天分享的论文为《CL4CTR: A Contrastive Learning Framework for CTR Prediction》,从特征表示角度入手,将多种对比学习损失引入到CTR预估的模型训练中,一起来看一下。1、背景主流的CTR预估模型大致可以分为两类,一类是传统的模…

【软件测试】遇到新产品的测试就懵了?这三部曲带你轻松快速上手新业务......

目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 初入一家公司&#…

FreeRTOS互斥量的实验

互斥量又称互斥信号量(本质是信号量),是一种特殊的二值信号量,它和 信号量不同的是,它支持互斥量所有权、递归访问以及防止优先级翻转的特性, 用于实现对临界资源的独占式处理。本章要实现的功能是&#xf…

算法训练营 day24 回溯算法 回溯算法理论基础 组合

算法训练营 day24 回溯算法 回溯算法理论基础 组合 回溯算法理论基础 回溯法也可以叫做回溯搜索法,它是一种搜索的方式。 虽然回溯法很难,很不好理解,但是回溯法并不是什么高效的算法。 因为回溯的本质是穷举,穷举所有可能&am…

钉钉微应用 - - - - 如何本地开发调试?

钉钉微应用 - 本地开发调试1. 安装DingTalk-Design-CLI2. 初始化代码模版3. 启动开发、调试功能4. 遇到的问题4.1 对应企业没有xxx域名微应用??4.2 history、location的表现异常??4.3 本地已经存在了H5微应用,也想使用…

软件体系结构与架构技术知识点万字总结

文章目录页面技术一、Spring框架1. 三层体系架构2. Spring的核心3. Spring 的Bean中主要的装配方式(1)基于XML的装配:(2)基于Annotation的装配:(3)自动装配:4. Spring框架…

Linux 中启用 SSH 密码登录

Linux 中启用 SSH 密码登录 文章目录Linux 中启用 SSH 密码登录1、更改配置文件2、设置登录密码3、完成1、更改配置文件 首先使用 管理员 权限打开/etc/ssh/sshd_config文件。 sudo vi /etc/ssh/sshd_config找到 PasswordAuthentication 选项,耐心查找。 当然&am…

23种设计模式之十一种行为型模式

23种设计模式之十一种行为型模式1. 设计模式概述1.1 什么是设计模式1.2 设计模式的好处2. 设计原则分类3. 详解3.1 单一职责原则3.2 开闭原则3.3 里氏代换原则3.4 依赖倒转原则3.5 接口隔离原则3.6 合成复用原则3.7 迪米特法则4. Awakening1. 设计模式概述 我们的软件开发技术也…

车道线检测源码详解

源码链接见文末 1.车道数据与标签下载 数据下载地址:因为数据的规模比较大,源码中只包含了部分数据,能够供运行代码使用 CULane:https://xingangpan.github.io/projects/CULane.html tusimple:https://github.com/TuSimple/tusimple-benchmark/issues/3 2.项目环境配置 …