睿治

智能数据治理平台

睿治作为国内功能最全的数据治理产品之一,入选IDC企业数据治理实施部署指南。同时,在IDC发布的《中国数据治理市场份额,2022》报告中,蝉联数据治理解决方案市场份额第一。

货拉拉数据治理平台建设实践

时间:2022-11-15来源:景天浏览数:118

在数据开发和数仓建设过程中,数据治理落地和提升数据质量的重要性逐渐凸显,文章从货拉拉的数据治理实践出发,分享货拉拉在数据治理体系构建、数据质量平台建设、元数据平台建设方面的实践,值得了解和学习。

导读:在数据开发和数仓建设过程中,数据治理落地和提升数据质量的重要性逐渐凸显,本文将从货拉拉的数据治理实践出发,分享货拉拉在数据治理体系构建、数据质量平台建设、元数据平台建设方面的实践。

分享嘉宾|陈元&张放 货拉拉

编辑整理|沈奕辰

01 货拉拉数据治理体系

首先和大家分享下数据治理的背景和现状。

1. 背景与现状

我们在做数据开发或数仓建设过程中,会遇到大量问题,有些会导致成本和数据质量问题,有些会影响数据链路稳定性。比如数据表没有生命周期或无效的任务空跑,会造成成本浪费;又比如数据字典不规范、缺乏监控规范,以及数据问题不能及时发现,会造成数据质量问题,甚至导致链路稳定性。

2. 数据治理关键环节

基于以上背景,我们在以下四个环节做了相应工作:

组织保障:明确成员角色,明确职责分工;我们成立了存储治理小组、计算治理小组,以及稳定性保障小组。 

制度建设:制定标准流程,保证落实执行;如我们制定了大数据接入规范、数据开发规范、数据模型规范,这些都是需要长期推广和落地的过程。 

项目落地:开展专项治理动作,比如存储治理、计算治理等;实践证明专项治理的效果比较明显,但问题是比较耗时耗力;不是长效机制,是一种运动式的治理,需要把能力产品化,让数据责任方自助式治理,驱动自主治理。 

平台支撑:研发支撑系统,提质增效。 今天我的分享主要是围绕平台支撑这个环节开展,其他三个环节,是接下来由其他老师带来。

3. 货拉拉数据治理产品体系


货拉拉数据治理产品体系,由数据质量管理平台元数据管理平台以及数据安全管理平台这三个平台支撑。

元数据管理平台包含数据地图、数据血缘分析、数据模型管理、成本管控、数据资产管理。 数据地图主要提供找数据和帮助用户理解数据的能力。

数据血缘分析主要是在数据链路出现问题的时候,帮助排查定位问题。 数据模型管理,提供规范落地能力:把所有正式表的建表收归到数据模型管理平台。这样的好处是,如数据安全等级、数据生命周期都会有设置,防止数据出现无序增长的趋势。 

成本管控平台,它的作用是度量当前数据资源有哪些,资源消耗是怎样的,每天花了多少钱。 辅助治理措施:冷数据归档、数据生命周期管理能力。 

成本运营机制:可以让用户自驱地做成本运营,不用做保姆式的人治。 数据资产管理:主要提供数据目录管理、数据标准管理,供评估数据资产; 

数据质量管理:提供全链路的数据质量监控,有问题可以及时发现和处理,防止问题进一步扩散,可以及时止损。

02 数据质量平台建设实践

1. 面临的数据质量问题有哪些

数据开发过程中会遇到很多问题,如: 表未按时产出 上游数据错误,污染下游,导致链路异常 埋点数据丢失,无监控造成数据丢失无法发现 报表数据异常,造成决策错误 

2. 产生数据质量问题的原因


产生数据质量问题的原因,归结为四个方面: 

业务端:业务源系统变更,或业务端数据输入不规范,会导致数据生产以及数据接入出现异常。

技术端:数据开发过程中出现的 Bug,或任务参数配置错误,导致任务运行失败。 

基础设施:计算资源不足,或网络带宽不足,磁盘被打满,也会影响数据产出。 

管理端:缺乏质量意思,缺乏有效质量问题处理机制,质量问题会越来越严重。 

3. 数据质量保障思路

分为事前、事中、事后三个部分:

事前:制定机制、标准流程和质量检查规则,预防质量问题。 

事中:数据质量平台搭建,可以监控全链路数据质量。 

事后:发现质量问题要及时修复,并考核数据链路质量,驱动数据链路负责人做数据质量提升。 

4. 货拉拉数据质量平台

货拉拉数据质量平台是一站式数据质量管理平台,用户基本上不用编写代码,就可以完成质量规则配置,完成质量检测,支持自助生成质量报告。

(1)平台特点 

  零代码一站式质量监测。 支持表维度管理和主题维度管理:表维度是对单张表做质量规则配置,主题维度是对同一类别的表做相同类别的质量配置。 借助了元数据平台中的数据血缘,完成整个数据链路的质量规则配置。 当质量规则配置完成后,会生成一个质量检测任务,用户可以手动触发制定,也可以设置周期性调度执行,也可以去任务调度平台触发执行。因为一个任务对应一些输出表,当输出表落地后,会触发这个表关联的质检规则执行。如果关联的质检规则是强规则,且强规则检测未通过,会阻断下游任务执行,就能阻止数据质量问题进一步扩散。 质检完成后,会生成质量报告;对于质量检测不通过的,会触发告警。严重的会触发熔断。 

(2)数据质量平台架构设计

  从图中看可以看出,后端的很多服务都是多实例部署的:比如 API 向前端提供接口服务;与数据库所有交互的请求都会走网关服务;还有负责任务调度的服务。API 和网关服务都是无状态的服务,用微服务架构部署的,是多实例部署,如果一个实例挂了,流量会打到另外一个实例上面去,保证稳定性、高可用。但 Scheduler 是有状态的,因为它上面每时每刻都在运行一些任务,不能只是多实例部署就可以,而是需要主备架构。

我们用了 Zookeeper 做 Leader 选举,当一个 Scheduler 挂掉之后,就会把另一个 Scheduler 拉起,把挂掉的 Scheduler 上的任务迁移到新起的 Scheduler 上。这样能保证任务不会挂掉,不会影响到数据质量检测。最开始计算引擎只用了 Hive,后来用了我们公司自主研发的混合引擎服务,自动会把符合条件的 SQL 录用到 Presto 上去,Presto 是基于内存计算的分析引擎,速度比 Hive 快很多,下面会展示具体的提升效果。

图中展示的效果比较明显,图中绿色折线表示混合引擎的执行效果,黄色的是 Hive 的执行效果。基本混合引擎可以保证 85% 的质量检测任务都会在 20s 内完成。现在 80% 的质量检测任务都会在 5s 内完成,98% 的质量检测任务速度都会有 79% 的提升(之前 Hive 用 915s,现在混合引擎只需 192s),可以大大提升数据质量检测效率,不会影响数据链路的产出时间。

(3)数据质量平台规则体系包含完整性、准确性、一致性、及时性。在配置规则的时候,一张表可以应用多个模板,配相应规则。规则模板和规则的区别是,规则模板已经配了相应的阈值和调度时间,以及其他规则信息,只是还没有和表关联,为了提升规则配置效率。这部分还和元数据平台做了联动:所有建表操作,都会统一在元数据平台完成,所以元数据平台会输入字段约束、值阈检查一些信息给规则模板,这时候规则模板只要和表实例关联,就可以完成规则配置,可以大大提升质量规则提升效率。之后有规划将数据标准管理平台的标准作为输入,如数据长度、码表、值阈等等信息,这样可以进一步节省规则配置的时间。

(4)数据质量平台熔断机制下面再介绍一下数据质量平台熔断机制的运行流程:

首先任务开发平台里的任务对应多个输出表,当任务被调度执行的时候,会触发质量规则的校验。如果规则不通过,会触发熔断阻塞,下游任务不会执行,让质量问题不会进一步扩散。

(5)数据质量平台质量报告

上图是质量报告截图,支持多角度质量绩效分评分,并且支持用户自定义评分依据和权重。

(6)数据质量平台监控告警监控告警是为了及时发现数据质量问题。

问题主要分为三类: 一般问题:只需要邮件通知 重要问题:邮件+飞书通知 严重问题:邮件+飞书+电话通知 

(6)数据质量平台运行现状

目前已经接入 1500 多张表,每个月都会发生 300 次以上数据质量问题数,今年以来熔断阻塞了 14 次,有效保障了数据质量和链路稳定性。

(7)数据质量平台未来规划

其实现在整体数据质量水平不能直接度量和观察,所以下一步我们要规划整体的质量治理体系,支持自驱的数据质量治理;支持 OLAP 场景的质量检测和实时场景的数据质量检测。我的介绍就到这里,下面将由张放介绍元数据管理平台,欢迎。

03  元数据平台建设实践

线上的老师同学下午好,接下来将由我为大家介绍货拉拉的元数据管理平台。大数据体系在发展到一定规模,就会面临:怎样找到需要的数据,如何梳理出上下游关系,数据治理靠什么来驱动,数据资产管理等问题;元数据管理平台就是为了解决以上这些问题。今天从以下四方面展开元数据管理平台介绍:平台介绍、成本治理体系、数据血缘、未来规划。1.  平台介绍

平台的建设思路是:定规范、做治理、建能力、做运营。

系统架构图左边展示了元数据管理平台的基础设施、平台/工具和业务系统;右边的应用层,提供数据地图、数据血缘、数据安全等能力,支撑上层的数据仓库、成本管理、数据分析、数据服务、数据模型等应用场景,在整个数据治理体系中扮演了非常重要的角色。

这里也对大厂的元数据平台进行了调研,列举了他们在元数据基建以及核心应用场景的建设情况。总体来说,大厂元数据管理核心应用场景建设都比较完善。货拉拉元数据管理平台对标大厂,目前处于约 50% 的水平,还处在发展阶段。

2. 成本治理体系

介绍完平台总体框架,下面介绍本次分享的重要部分,成本治理体系。降本增效目前是行业趋势,而建设成本治理体系是数据治理中非常必要的一环。下面将介绍基于元数据平台,货拉拉在这方面主要做了哪些工作。

(1)以存储治理为例,在没有治理的情况下,主要面临以下问题: 表数量大 增长快速 冷数据占比多:约33%的数据90天内无访问,但是这些冷数据存储成本消耗和标准存储是一样的,造成很大的成本浪费 

(2)围绕存储和计算成本高的问题,建设了成本治理体系。

图中是成本治理体系的

框架: 首先建立资源预算机制,通过预算预警和限制,从部门层面控制整体成本使用。 其次,落地数据资产度量体系。能够清晰掌握各项资源消耗,并核算成部门和个人级别的成本明细,转换成健康分,就能非常客观地度量成本使用情况。 并且,配合有效的辅助治理措施,对离线存储和计算任务进行技术优化。 有了数据资产度量和辅助治理体系,再推广资产健康分红黑榜,对个人和部门实施奖惩措施,促使用户和业务部门主动参与到成本治理中,提升健康度,形成良性循环,最终达到成本目标。

(3)下面具体介绍成本度量和展示的实现思路:

从下至上: 最下面是数据源层,成本消耗主要来自于计算任务产出的表、报表、标签等数据资产,它们分散在基础设施各处。 要度量这些资产的成本数据,需要从各个平台或引擎采集消耗的明细数据,以个人或部门维度统计分析。 经过平台数仓层,加工成可量化展示的成本数据,并根据这些明细数据分析转换成存储和任务的健康分。用户就可以非常直观地知道自己名下哪些任务资源消耗大,哪些表占用存储空间大;为推动任务优化和存储治理提供非常有利的数据支撑。相比以往需要人工核算成本账单,现在自动化统计运营的过程,更加精确高效,也节约了人工成本。 

(4)下面再介绍辅助治理的具体方案:

冷热分层和归档 

上图左边的曲线,是通过综合分析归档,以及归档后数据取回的花费,得到归档最近 90 天数据被访问次数和收益占比的关系图;通过该关系图可给到分区的冷热分层(即热、温、冷、冰)定义。冰数据占比 50%,热数据仅 15%,分别采用不同的存储策略,分阶段地对冰、冷数据进行归档,降低存储成本。以下是分层和归档的概要设计:

各平台系统提交的 SQL 经过引擎执行,解析为具体的分区访问记录,统计出分区级别的热度信息;采集文件系统的文件记录,得到文件的热度信息,join得到最终的分区热度信息表,根据该信息进行后续的归档工作。在平台层支持分区温度展示,使用户主动进行分区归档工作。

生命周期管理

数据生命周期,正式表和临时表采取不同的策略,将超过生命周期的分区滚动式地进行清理操作。下图是生命周期和归档配合控制表数据的增长。比如,用户设置 180 天生命周期,和 90 天归档周期,生命周期之前的数据将被删除,生命周期内,90 天之前的数据将被归档。运用这两种辅助治理手段,和数仓同学一起分阶段持续推进存量数据存储治理,初期就能有较可观的收益,同时推广运营产品化能力,全面覆盖增量表,能有效抑制存储增长趋势。

这是目前存储治理的收益情况,优化前存储呈线性快速增长,优化后存储8 个月零增长并持续下降,目前累计节省约 54% 的存储成本。

3. 数据血缘

数据血缘主要有四个方面的应用场景: 数据资产:提供数据资产的热度统计,帮助理解数据上下文 数据开发:支持影响分析和问题数据溯源 数据治理:链路状态追踪,帮助数仓进行治理工作 数据安全:安全合规检查以及字段安全级别传播 以下是数据血缘的架构图:

从引擎组件、大数据开发平台等,采集血缘信息和对应任务信息,经实时和离线解析,包括 SQL 解析和指标/报表血缘解析等,将解析出来的输入输出关系落到元数据系统中,供上层查询,并提供影像分析等能力。

4. 未来规划

元数据的未来规划,围绕以下四方面建设:




(部分内容来源网络,如有侵权请联系删除)
立即申请数据分析/数据治理产品免费试用 我要试用
customer

在线咨询