数据治理方法论总结

本文总结一下个人对数据治理的感悟和理解。

一、数据治理概述

在大数据各个企业数据积累过程中,很多公司都注重了数据的“量”,很少有公司关注数据的“质”,仿佛只要有了海量的数据就可以解决所有问题。真实的情况是公司有了海量的数据,如果不能够保证一定的数据质量不但不能够解决问题,反而还会制造更多的麻烦,例如:企业数据标准、命名规则不一致、企业数据口径不一致(数据统计结果不一致)、统计结果重要数据缺失等,以上问题都会给企业的经营管理和市场洞察带来极大的挑战。

数据治理(Data Governance)指的是数据从零散没有规律变为统一规划的数据、从具有很少甚至于没有组织和流程的治理到企业范围内的综合数据治理、从处理数据时的混乱状态到数据井井有条的一个过程。

数据治理包括数据质量管理、数据标准管理、元数据管理、数据安全管理等等,其实离线数仓和实时数仓的搭建就是对数据的一种非常好的管理,一个好的数仓的搭建可以很好的对数据进行数据集成管理,数据资产管理,数据交换管理,所以本文主要对元数据管理,数据安全管理和数据质量管理这三部分进行总结。

1、元数据管理

元数据(Meta-data)是描述数据的数据。例如一个文本数据的大小,位置,创建人,创建日期等,这些数据就是该文本文件的元数据。元数据又分为业务元数据、技术元数据、操作元数据、管理元数据。

(1)业务元数据:与业务规则、流程相关的描述性数据。例如:人员信息数据中的统计时间、统计周期、统计区域范围等。

(2)技术元数据:与存储、访问等技术底层相关描述性数据。例如:人员信息数据存储在的位置、访问的URL地址,数据存储库,对应的表名,字段有哪些等。

(3)操作元数据:与数据操作相关的描述性数据。例如:人员信息数据上传人,上传时间,修改时间等。

(4)管理元数据:与数据管理相关的描述性数据。例如:人员信息数据访问权限,安全等级,质量等级,过期时间等。

个人认为,其中最重要的是技术元数据的管理以及血缘关系的管理。
对于技术元数据,我们可以将数据在HDFS存储位置,数据所对应的是哪一种数据库,所对应的库名,表名,以及其中的列名都应该整理归纳在文档中,做好维护。
对于血缘关系,我们可以将每一条业务线中对应的数据库中的表之间的关联关系以及关联后结果所存储的表整理在文档中,并且不断维护,一方面这有助于后续新员工能尽快的熟悉工作,另一方面能够对整体表与表之间的关系有更为清晰的认知。
当然,如果可以的话最好对数据库中每一张表中的每一列的字段都进行解释,并且整理在文档中,这其实也是数据治理中非常重要的一环,简化了工作的交接也方便了新人的入职。

2、数据质量管理

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

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

评估数据质量的好坏,业界标准并不统一。阿里巴巴对数据仓库主要从四个方面进行评估,即完整性、准确性、一致性和及时性

(1)完整性

完整性是指数据的记录和信息是否完整,是否存在缺失的情况。数据的缺失主要包括记录的缺失和记录中某个字段信息的缺失,两者都会造成数据不准确。

这些完整性指两个方面,第一个方面是数据条数的缺失,比如交易中每天支付订单数都在100万笔左右,如果某一天支付订单数突然下降到1万笔,那么很可能是记录缺失了。

另一方面是数据项的缺失,比如某些值为null,或者为空值,又或者比如订单的商品ID、卖家ID是必须存在的,这些字段的空值个数肯定是0,一旦大于0就必然违背了完整性约束。

那么如何去统计这些数据的完整性嘞,一方面可以人工检测,自个一个一个表慢慢瞅,另一方面可以通过sql的方式去判断表中是否存在数据缺失,可以统计表中的条数以及表中某些字段为空的条数,来判断数据是否完整。

(2)准确性

准确性是指数据中记录的信息和数据是否准确、是否存在异常或者错误的信息。例如,成绩单中分数出现负数或订单中出现错误的买家信息或负的订单金额等。

(3)一致性

一致性通常体现在跨度很大的数据仓库中。例如,某公司有很多业务数仓分支,对于同一份数据,在不同的数仓分支中必须保证一致性(数仓各层数据经过ETL后,条数、数据值、类型需要与上层保持一致)。例如,从在线业务库加工到数据仓库,再到各个数据应用节点,用户ID必须保持同一种类型,且长度也要保持一致。

数据的一致性在公司体量比较大(一个公司多个数仓)或者业务比较复杂,库表比较多的情况下容易出现问题,主要就是一些相同的数据在不同的表中是否保持相同的规范。

(4)及时性

保障数据的及时产出才能体现数据的价值。例如,决策分析师通常希望当天就可以看到前一天的数据。若等待时间过长,数据失去了及时性的价值,数据分析工作将失去意义。这里离线数仓一般都是凌晨运行任务,及时性可以得到保证。

3、数据安全管理

企业有些数据非常重要且敏感,这些数据大部分集中在应用系统中,例如银行系统中客户的联络信息、资产信息等,如果不慎泄露,不仅给客户带来损失,也会给银行带来不利的声誉影响,因此数据安全在数据管理和治理过程中是相当重要的。数据安全管理包括数据权限管理、数据脱敏、数据加密等。

个人认为数据安全主要是以权限管理和数据脱敏这两方面为主,一方面要防止误删数据,所以对delete操作要进行权限控制,另一方面对敏感数据可以进行一些加密处理。

4、数仓搭建

整个数仓的搭建,维度建模,表与字段的设计也是数据治理中非常重要的一点,不过这是数仓中的相关知识点,这里不在过多赘述。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值