本人所在的公司正在进行体系化的数据治理工作,结合自己的实际工作经营和了解的数据治理相关信息,写了这篇文章,这只代表我对数据治理的理解。
数据治理这项工作一直都是存在的,和数据库设计的三范式一样都是为了数据的管理。数据治理是一整套完整的组织、制度、技术管理行为。
我们可以将大数据治理定义:大数据治是广义信息化治理计划的一部分,即制定与大数据有关的管理优化、数据保护、数据变现的政策。
它的发起背景多数是由于公司战略政策和业务日益变大的数据需求和要求所产生的。我所在的公司,当业务经历粗放式增长后,原有的模式已不能带动业务的增长,需要通过数据手段赋能新的业务增长点。因此业务对数据提出了准确性、及时性等要求,原有业务采集一个需求需要4天时间已经不能满足业务,从而产生了数据治理项目的启动。
说了数据治理产生的背景,我再来谈下数据治理的对象。它包括数据、开发流程、管理流程、制度、组织。我认为只要和目标相关联的,都可以算作治理的对象,数据治理就是将关联方通过一套完整的管理行为,形成有序的工作以达成目标。
数据治理项目的范围
数据治理项目的范围通常都会包含:组织建设、数据安全、数据开发、数据质量、元数据管理、数据价值等几个模块。当然基于每家公司的数据治理的目标不一样,每家公司的数据治理实施关键路径也会不一样。我所在的公司数据治理的目标是为方便业务快速掌握了解数据、公开透明数据资产的动态,所以把数据价值、元数据管理、数据质量做为了实施关键路径。
元数据管理
元数据从数据的角度可以分为三类:业务元数据、技术元数据和管理元数据。
- 业务元数据是从业务的视角去描述数据,让不懂数据的人可以快速读懂数据,例如:表名称、表的血缘关系、表的字段说明、指标的统计口径等多种业务描述;
- 技术元数据自然就是从技术的角度去描述数据,例如:表的sql、字段长度、字段类型等多种技术描述;
- 管理元数据是包含数据管理的信息在里面,例如:表的业务属主、表的技术负责人。
元数据的管理通常包含:血缘分析、数据生命周期。
血缘分析:对元数据的上下游进行分析,我的公司按照数据存储的数据库将血缘分析分为了两类:
- 存在Hadoop平台的血缘分析,可用通过脚本解析出到字段级的上下游关系;
- 建表有主外键的,可通过主外键建立血缘关系。
数据生命周期:数据都存在生命周期,当元数据访问量变低,数据价值不存在的时候,可将它下线清除,释放存储空间。
数据安全
数据安全主要是对数据的安全脱敏管控和安全检查,脱敏机制有两种方案:
1)在数据仓库的接入和输出进行脱敏管控:数据接入识别敏感信息,通过脱敏工具进行脱敏处理,产生脱敏表和敏感表两张表(脱敏表与敏感表之间要有映射关系),敏感数据不对中间层开放,对于数仓中间层则只有脱敏表,开发和测试的时候也只能使用脱敏表,在数据输出层,首先应用层的开发先对敏感数据进行申请,申请通过后得到敏感表的使用权,开发通过映射关系将敏感表的脱敏数据进行关联处理。
这种方案的好处:安全易管控,脱敏过程少,但会增加开发的工作量。
2)针对用户进行脱敏管理,数据仓库的每一层都需要对敏感数据进行脱敏处理,对于敏感数据申请权限的用户可以查看敏感信息,没有权限的用户只能查看脱敏表。这种脱敏机制好处在于对开发没什么影响,但加大安全管理的复杂度,需要全域扫描敏感信息,脱敏工作大。
数据质量
数据质量的提升通常包含以下几个方面:
1)数据质量评估,提供数据质量评估能力,如数据一致性、完整性、正确性、合规性、及时性等,对数据进行全面检查;
2)数据质量检查,提供可配置化的检查规则,通过脚本定时调度执行;
3)数据质量监控,提供报警规则,根据配置检查规则的阀值,对超出阀值的进行不同程级的告警和通知;
4)问题处理机制,对数据问题按照流程进行处理,规范问题处理机制和步骤,强化问题认证,提高数据质量;
5)根据血缘关系和业务场景锁定高价值数据,进行高安全级别管控,避免数据出错。
数据价值
数据治理最重要的产出物,通过数据治理能为业务带来的业务价值。如我所在的公司,数据价值体现在数据资产可视化。对于不同看数据角色定义不同的价值,对于数据业务分析人员,通过数据标准化管理和平台搭建,让不懂数据的业务能够快速掌握数据,并可以自己进行数据挖掘、数据分析等工作。
对于高层领导,将公司的业务数据以报告的形式,让领导快速了解数据的成本及分布情况。当然不同的公司侧重的价值会不一样,数据治理同时也能有效的控制数据成本,减少因为数据带来的摩擦,提升数据质量和安全。
数据开发
对数据开发进行标准的流程管理是数据治理核心的一部分,首先根据公司实际情况分析、制定可落地的数据开发管理规范。过于复杂的数据开发规范维护成本高,同时也加重开发工作量,导致难以执行。过于简单的规范又无法很好的管理开发流程。最主要的还是定制完规范后拉各关联方进行评审,大家对可落地,可管理的角度是评估规范。
当规范制定好后,就是按照规范进行落地执行。通常数据开发规范包含:数据建模、数据设计、数据项目部署和实施。
数据建模是一种分析和设计方法,用于:
- 定义和分析数据需求;
- 设计满足需求的数据结构。
数据设计是做表的关联影响分析,数据上游于哪些表, 根据数据开发规范对表的命名和结构进行设计。数据项目部署和实施主要是发布管理,就不做解释了。
组织建设
数据组织是保障数据治理能够长期有效的重要手段之一,通常数据组织都是可以跨职责的,组织的职能和分类如下:
1)数据治理委员会,在公司内部拥有数据的最高决策权,代表了企业的高层视角
2)数据管理指导委员会,为数据委员会提供支持,针对一些具体数据管理措施起草相关政策和标准,提供委员会评审和批准
3)数据管理制度团队,在某个业务领域内,协助完成数据制度管理的数据管理专员小组,数据管理制度团队来着不同的部门和跨业务领域的数据专家
下面这张图摘至于《数据治理体系》-管理组织: