是不是感觉漫画中的场景很熟悉?没错,这种场景几乎每天都在企业中重复上演。
一、数据质量问题的危害
当前越来越多的企业认识到了数据的重要性,数据仓库、大数据平台的建设如雨后春笋。但数据是一把双刃剑,它能给企业带来业务价值的同时也是组织最大的风险来源。糟糕的数据质量常常意味着糟糕的业务决策,将直接导致数据统计分析不准确、监管业务难、高层领导难以决策等问题,据IBM统计:
错误或不完整数据导致BI和CRM系统不能正常发挥优势甚至失效
数据分析员每天有30%的时间浪费在了辨别数据是否是“坏数据”上
低劣的数据质量严重降低了全球企业的年收入
可见数据质量问题已经严重影响了企业业务的正常运营,我着手数据质量项目近十年了,在实践中收获了一些经验。以下我将从数据质量问题的来源、责任主体等方面着手分析,并给出解决数据质量问题的策略,希望能给大家带来帮助。
二、数据质量问题来源
现在的数据集成融合就和古人筑堤坝一样,古人筑堤坝是为约束河水,扩展人类的生存空间;今人做数据集成融合,是为了挖掘数据价值,拓展企业的生存空间。那我们就在这个比喻的前提下,分析下数据质量问题的来源。
西汉的贾让在著名的治河文献《治河策》中提出了治理河水的策略,他认为在没有修筑大堤前,黄河“左右游荡,宽缓而不迫”,后来筑堤后,河道变窄,发生洪水时泄流不畅,常决口为患。
在企业信息化初期,各类业务系统恣意生长,这个阶段就像没有修筑大堤前的黄河,河水虽然漫流,但是河道宽阔,虽然也有数据问题,但不明显。
后来业务需求增长,需要按照统一的架构和标准把各类数据集成起来,这个阶段就像筑堤束水之后的黄河,泄流不畅、决口不断等问题纷纷出现,数据不一致、不完整、不准确等各种问题扑面而来。
费了九牛二虎之力才把数据融合起来,如果因为数据质量不高而无法完成数据价值的挖掘,那就太可惜了!大数据时代数据集成融合的需求会愈加迫切,不仅要融合企业内部数据,也要融合外部(互联网等)数据。如果没有对数据质量问题建立相应的管理策略和技术工具,那么数据质量问题的危害会更加严重。
三、数据质量问题责任主体
人们在解决问题之前,往往会先分析出问题的责任主体,很多人可能在纠结,数据质量问题究竟“业务”的问题还是“技术”的问题?根据我以往的经验,造成数据质量问题的原因主要分以下几种:
1、数据来源渠道多,责任不明确。
2、业务需求不清晰,数据填报缺失。
3、ETL处理过程中,业务部门变更代码导致数据加工出错,影响报表的生成。
我们发现1和2都是业务的问题,3虽然表面看是技术的问题,但本质上还是业务的问题。因此大部分数据质量问题主要还是来自于业务。我在和很多企业做数据治理技术交流的时候,发现很多企业认识不到数据质量问题的根本原因,只从技术单方面来解决数据问题,没有形成以管理机制,导致效果大打折扣。现在走过弯路之后,很多企业认识到了这一点,开始从业务着手解决数据质量问题了。
四、解决数据质量问题,
应该用“堵”还是用“疏”
弄清楚了数据质量问题来源、责任主体后,接下来就应该考虑如何解决。还以古人治理黄河水患为例来说明。
《治河策》中提出了治理水患的三种策略:“徙冀州之民当水冲者”为上策,主张不与水争地,能使黄河“宽缓而不迫”。中策是“多穿漕渠于冀州地,使民得以溉田,分杀水怒”,简单说就是分流,是上策的具体措施。下策是“缮完故堤,增卑培薄”,之所以是归为下策,是因为原来的堤防堤距过于狭窄,且堤线弯曲多变,再这样的基础上,无论怎么加高增厚,洪水问题也无法得到根本解决。
归纳总结下古人治理黄河水患,主要有两种套路,一种是“疏通”,上策迁移民众和中策分流黄河水患,都是具体体现;另一种是“围堵”,加高增厚堤防,抑制河水泛滥。
在治理数据质量的问题时,也可以应用下古人的智慧和考量。采用规划顶层设计,制定统一数据架构、数据标准,设计数据质量的管理机制,建立相应的组织架构和管理制度,采用分类处理的方式持续提升数据质量,这是数据质量管理“疏”的方式。而单纯依赖技术手段,通过增加ETL数据清洗处理逻辑的复杂度,使用数据质量工具来发现ETL数据处理中的问题属于“堵”的方式,只能解决表面的问题,不是根本的解决方法。这种方式其实也在好多企业中使用,其根本目的在于提高ETL处理的准确度,做法无可厚非,毕竟需求的出发点不一样,面临的现状也不一样。
按照我之前在多个行业实施数据质量管理项目的经验,数据质量管理的最佳实践是采用“疏”和“堵”相结合的方式,通过这种方式解决数据质量问题有几个要点:
1、定义业务问题、规划顶层设计
在解决数据质量问题之前需要定义清楚业务问题。是以提高主数据的质量为目标、以整改BI数据问题为目标,还是以满足风险管理、监管报送要求为目标。
在业务问题定义清楚之后,需要以业务问题为出发点,做顶层设计。设计好某业务主题的标准,以标准作为数据质量校验规则的准绳。数据标准的制定不在本文的讨论范围,这里就不在展开说了。这个是“疏”的最高境界,往往耗费的成本也比较高。
2、建立数据质量闭环管理机制
从问题定义、问题发现、问题整改、问题跟踪、效果评估5个方面建立相应的管理及认责机制。从业务出发做问题定义,由工具自动、及时发现问题,明确问题责任人,通过邮件、短信等方式进行通知,保证问题及时通知到责任人。跟踪问题整改进度,建立相应的质量问题评估KPI。保证数据质量问题全过程的管理。
3、对不同数据的数据问题分类处理
在时间维度上分,企业数据主要有三类:未来数据、当前数据、历史数据。在解决不同种类的数据质量问题时,也要采取不同的处理方式。
历史数据
如果你拿着历史数据,找业务部门给你做整改,业务部门通常以“当前的数据问题都处理不过来,哪有时间帮你一起追查历史数据的问题”为理由无情拒绝。这个时候即便是找领导协调,一般也起不到太大的作用。对于历史数据问题的处理,一般可以发挥IT技术人员的优势,用数据清洗的办法来解决,清洗的过程要综合使用各类数据源,提升历史数据的质量。
当前数据
联系客服