数据治理-数据质量篇

news2024/11/28 16:47:54

1、什么是数据质量

按照国际数据管理协会的《数据管理知识手册》中规定,数据质量(DQ)是“既指与数据有关的特征,也指用于衡量或改进数据质量的过程。”但要深入理解数据质量,需要切分不同层次或维度。

数据无处不在。随着数据创建的数量、来源和速度的增加,企业正在努力解决如何处理所有这些问题以及如何处理这些问题的现实。如果你的企业还没有确定使用自己的数据的最有效的方法,那么你就错过了改变你的业务并获得决定性优势的关键机会。

当然,如果没有好的数据,做你想做的事情就难多了。无论是推出新产品或新服务,还是简单地响应最大竞争对手的举动,做出明智、及时的商业决策几乎完全取决于手头数据的质量。

人们试图用这样的术语来描述数据质量完全, 准确, 可接近,和脱糊状。虽然每个词都描述了数据质量的一个特定元素,但更大的数据质量概念实际上是关于该数据是否达到了您想要用于的目的或目的。

2、数据质量评估

完整性 Completeness:完整性用于度量哪些数据丢失了或者哪些数据不可用。

规范性 Conformity:规范性用于度量哪些数据未按统一格式存储。

一致性 Consistency:一致性用于度量哪些数据的值在信息含义上是冲突的。

准确性 Accuracy:准确性用于度量哪些数据和信息是不正确的,或者数据是超期的。

唯一性 Uniqueness:唯一性用于度量哪些数据是重复数据或者数据的哪些属性是重复的。

关联性 Integration:关联性用于度量哪些关联的数据缺失或者未建立索引。

3、为什么要进行数据质量评估

很多刚入门的数据分析师,拿到数据后会立刻开始对数据进行各种探查、统计分析等,企图能立即发现数据背后隐藏的信息和知识。然而忙活了一阵才颓然发现,并不能提炼出太多有价值的信息,白白浪费了大量的时间和精力。比如和数据打交道的过程中,可能会出现以下的场景:

  • 场景一:作为分析师,要统计一下近7天用户的购买情况,结果从数仓中统计完发现,很多数据发生了重复记录,甚至有些数据统计单位不统一。

  • 场景二:业务看报表,发现某一天的成交gmv暴跌,经过排查发现,是当天的数据缺失。

造成这一情况的一个重要因素就是忽视了对数据质量的客观评估。在进行数据分析前需要注意以下两点:

  • 1、在实际工作中数据分析一定都是为具体业务服务的,只有紧密围绕业务需求的分析才是有意义的有价值的。

  • 2、通常我们进行数据分析、挖掘的目的是企图发现数据中隐藏的知识和信息,从而对实际业务或产品进行优化。如果数据集本身质量不佳,自然很难得出有用的结论,甚至可能得到错误的结果延伸到导致决策失误。

所以,进行科学、客观的数据质量评估是非常必要且十分重要的。首先可以节约大量试错的时间;其次可以降低得出错误结论的概率;还可以缩短数据反馈流程,更加及时的将数据收集过程存在的问题反馈给数据生产部门,提高协作效率。

4、方法与步骤

熟悉六西格玛管理的人应该知道,六西格玛强调以事实驱动管理。但事实是用数据说话。映射到六西格玛管理方法,MTC-DQM推荐采用十步数据质量管理方法。

  1. 定义和商定问题、时机和目标,以指导整个数据质量管理的工作。

  2. 收集、汇总、分析有关形式和信息环境。设计捕获和评估的方案。

  3. 按照数据质量维度对数据质量进行评估。

  4. 使用各种技术评估劣质数据对业务产生的影响。

  5. 确定影响数据质量的真实原因,并区分这些原因的影响的数据质量的级别。

  6. 最终确定行动的建议,为数据质量改善制定方案,包括数据级和组织级的。

  7. 建立数据错误预防方案,并改正当前数据问题。

  8. 通过改进组织管理流程,最大限度控制由管理上的缺陷造成的数据质量问题。

  9. 对数据和管理实施监控,维护已改善的效果。10.沟通贯穿管理始终,循环的评估组织管理流程,以确保数据质量改善的成果得到有效保持。

5、数据质量问题根源

做数据质量管理首先要搞清楚数据质量问题产生的原因,原因有很多方面,例如:技术、管理、处理流程、业务逻辑错误等都会碰到,但从根本上来讲数据质量问题产生的绝大多数原因在业务上。

解决数据质量问题不是简单通过一个工具就能搞定,需要从根本上认识到数据质量问题产生的真正根源,从而从业务上着手解决数据质量问题。从业务角度着手解决数据质量问题,重要的是建立一套科学、可行的数据质量评估标准和管理流程。

6、数据质量定义维度

如果从用户层级定义数据质量,就是满足特定用户预期需要的一种程度。

如果从数据本身定义数据质量,即从数据质量的指示器和参数指标等方面来衡量其优劣。

如果从数据约束关系定义数据质量,即从数据的原子性、数据的关联性及对数据的约束规则来度量数据质量。

如果从数据过程定义数据质量,需要从数据能被正确使用、存储、传输等方面定义质量。

7、为什么数据质量这么难

差一点85%的首席执行官说他们担心他们用来做决定的数据的质量。这种担忧的部分原因在于,事实证明,糟糕的数据使公司付出了更大的代价。占其年收入的25%在失去的销售,失去的生产力,或错误的决定。

显然,对于许多组织来说,实现数据质量仍然是一个挑战,但解决方案并不像它们看起来的那样虚幻。大多数企业都会遇到一些或全部直接影响数据质量的问题:

  • 孤立的数据。又称“数据筒仓”,这些独立的数据组要么属于特定的业务单元,要么包含在特定的软件中。隔离数据的问题是,组织的其他部分无法访问它,因为该软件可能与任何其他内容不兼容,或者业务单元严格控制用户权限。虽然这些数据可能提供有用的,甚至是非常有价值的洞察力,因为它不容易被访问,但是业务不能对它形成一个完整的图景,更不用说从中受益了。

  • 过时的数据。企业结构庞大而复杂,有多个团队和部门。因此,跨组织收集数据通常是一个缓慢而费力的过程。到收集所有数据时,其中一些-如果不是大多数-在相关性方面已经落后,因此大大降低了其对组织的价值。

  • 复杂的数据。数据来自许多不同的来源和不同的形式。数据来自智能手机、笔记本电脑、网站、客户服务交互、销售和营销、数据库等。它可以是结构化的,也可以是非结构化的。理解输入的数据量和数据种类,并使其标准化供每个人使用是一个资源密集型的过程,许多组织没有足够的带宽或专门知识来跟上。

8、如何实现高质量数据

和任何有价值的商业活动一样,提高数据的质量和效用是一个多步骤、多方法的过程。以下是如何:

  • 方法1:大数据脚本获取大量数据,并使用脚本语言与其他现有语言进行通信和组合,以清理和处理数据以进行分析。虽然工程师欣赏脚本的灵活性,但它确实需要对需要合成的数据类型和数据存在的特定上下文有一个重要的理解,以便知道要使用哪种脚本语言。判断和执行中的错误会打乱整个过程。

  • 方法2:传统的ETL(提取、加载、转换)工具集成了来自不同来源的数据,并将其加载到数据仓库中,然后准备进行分析。但是,通常需要一组技术熟练的内部数据科学家首先手动清除数据,以解决与源和目的地之间存在的模式和格式不兼容的问题。更不方便的是,这些工具通常是批量处理,而不是实时处理。传统的ETL需要基础设施的类型、现场的专业知识以及很少有组织愿意投资的时间承诺。

  • 方法3:开放源码工具提供数据质量服务,如解除欺骗、标准化、充实和实时清理,以及快速注册和比其他解决方案更低的成本。然而,大多数开源工具在实现任何真正的好处之前仍然需要一定程度的定制。对于服务的启动和运行,支持可能是有限的,这意味着组织必须再次依靠他们现有的IT团队来使其工作。

  • 方法4:现代数据集成通过自动集成、清理和转换数据,然后将数据存储在数据仓库或数据湖中,从而消除了传统ETL工具的手工操作。组织定义数据类型和目的地,并可以根据需要使用更新的客户详细信息、IP地理定位数据或其他信息丰富数据流。转换过程将来自所有源和各种格式的数据标准化,使其可供组织中的任何人使用。而且,由于它实时处理数据,用户可以检查数据流并纠正正在发生的任何错误。

9、一般数据质量的监控指标点

  1. 接入数据条数波动(近7天均值比较)

  2. 源系统表结构变更(表名、字段名、字段类型)

  3. 源系统表计算延迟,导致后续数据接入延迟

  4. 线上维表新增数值, 仓库未及时更新

  5. 对接入RDBMS表的主键、外键检查:是否重复

  6. 重要字段长度检查

  7. 空值检查

  8. 重要字段枚举分布检查:离散的,多数是维度字段,可以包含空值检查

  9. 值域检查:连续的,一般是事实字段,计算检查MAX MIN SUM AVG

  10. 日期合法性检查:是否有跨天日志,是否有不正常时间日志

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

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

相关文章

一种用于地灾边坡大坝安全深度位移监测测斜仪

1用途 固定测斜仪广泛适用于测量土石坝、面板坝、岩土边坡、路堤、基坑、岩石边坡等结构物的水平位移、垂直沉降及滑坡,固定测斜仪配合测斜管可反复使用,并方便实现测量数据的自动采集。 固定测斜仪采用的是耐冲击型倾斜传感器,可靠性好&am…

【可解释AI】图神经网络的可解释性方法及GNNexplainer代码示例

图神经网络的可解释性方法及GNNexplainer代码示例 GNNExplainerIntroductionModelSingle-instance explanations(Explanation via Structural Information)Joint learning of graph structural and node feature information(Explanation via…

Linux常用命令——ip6tables命令

在线Linux命令查询工具 ip6tables linux中防火墙软件 补充说明 ip6tables命令和iptables一样&#xff0c;都是linux中防火墙软件&#xff0c;不同的是ip6tables采用的TCP/ip协议为IPv6。 语法 ip6tables(选项)选项 -t<表>&#xff1a;指定要操纵的表&#xff1b; …

Code area 和Data area的区别

Code Area FLASH &#xff1a;程序在这个flash运行时&#xff0c;几乎没有延时&#xff0c; 运行速度以时钟设置为准。 Data Area FLASH&#xff1a; 程序在这段flash运行时&#xff0c;每条语句都有延时&#xff0c; 最后的速度可能是以10M为时钟&#xff08;举例&#xff09;…

webpack4和webpack5有什么区别

webpack4和webpack5有什么区别 前言一、比较二、使用步骤1.5缓存使用方法和构建速度对比2.资源模块处理3.Webpack 5 支持在请求中处理协议。4.tree-shaking。 前言 Webpack4和Webpack5是两个版本的Webpack&#xff0c;其中Webpack5是Webpack的最新版本。 一、比较 性能&#…

一、Go语言初识

在日新月异的技术进步中,我们程序设计在不断的优化,程序的编译速度,程序的设计速度,程序的可读性等都在不断的提升。在这样的时代背景下,一些技术的先驱,技术的头部公司在不断的探索,GO语言就是在这样的环境中被设计开发的。 我们技术团队也在不断的学习,不断的进步,…

golang入门记录

参考&#xff1a; https://www.runoob.com/go/go-tutorial.html https://zhuanlan.zhihu.com/p/63310903 下载安装包&#xff1a; windows:https://dl.google.com/go/go1.20.2.windows-amd64.msi 对基础设施&#xff0c;包括跨操作系统、网络、多线程&#xff0c;web、cli都比…

OpenCV EigenFaceRecognizer 人脸识别

目录 一、人脸检测vs人脸识别 二、数据库 三、准备需要识别的人脸 四、人脸识别(OpenCV) 一、人脸检测vs人脸识别 人脸检测只是需要检测图像中是否有人脸&#xff0c;而人脸识别是一个程序能够识别出给定图像或者视频中的人脸。 二、数据库 人脸数据库&#xff0c;这个博客…

大数据之Hadoop分布式数据仓库HBase

目录&#xff1a; 一、Hadoop的局限二、HBase简介三、HBase Table四、数据的读写流程简述五、HBase Java API 1.0 的基本使用六、HBase Java API 2.0 的基本使用七、正确连接Hbase八、Hbase 常用 Shell 命令九、Hbase容灾与备份十、引入Phoenix core JAR包&#xff08;HBase中间…

好用免费的电脑摄像头录视频软件分享!

案例&#xff1a;如何录制电脑的摄像头&#xff1f; 【这周我需要开一个视频会议&#xff0c;会议十分重要&#xff0c;我希望把它录制下来。有没有小伙伴知道&#xff0c;电脑摄像头如何录制&#xff1f;求一个可以快速上手的方法&#xff01;】 在现如今的数字化时代&#…

计算机网络学习03(OSI、TCP/IP网络分层模型详解))

1、OSI 七层模型 OSI 七层模型 是国际标准化组织提出一个网络分层模型&#xff0c;其大体结构以及每一层提供的功能如下图所示&#xff1a; 每一层都专注做一件事情&#xff0c;并且每一层都需要使用下一层提供的功能比如传输层需要使用网络层提供的路由和寻址功能&#xff0…

【小程序】图文教程:完整说明如何把小程序代码提交到gitee上

目录 建项目本地打开配置远程分支发布到远程分支检验后续提交 建项目 注*&#xff1a;会在gitee上建项目的可以略过 进入到gitee官网&#xff0c;点击右侧的&#xff0c;创建新项目 进入到该页面&#xff1a; 填好之后&#xff0c;点击创建 进入下面页面&#xff0c;点击初…

用GPT 从0搭建 Jest 到帮写测试用例

本文作者为 360 数据平台部前端开发工程师 为什么要用AI写单测 这个问题分两点来说&#xff0c;第一是为什么要写单测&#xff0c;第二是为什么要用AI。 先来说为什么写单测&#xff0c;这很简单&#xff0c;我们项目或者说我们前端团队有公共模块&#xff0c;包含有组件类型、…

ipv6地址技术详解

一、什么是IPv6&#xff1f; IPv6是英文“Internet Protocol Version 6”&#xff08;互联网协议第6版&#xff09;的缩写&#xff0c;是互联网工程任务组&#xff08;IETF&#xff09;设计的用于替代IPv4的下一代IP协议&#xff0c;其地址数量号称可以为全世界的每一粒沙子编…

你可能需要的IDEA-Java开发插件

Idea开发插件 Alibaba Cloud AI Coding Assistant 阿里云智能编码插件&#xff08;Alibaba Cloud AI Coding Assistant&#xff09;是一款AI编程助手&#xff0c;它提供代码智能补全和代码示例搜索能力&#xff0c;帮助你更快更高效地写出高质量代码。 让我觉得比较有意思的…

Docker安装在Linux系统上(纯步骤)

Docker安装在Linux系统上操作步骤 本文章只有操作步骤&#xff0c;没有原理解释&#xff0c;只是用来提醒自己安装步骤 下面是docker官网&#xff0c;也有安装详情 https://docs.docker.com/engine/install/centos/ 安装分为四步走 我使用的是CentOS7版本&#xff0c;下面命令…

Linux基本权限

文章目录 前言一、Shell命令以及运行原理1.Shell的定义2.为什么用户不能直接使用kernel&#xff1f; 二、Linux中的权限1.权限是什么&#xff1f;2.如何操作权限呢&#xff1f;&#xff08;怎么修改权限&#xff09;1. 修改文件属性2. 修改文件角色 3.为什么要有权限 三、粘滞位…

直接插入排序(Straight Insertion Sort)

本文已收录于专栏 《算法合集》 一、简单释义 1、算法概念 对插入第i个记录时&#xff0c;R1、R2、…、Ri-1均已排好顺序。因此&#xff0c;将第i个记录Ri-1、…、R2、R1进行比较&#xff0c;找到合适的位置插入&#xff0c;他简单明了但是速度很慢。 2、算法目的 把无序数组通…

windows下免费本地部署类ChatGpt的国产ChatGLM-6B

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型&#xff0c;基于 General Language Model (GLM) 架构&#xff0c;具有 62 亿参数。结合模型量化技术&#xff0c;用户可以在消费级的显卡上进行本地部署&#xff08;INT4 量化级别下最低只需 6GB 显存&#xff09;。 Chat…

禁止右键禁止复制禁止选择网页内容的CSS和JS代码(支持PC和移动端)

禁止右键禁止复制禁止选择网页内容的CSS和JS代码&#xff08;支持PC和移动端&#xff09;&#xff0c;收藏吧&#xff0c;用得上。 body {-moz-user-select: none;/* Firefox私有属性 */-webkit-user-select: none;/* WebKit内核私有属性 */-ms-user-select: none;/* IE私有属…