武汉的开发者们注意啦!AI技术战略、框架以及最佳实战尽在Azure OpenAI Day 了解详情
写点什么

数据质量问题是“技术”问题还是“业务”问题?

  • 2020-06-12
  • 本文字数:3295 字

    阅读完需:约 11 分钟

数据质量问题是“技术”问题还是“业务”问题?


是不是感觉漫画中的场景很熟悉?没错,这种场景几乎每天都在企业中重复上演。

一、数据质量问题的危害

当前越来越多的企业认识到了数据的重要性,数据仓库、大数据平台的建设如雨后春笋。但 数据是一把双刃剑,它能给企业带来业务价值的同时也是组织最大的风险来源。糟糕的数据质量常常意味着糟糕的业务决策,将直接导致数据统计分析不准确、监管业务难、高层领导难以决策等问题,据 IBM 统计:


  • 错误或不完整数据导致 BI 和 CRM 系统不能正常发挥优势甚至失效

  • 数据分析员每天有 30%的时间浪费在了辨别数据是否是“坏数据”上

  • 低劣的数据质量严重降低了全球企业的年收入


可见数据质量问题已经严重影响了企业业务的正常运营,我着手数据质量项目近十年了,在实践中收获了一些经验。以下我将从数据质量问题的来源、责任主体等方面着手分析,并给出解决数据质量问题的策略,希望能给大家带来帮助。

二、数据质量问题来源

现在的数据集成融合就和古人筑堤坝一样,古人筑堤坝是为约束河水,扩展人类的生存空间;今人做数据集成融合,是为了挖掘数据价值,拓展企业的生存空间。那我们就在这个比喻的前提下,分析下数据质量问题的来源。


西汉的贾让在著名的治河文献《治河策》中提出了治理河水的策略,他认为在没有修筑大堤前,黄河“左右游荡,宽缓而不迫”,后来筑堤后,河道变窄,发生洪水时泄流不畅,常决口为患。


在企业信息化初期,各类业务系统恣意生长,这个阶段就像没有修筑大堤前的黄河,河水虽然漫流,但是河道宽阔,虽然也有数据问题,但不明显。


后来业务需求增长,需要按照统一的架构和标准把各类数据集成起来,这个阶段就像筑堤束水之后的黄河,泄流不畅、决口不断等问题纷纷出现,数据不一致、不完整、不准确等各种问题扑面而来。



费了九牛二虎之力才把数据融合起来,如果因为数据质量不高而无法完成数据价值的挖掘,那就太可惜了!大数据时代数据集成融合的需求会愈加迫切,不仅要融合企业内部数据,也要融合外部(互联网等)数据。如果没有对数据质量问题建立相应的管理策略和技术工具,那么数据质量问题的危害会更加严重

三、数据质量问题责任主体

人们在解决问题之前,往往会先分析出问题的责任主体,很多人可能在纠结,数据质量问题究竟“业务”的问题还是“技术”的问题?根据我以往的经验,造成数据质量问题的原因主要分以下几种:


1、数据来源渠道多,责任不明确。


2、业务需求不清晰,数据填报缺失。


3、ETL 处理过程中,业务部门变更代码导致数据加工出错,影响报表的生成。


我们发现 1 和 2 都是业务的问题,3 虽然表面看是技术的问题,但本质上还是业务的问题。因此大部分数据质量问题主要还是来自于业务。我在和很多企业做数据治理技术交流的时候,发现很多企业认识不到数据质量问题的根本原因,只从技术单方面来解决数据问题,没有形成以管理机制,导致效果大打折扣。现在走过弯路之后,很多企业认识到了这一点,开始 从业务着手解决数据质量问题了

四、解决数据质量问题,应该用“堵”还是用“疏”

弄清楚了数据质量问题来源、责任主体后,接下来就应该考虑如何解决。还以古人治理黄河水患为例来说明。


《治河策》中提出了治理水患的三种策略:“徙冀州之民当水冲者”为上策,主张不与水争地,能使黄河“宽缓而不迫”。中策是“多穿漕渠于冀州地,使民得以溉田,分杀水怒”,简单说就是分流,是上策的具体措施。下策是“缮完故堤,增卑培薄”,之所以是归为下策,是因为原来的堤防堤距过于狭窄,且堤线弯曲多变,再这样的基础上,无论怎么加高增厚,洪水问题也无法得到根本解决。



归纳总结下古人治理黄河水患,主要有两种套路,一种是“疏通”,上策迁移民众和中策分流黄河水患,都是具体体现;另一种是“围堵”,加高增厚堤防,抑制河水泛滥。



在治理数据质量的问题时,也可以应用下古人的智慧和考量。采用规划顶层设计,制定统一数据架构、数据标准,设计数据质量的管理机制,建立相应的组织架构和管理制度,采用分类处理的方式持续提升数据质量,这是数据质量管理 “疏”的方式。而单纯依赖技术手段,通过增加 ETL 数据清洗处理逻辑的复杂度,使用数据质量工具来发现 ETL 数据处理中的问题属于 “堵”的方式,只能解决表面的问题,不是根本的解决方法。这种方式其实也在好多企业中使用,其根本目的在于提高 ETL 处理的准确度,做法无可厚非,毕竟需求的出发点不一样,面临的现状也不一样。


按照我之前在多个行业实施数据质量管理项目的经验,数据质量管理的最佳实践是采用“疏”和“堵”相结合的方式,通过这种方式解决数据质量问题有几个要点:



1、定义业务问题、规划顶层设计


在解决数据质量问题之前需要定义清楚业务问题。是以提高主数据的质量为目标、以整改 BI 数据问题为目标,还是以满足风险管理、监管报送要求为目标。


在业务问题定义清楚之后,需要以业务问题为出发点,做顶层设计。设计好某业务主题的标准,以标准作为数据质量校验规则的准绳。数据标准的制定不在本文的讨论范围,这里就不在展开说了。这个是“疏”的最高境界,往往耗费的成本也比较高。


2、建立数据质量闭环管理机制


从问题定义、问题发现、问题整改、问题跟踪、效果评估 5 个方面建立相应的管理及认责机制。从业务出发做问题定义,由工具自动、及时发现问题,明确问题责任人,通过邮件、短信等方式进行通知,保证问题及时通知到责任人。跟踪问题整改进度,建立相应的质量问题评估 KPI。保证数据质量问题全过程的管理。


3、对不同数据的数据问题分类处理


在时间维度上分,企业数据主要有三类:未来数据、当前数据、历史数据。在解决不同种类的数据质量问题时,也要采取不同的处理方式。



  • 历史数据


如果你拿着历史数据,找业务部门给你做整改,业务部门通常以“当前的数据问题都处理不过来,哪有时间帮你一起追查历史数据的问题”为理由无情拒绝。这个时候即便是找领导协调,一般也起不到太大的作用。对于历史数据问题的处理,一般可以发挥 IT 技术人员的优势,用数据清洗的办法来解决,清洗的过程要综合使用各类数据源,提升历史数据的质量。


  • 当前数据


当前数据的问题,需要通过从问题定义、问题发现、问题整改、问题跟踪、效果评估 5 个方面来解决。具体可以参考我之前在普元微信公众号的文章《大数据是否值得信赖——浅谈商业银行数据质量管理》。


  • 未来数据


未来数据的处理,一般要采用做数据规划的方法来解决,从整个企业信息化的角度出发,规划统一企业数据架构,制定企业数据标准和数据模型。借业务系统改造或者重建的时机,来从根本上提高数据质量。当然这种机会是可遇而不可求的,在机会到来之前应该把企业数据标准和数据模型建立起来,一旦机会出现,就可以遵循这些标准。


这样,通过对不同时期数据的分类处理,采用不同的处理方式做到事前预防、事中监控、事后改善,能从根本上解决数据质量问题,为企业业务创新打通数据关卡。

五、总结

综上所述,数据质量问题需要业务部门参与才能从根本上解决。要发挥数据资产的价值,需要将组织、技术和流程三者进行有机结合,从业务出发做问题定义,由工具自动、及时发现问题,跟踪问题整改进度,并建立相应的质量问题评估 KPI。通过采用数据质量问题全过程的管理的“疏”和“堵”结合方式,才能最终实现提升数据质量持续提升的目标,支撑数据业务应用,体现数据价值。


参考文献


[1] DAMA international 著、马欢、刘晨等译.DAMA 数据管理知识体系指南.北京.清华大学出版社 2012.7


[2]王轩.建设大数据平台,从“治理”数据谈起[EB/OL],2017-06-23/2017-10-13.


[3]刘庆会.大数据是否值得信赖——浅谈商业银行如何提升数据质量 [EB/OL], 2016-04-14


[4]谢泽添.基于 CWM 的商业银行元数据仓库的研究与应用,2008-09-01


[5] 贾让.治河三策千古鉴.河北水利,2016(2):36-36


作者介绍


刘庆会


主要负责普元大数据治理产品的实施,十年大型企业信息数据治理架构设计与建设经验,为多家大型金融机构、企业设计与规划数据管理整体框架和项目实施,客户包括国家开发银行、中信银行、北京银行、重庆农商行、攀枝花银行、国家电网、浙江电力、新奥能源以及中国东方航空、中国国际航空等。数据行业有着深入的研究和洞察,并对企业信息化平台建设,数据治理及大数据平台建设有着丰富经验。


2020-06-12 17:521228

评论

发布
暂无评论
发现更多内容

新来个技术总监,仅花2小时,撸出一个多线程永动任务,看完直接跪了,真牛逼!

程序知音

Java 架构 多线程 多线程与高并发 后端技术

如何让研发成员在会议上知无不言?

LigaAI

项目管理 敏捷开发 会议管理 迭代管理 企业号十月PK榜

突破单点瓶颈、挑战海量离线任务,Apache Dolphinscheduler在生鲜电商领域的落地实践

Apache DolphinScheduler

海豚调度 Apache DolphinScheduler 大数据调度 数据调度 企业号十月 PK 榜

北京培训java开发的机构比较好

小谷哥

原来Vue3的computed属性还能这么用啊🔥

渔戈

Vue 前端 10月月更

软件测试 | 测试开发 | 使用 Zabbix + Grafana 搭建服务器监控系统

测吧(北京)科技有限公司

测试

企业级开发平台的演进

世开 Coding

软件开发 低代码 快速开发平台 少代码

Paddlenlp之UIE模型实战实体抽取任务【打车数据、快递单】

汀丶人工智能

nlp

鸿蒙开发入门 | 开发第一个鸿蒙应用+页面跳转

TiAmo

华为 鸿蒙开发 10月月更

Mysql数据库基础之数据库的安装与配置

渔戈

MySQL 数据库 10月月更

“程”风破浪的开发者|OpenHarmony应用开发环境搭建

技能实验室

OpenHarmony “程”风破浪的开发者

BH1750 光照传感器文档详解 及 驱动设计

矜辰所致

传感器 stm32 I2C协议 10月月更 BH1750

Spring Boot 应用使用 application.yml 和 application.properties 的区别

Jerry Wang

Java mvc spring 后端开发 10月月更

JS词法环境和执行上下文

hellocoder2029

JavaScript

MySQL十种锁,一篇文章带你全解析

一灯架构

Java 10月月更

阿里巴巴 Noslate 正式开源 - 面向云原生的 JavaScript 容器方案

阿里巴巴终端技术

JavaScript 开源 云原生 前端 企业号十月PK榜

【云舟说直播间】数字可视化专场来袭

浪潮云

云计算

低代码开发平台盘点,让你的开发告别低效

SoFlu软件机器人

大数据开发学习周期是多久

小谷哥

Plan Stitch:一种使用缝合物理计划解决查询计划性能退化问题的方法

KaiwuDB

ES6 Promise、Generator与async简单介绍与应用

木偶

前端 ES6 异步 10月月更

java线下培训机构哪里比较好

小谷哥

解决 error: failed to push some refs to 'https://github.com/

timerring

git bug 10月月更

【10.14-10.21】写作社区优秀技术博文更新啦!

InfoQ写作社区官方

优质创作周报

细说JavaScript闭包

hellocoder2029

JavaScript

一文详解MySQL事务底层原理,全是干货,推荐收藏

一灯架构

Java 10月月更

“程”风破浪的开发者|Lombok的使用

楠羽

学习方法 lombok “程”风破浪的开发者

前端培训学习后的就业方向哪个比较好

小谷哥

UIE Slim满足工业应用场景,解决推理部署耗时问题,提升效能

汀丶人工智能

2022年上海前端培训开发技术就业前景如何

小谷哥

golang中的map

六月的

Go map

数据质量问题是“技术”问题还是“业务”问题?_文化 & 方法_技术琐话_InfoQ精选文章