在如今火爆的数智化时代,企业都在利用大数据创新业务、获得价值;然而,数据能否更好地赋能业务,取决于企业数据质量的好坏。好的数据质量,经过数据分析、挖掘、机器学习等手段,可以更好地辅助业务决策、帮助企业降本增效;差的数据质量,从数据中获得的价值有限,甚至会误导做出错误的业务决策,从而给企业带来灾难性的后果。
那么,一个企业的数据质量如何,如何评估?常见的数据质量问题都有哪些?这些问题是什么原因造成的?
数据质量评估维度
在评价企业数据质量的好坏时,首先需要定义评估的维度,通常较为重要的数据质量维度有以下6个:
数据唯一性: 是指数据唯一,不存在重复记录。即:不会出现一物多码,一码多物的情况。例如:主键唯一性,同一个ID不会重复记录。
数据完整性: 是指数据在创建、处理流转过程中无缺失和遗漏,包括实体完整、属性完整、记录完整和字段值完整。例如:员工的工号不可为空。
数据准确性: 是指真实、准确地记录原始数据,无虚假数据及信息。数据要准确反映其所建模的"真实世界"的实体。例如:在业务系统上填写信息时,手误输错了新车类型信息,造成了数据库里存在的信息与真实世界不一样。
数据一致性: 是指数据是否遵循了统一的规范、是否符合逻辑。例如:同一车型所对应的名称在不同系统中保持一致。
数据及时性: 是指及时记录和传递相关数据,从而满足业务对信息获取的时间要求。主要指数据提取要及时、传送要及时、转换要及时、加载和展现要及时。
数据有效性: 指数据的值、格式和展现形式符合数据定义和数据业务定义的要求。例如:手机号要符合全球手机号码编码规则。
数据质量问题分析原因
从数据的整个生命周期来看,任何一环节都有可能产生数据问题。在数据的采集阶段,数据的真实性、准确性、完整性、一致性等会影响数据质量。在数据的加工、存储阶段,也涉及到对数据的修改,也可能引发数据质量问题。所以,业务、技术、管理等多方面的因素都有可能会影响到数据质量。
业务问题
业务需求不清晰 在业务需求不清晰的情况下,很容易造成由于理解偏差,最终导致结果数据有问题。
需求频繁变更 需求一旦变更,其中数据采集、数据处理、数据存储等环节就可能会受到影响,稍有不慎引入Bug,便造成数据质量问题。
数据填报缺失或不准确 业务系统侧,在数据录入时,漏填或填错信息,造成数据的质量问题。
数据作假 为了提高或降低考核指标,对一些数据进行人为造假,使得数据真实性无法保证。
技术问题 数据库结构设计问题 例如:数据库表结构、数据库约束条件、数据校验规则的设计开发不合理,造成数据录入无法校验或校验不当,引起数据重复、不完整、不准确。
数据采集问题 从业务系统采集过来的数据本身就有一些不完整、重复、不规范,如果没有清洗、及时纠错或清洗代码有Bug,就会造成有质量问题的数据进入。
数据处理问题 数据在传递、数据转换、数据存储过程中,任一环节有技术问题,都有可能造成数据质量问题。
各系统孤立开发 业务系统各自为政,孤立开发,系统之间的数据孤岛、数据不一致问题严重。
管理问题 企业管理缺乏数据思维, 没有认识到数据质量的重要性。没有进行统一数据管理,没有明确的数据质量目标,也没有制定数据质量相关的政策和制度等。
数据质量问题改进指导 正如上述所列,造成数据质量差的原因有很多;那么,面对企业数据质量差的问题,如何改进?借鉴PDCA循环(又名戴明环)进行数据质量持续改进,以达最终数据质量目标。
PDCA循环
PDCA是一套“目标管理”流程,通过规划、执行、检查、行动四阶段,确保每次的目标都能达成。PDCA循环在质量管理中得到广泛的应用。
PDCA的四个阶段: 计划 PLAN 先确定数据质量目标,可通过数据质量评估标准为当前企业数据质量进行评估,设定改进目标。 对照目标制定计划与实施方案。在制定实施方案时,每1项措施要符合5W1H,即:为什么制定该措施?达到什么目标?在何处执行?由谁负责完成?什么时间完成?怎么完成? 比如:一项措施是为企业制定并执行数据标准。
实施 DO 依据上一步计划与实施方案进行执行。 比如:制定好数据标准,推广到各部门执行。eg. 某车企会员类型(企业代码标准、2位编码):01 普通卡、02 黄金卡、03 钻石、04 超级VIP卡;车保险种类代码(外部代码标准、4位编码):10100 交强险、10200 商业车险 等等。
检查 CHECK 完成一轮的实施之后,进行检查,对比当前实际情况与预期目标的差距。
行动 ACT 对于本轮的经验和措施形成标准,标准化下来,持续运行,防止质量倒退。 对于没有达到预期效果,分析原因,制定下一步行动,继续下一轮的PDCA循环。
所有措施不可能在一个PDCA循环中全部解决,遗留的措施会自动转进下一个PDCA循环,周而复始,螺旋上升。
改进措施
有了PDCA循环的指引,透过PDCA环高效完成达到目标的所有措施,持续改进数据质量。在制定有效措施方面,始终要遵循:及时发现问题 -> 立即解决问题-> 提前预防问题;因此,归纳改进措施如下。
事前预防 提高全员数据质量意识。加强培训、Session分享、或出题考试等,通过各种手段培养员工重视数据质量,了解数据对下游所产生的影响。
制定数据规范、数据质量标准、元数据管理等。
建立自动系统,数据输入控制,防止无效或不准确数据进入系统。
制定正式的变更控制、把关过程,防止正常处理流程之外直接更改数据。
制定相关制度来避免数据问题,如:严禁无记录无跟踪人为篡改数据。
事中监控 问题发生,及时纠正,最大限度地降低纠正措施成本和风险。
构建日志管理体系,问题及时追踪处理。
构建数据异常处理机制与告警办法
创建数据质量监测平台,自动执行数据质量检查和审计过程。
问题发生,及时数据修正:程序自动修正、程序自动发现且人工修正。
建立数据质量的流程化控制体系,对数据的采集、加工、存储等环节进行流程化控制。
事后完善 问题发生解决后,要复盘,完善相应的预防措施、数据规范、数据管理制定与政策等等
定期评估度量,落实行动项,逐步提升数据质量。
写到这里,想必大家对于数据质量问题的分析与改进有了一定的认识。总之,记住下面这句话:
【首先】数据质量评估 -> 发现问题,
【其次】问题根因分析 -> 分析问题,
【最后】戴明环方法改进 -> 解决问题。
来源:https://insights.thoughtworks.cn/how-to-evaluate-improve-data-quality/