知识目标
1)了解数据质量的概念、重要性、质量评价方式
2)熟悉数据质量的分析方法,掌握业务、技术、管理等几个维度
3)掌握数据质量管理的方法论体系
4)掌握数据质量事前、事中、事后控制策略及控制流程
数据质量的基本概念
数据是对现实世界的反应,数据质量指的是数据在多大程度上反应了真实世界。一般来说,如果数据代表的意义和目的不一致,数据就有质量问题。
数据质量管理的定义:数据从计划,获取,存储,共享维护应用以及它的整个生命周期的每个阶段里都可能引发的数据质量问题进行一些识别、度量、监控、预警等一系列的活动,并通过改善和提高组织的管理水平是数据质量得到一定的提升,数据管理的最终目标是通过可靠的数据,提升数据在使用中的价值,并最终为我们的企业赢得更多经济效益。
数据治理管理不单纯是一个概念,也不是一种技术,也不是一个系统,更不是一个简单的管理流程。是一个集方法论、技术、业务、管理为一体的解决方案。通过这种有效的数据质量控制方案进行数据的有效管理和控制,消除数据治理问题进而提升数据变现的能力。在数据质量质量的过程中,一切业务、技术、管理手段都围绕着这个目标进行开展的。
数据质量的评价维度
数据质量的六大核心要素:完整性、唯一性、一致性、准确性、有效性、及时性
完整性
衡量所必须的数据的完整程度
数据完整性问题包括:
模型涉及不完整,例如:唯一约束不完整、参照不完整(唯一约束、主键完整);
数据条目不完整,例如:数据记录丢失或不可用;
数据属性不完整,例如:数据属性空置。不完整的数据所能借鉴价值会大大降低,也是数据质量问题最为基础和常见的一类问题。
唯一性
针对某个数据项或某组数据,没有重复的数据值
重复冗余的数据情况,会导致业务无法协调,流程无法追溯。
一致性
数据元素的类型和含义必须一致和清晰
多源的数据模型不一致,例如:命名不一致、数据结构不一致、约束规则不一致。
数据实体不一致,例如:数据编码不一致、命名及含义不一致、分类层次不一致、生命周期不一致等。(比如性别在表中定义不能有的定义<F,M>,有的定义<Female,Man>,这就是编码不一致)
相同的数据有多个副本的情况下的数据不一致、数据内容冲突的问题。
准确性(可靠性)
保证数据必须反应真实的业务内容
数据不能有错误的情况,比如工资收入必能出错
有效性(规范性)
对于数据的值、格式要求符合数据定义或业务定义的要求
数据要服从业务属性(格式化、类型、范围)
及时性
针对用户对信息获取的时间及时性要求,确保数据及时更新
4、5、6 三条数据可能是同一个人的不同历史时期数据(4改姓的可能性不大,5、6有可能是历史数据)
举例另一个场景:公司领导层面每天早上都需要看一些有价值的日报,这时候就要求领导看日报时候要能及时反映对应时间段的有效数据
数据质量问题的来源
技术方面来源
技术方面包含:数据采集、数据存储、数据集成、数据分析
数据质量问题不是一个点的问题,而是一个整套架构流程中都可能存在的问题,比如从数据采集、数据储存、数据集成、数据分析等过程,每个过程都可能差生数据质量问题,有可能在某部做了一定的数据操作或数据质量控制工作,但也不能保证后续流程不引入新的质量问题。
采集问题
1 采集标准缺失,或执行标准不到位
例如:注册表没有进行数据格式约束,或出现拼写错误或漏填的情况
问题:规范性、准确性、完整性
2数据源问题
例如:爬取到的网页数据,下载或购买得到的数据集
问题:完整性,准确性,时效性
3 软件、硬件、网络故障问题
例如:机器传感器故障,流式计算网络延迟
问题:完整性,时效性
数据存储问题
1 元数据管理水平低下
例如:血缘关系不明确(表之间、属性之间),属性的含义不明确
问题:准确性
2 漏洞百出的数据模型
例如:缺失主键、时间戳等
问题:唯一性,时效性
3 软件、硬件、网络问题
例如:千禧年问题,自然灾害,双11活动,网络故障导致副本备份不一致
问题:准确性,完整性
数据集成问题
1 源数据性质不同或者处理不当
例如:同义不同名、同名不同义、数据截断/删失等
数据删失(data censoring)是一种选择偏倚,指的是故意或无意将特定数据从最终分析中剔除,这可能会导致不准确和误导性的结果。
问题:规范性,准确性
2 业务流程中装载规则设置错误
例如:覆盖(Insert Overwrite) VS 新增(Insert Into)
问题: 唯一性和完整性
3 社会学因素
例如:企业内部哥哥集团或部门之间的数据孤岛(数据的有意识私藏保密等因素)
问题:完整性
数据分析问题
1 没有及时探查数据
例如:Join时,没有发现笛卡尔积,聚合后得到错误结果
问题:唯一性,准确性
2 处理手法有误
例如:没有使用合理抽样方法,造成分析结果偏差
问题:完整性,准确性
其它方面
业务方面:
规范化的业务流程是保证数据质量管理有条不紊的进行
1) 业务需求不明确
2) 需求频繁变更
3) 数据输入不规范
可枚举的,尽可能已选择项方式提供输入
4) 业务数据做假
管理方面:
完善的管理机制是保证数据质量控制的关键
1) 缺乏数据思维
重系统以为系统是万能的、忽视数据质量的重要性
2) 缺乏认责机制
没有明确的数据归口部门和明确的相关岗位,没人监管对应的数据质量,出现数据质量后找不到负责人的情况
3) 缺乏明确目标
缺乏数据规划,没有一个明确的数据质量目标,数据质量控制不是一次性的一边建设一边忘记的活动,进行数据质量整体规划制定相对明晰的目标或实施路线,对整个业务需要持续监测和管理的行为
4) 缺乏统一管理机制
没有制定数据管理的相关政策和制度,跨部门的数据质量领导小组,包括数据中台,数据仓库管理,生产系统管理以及相关的业务部门等等都要有与之对应的数据质量管理的岗位
5) 缺乏统一数据规范
比如输入规范不一致,不同的部门不同的时间处理相同业务时输入规范不一致导致数据冲突。
6) 缺乏质量控制措施
由于缺乏数据问题有效的处理机制,数据质量问题从发现,指派,处理到最后的解决优化没有一个统一的流程和制度支撑,面对数据质量问题无法产生闭环操作。
7) 缺乏问题管理制度
缺乏有效的问题管控机制,对数据质量的检查,包括历史数据的检查,新增数据的检查和校验都没有明确的控制策略,就会出现整个数据质量无法考核的情况。
数据质量问题的控制
3.1 数据质量问题控制策略
数据质量控制策略应该形成数据质量的事前预防机制、事中过程控制和事后监督控制,进行数据质量闭环管理
事前:预防为主
事先预防控制最有效的方法是找出发生数据质量问题的根本原因并采取相关的策略进行解决
主要方法:
确定根本原因
实施改进方案
主要手段:
建立数据标准化模型(对每个数据元素的业务描述、数据结构、业务规则、采集规则等等进行清晰的定义,有了清晰的定义后就通过元数据进行管理是数据可以被理解使用,以提高数据价值)
构建数据分类和编码体系(形成企业级的数据资源目录,在使用的时候就能清晰查找数据)
事中:过程控制
强化源头数据质量:可以通过自动化校验或人工干预审核的方式进行管理,采用流程驱动的方式
控制过程数据质量:唯一性或及时性等等方面控制,入库是否及时,是否满足主外键要求,枚举字段是否正确等
数据预警机制:数据质量边界模糊的数据采用数据质量预警机制,就是对数据相似性和关联性指标的进行控制的一种方法,针对待管理的数据元素配置数据相似性算法或者数据关联性算法在数据新增变更,处理应用环节调用预先配置的数据质量的算法进行相似度和关联性分析,给出数据分析的结果来保障事中的质量控制
事后:监督机制
质量规则:对数据项配置响应的数据质量指标,进行比如包括:数据唯一性、准确性、完整性、一致性关联性、及时性等方面的数据治理的规则配置。
质量检验:对于配置好的数据规则,定义数据源检查任务,可研设置手动执行或定期自动执行的系统任务,通过执行检查任务对数据进行检查,形成数据质量问题清单。
数据质量告警:根据质量检查质量问题清单进行数据告警
分析报告:根据质量检验的问题质量清单生成分析报告
流程优化:根据数据质量分析报告、指定数据质量控制改进方案。
监控过程里面可以进行评估和考核工作,定期对系统开展全面的评估:问题率、解决率、解决时效等方面建立评价指标,进行整改评估。根据整改优化的结果进行适当的绩效考核。最终在数据质量监控的过程中反复优化监控质量的步骤
解决和改进质量问题的主要步骤
数据质量控制式以源数据为基础对数据进行优化的一个循环的过程,数据质量几个节点。重点式业务需求,将业务需求满足为数据需求,确认整个数据加工逻辑然后评估
3.2 数据质量问题控制流程
对数据进行探查剖析,对数据质量从各个维度有一个总体上的了解,然后根据项目和业务的具体情况决定是否做一些数据预处理操作,数据做出预处理操作之后会再次去探查数据质量,评估数据是否达到了一个预期的标准,如果未达到重新再做预处理操作,如果未达标再修改预处理,再评估这样一个循环往复的过程。
数据剖析
定义:就是对数据内容进行系统化的探查、统计和记录
内容:
结构刨析:表和表之间、列和列之间的依赖关系,数据粒度,数据精度,业务规则等。
列属性剖析:列类型,列长度,重复记录,列值域,列默认值,列有效性等
作用:
描述了数据的结构、内容、规则和关系的概况,获得对数据和环境的了解,式变被动为主动地改善数据质量的第一步。
数据剖析的两个主要动作:原因探查、统计记录
原因探查:
统计记录
质量评估
数据预处理
分数据清洗和数据加工两方面的工作
数据清晰
1 规范性问题
2 唯一性问题
3 准确性问题
4 时效性问题
数据质量的长期保持
数据治理控制最佳实践
数据质量分析
管理稽核点
稽核点及稽核指标