加入收藏 | 设为首页 | 会员中心 | 我要投稿 鹰潭站长网 (https://www.0701zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

存储和计算资源都节省 30%,网易云音乐数据治理实践

发布时间:2022-12-20 02:01:34 所属栏目:大数据 来源:转载
导读: 本文来自于网易云音乐数仓团队,将分享他们近一年在数据治理上的实践,具体内容将从数据背景、治理思路,项目方案、治理实践、项目成果及未来展望几个方面展开。
数据背景1.1 业务背景
云音

本文来自于网易云音乐数仓团队,将分享他们近一年在数据治理上的实践,具体内容将从数据背景、治理思路,项目方案、治理实践、项目成果及未来展望几个方面展开。

数据背景1.1 业务背景

云音乐目前发布了 9 款独立的产品,国内产品有 6 款,除了云音乐本身之外、还有 5 款社交娱乐产品,分别为 look 直播、心遇、声波、音街和 mus;海外的社交娱乐产品有海外心遇 heatup,海外直播 kaya,游戏社交产品 ruffgo。

1.2 数据现状

规模上

质量上

效率方面

历史原因有大量任务仍然运行在 hive 引擎和 spark2 引擎上,这类任务耗资源、执行慢、小文件问题较多。下游引用比较随意,存在大量任务直接读取 ods 表的情况,特别是涉及到日志数据,小需求耗大资源。

环境方面

目前包含了国内环境和海外环境,国内环境目前有 5 个集群,海外环境当前包含了阿里云和 aws。

总体来讲,针对目前的数据现状,治理面临的问题是 体量大、环境杂、缺规范、存在大量的资源浪费。

治理思路2.1 找问题

针对当前的数据现状,数据治理可以从哪些方面来找到治理方向呢?我们从技术视角对问题进行了分类。目前大数据环境下数据相关内容的分布情况如图中所示:

首先我们所有的数据都是存储在 hadoop 的 hdfs 文件系统之上的,在 hdfs 之上我们会建立一系列 hive 库和表用来管理数据;基于库表的管理,数据开发会在上面进行模型设计和数据分层设计;再往上则是数据处理方面的内容,包括任务调度、执行引擎等。

随着业务的快速发展,数仓的不断迭代, 每块内容可能或者必然存在着哪些问题呢?

2.2 问题解法

针对以上存在的问题,如何来更有效的找到问题所在;

以上这些问题的解决方案都指向了元数据信息,拥有了完整的元数据,我们才具备了放手去干的基础。

项目方案3.1 构建整个治理方案

要解决问题找到问题,我们第一步就是获取完整的元数据内容

22 年年初开始,从网易数帆大数据团队拿到了比较完备的元数据内容,涵盖了表粒度的元数据信息、任务粒度元数据信息、hdfs 文件元数据信息等。

基于获取的元数据内容进行元数据建模。通过对元数据和云音乐内部数据的一系列的处理,产出了丰富的元数据 cdm 层的宽表和维表。通过模型产出的报告可实现从更多的视角观测数据现状和任务现状,可以分析的粒度有:整体平台数据,数据使用团队、数据业务域、个人、表。整个建模内容支撑了体系化的治理方案。

大数据数据存储_大数据存储难点_大数据怎么存储

3.2 治理体系

云音乐的整个数据治理体系中,我们遵循的原则是治理有依据、权责有归属、机制可持续、效果可回收、方法可沉淀。

治理的依据是元数据;权责有归属是定位谁的问题谁来治理;机制可持续是在治理的过程中沉淀出一套可推行的机制和原则;效果可回收是每一项都能拿到相应的结果;方法可沉淀整个治理方案可以进行横向复制推广。

治理的动作可归纳为建监控、定规范、搭工具、做治理。上面三个动作都是为了最后一个动作做铺垫的。在规范、监控、工具都做好了的前提下,治理的动作才能更有效的推进落地;做治理的过程中也可以逐步丰富规范内容,同时也可以进一步沉淀和落地监控及工具。

上面讲到的治理原则中,权责有归属和机制可持续是治理事项推进的两个基本点,所以在推进其他治理事项前要先落地这两项原则。

治理实践4.1 权责有归属

所有要推进的治理项都是要人来治理的。所有的数据、任务、表都需要有责任人对其进行负责,云音乐的所有 ods 的 dump 任务是在云村平台上实现的,dump 任务的配置都是由云村平台的开发统一配置的,表和任务的责任人都是归在配置任务的开发身上,n 个业务几千个任务都是有平台开发来运维管控,表和任务的生命周期管理基本上是没有管制的。另外一些历史原因,存在大量的表归属在离职人员和项目账号下,这些表及相关的任务也是出于脱管的状态。针对这几种情况分别做了 ods 治理、离职人员表任务归属治理、项目账号表归属治理。

4.2 机制可持续

在进行实际治理项目执行的过程中,每个治理事项所面临的问题、治理的内容和治理步骤都是差异且多元化的;治理项都面临着跨部门,多团队协作,在人力精力投入比较分散;在这些问题的背景下我们建立了统一的推进机制以及推进原则。

4.3 hdfs 层面 - 游离 hdfs 文件治理

在游离 hdfs 文件的治理,通过 hdfs 元数据和 hive 元数据的关联匹配逻辑和文件的访问情况大数据数据存储,进一步计算出游离的 hdfs 文件;通过找到游离文件的生产方进一步确认文件是否还有存在的必要,并推进无效文件下线动作。现阶段通过这种方式梳理出来的游离文件有计算引擎遗留数据、未清理的临时目录数据、删表未删文件的数据,算法和工程任务的无效应用数据、实时任务无效归档数据等。通过对这些游离数据的清理,目前拿到的效果是非常显著的,释放了 7p+以上的逻辑存储空间,清理掉了 450w 以上的文件和目录。

4.4 库表层面 - 数据库治理

云音乐数据目前服务的角色比较广泛,除了数仓、分析师、算法、我们还服务了所有和技术挂钩的角色,包括客户端、业务服务端、安全中台、曲库业务、广告、业务中台等等。

由于之前对数据库申请的审核比较随意,云音乐主项目下已经存在了 70 多个库,其中大部分库的用途是不详的,有一些库映射的 hdfs 目录是非法的,在数据库的用法上也存在比较多不规范的地方。所以在这个背景下启动了对数据库的一波治理,整个治理流程是通过元数据,梳理库的使用现状,根据现状进一步定制数据库使用规范;确定出可下线库明细,制定下线方案,通过专项、数据迁移,公示下线等手段推进数据库的下线。并回收数据库的审批权限来规范库的使用。目前已经下线了 27 个无效库,数据库使用规范中明确了库的最终态,之后新增的数据都会归在目前的 22 个数据库中。

大数据存储难点_大数据怎么存储_大数据数据存储

4.5 库表层面 - 表治理

表治理主要是针对表的存储治理的过程,这里介绍一下四个比较有代表的存储治理专项。

第一个是临时表治理,早期临时表面临着存量大,增速快的问题,经过一期的的治理解决了大量存量的问题,增速快的问题后面通过元数据建模产出的报表,推进线上任务改造的方式较好的解决了增速快的问题。

第二个是生命周期管理的推进,早期面临的问题是缺乏规范,生命周期覆盖低,设置随意。在出台了生命周期管理设置规范之后,生命周期覆盖上获得了较好的成果。

第三个是巨型表的治理,这里定义出日费用在 100 以上的表为巨型表,总共涉及 163 张表,存储占比却达到了 80%,,单独把巨型表拉出来治理是居于二八原则,拉大头重点治理,获得的收益是显著的。

第四个是 abtest 专项治理,abtest 任务的特点是实验数据量大,任务复杂耗资源。当前正在推进 ab 系统的升级改造,天秤系统将会代替掉老的 ab 系统,正好趁着这个机会把老的任务和存储进行下线。当前这个治理事项正在推进过程中,还有其他类似的这种产品换代的事项也会按专项进行推进。

4.6 模型设计层面 -“三度”指标治理

22 年我们在模型设计层面引入了“三度”指标的概念,通过一系列指标在进度 健康度 价值度上通过数值化来衡量我们模型建设的一个合理度。

大数据存储难点_大数据怎么存储_大数据数据存储

覆盖率和闲置率是针对 ods 表利用率的一个衡量。通过对 ods 层表的治理可以进一步提升覆盖率,降低闲置率。这个过程中我们可以下线大量的无效 ods 表以及相应的任务。

复用率和穿透率是用来反馈我们 cdm 层表引用健康度情况,目前通过一系列的治理。复用率已经又 30%提升到了 60%,穿透率由 20%下降到了 10%。

资产规范率和资产引用率是针对我们 cdm 层表的规范化情况的一个衡量,这两个指标我们是保持在 85%以上,并且通过一系列的规范落地,指标会逐步提升。

大数据存储难点_大数据数据存储_大数据怎么存储

通过三度指标的一个治理,可以清理掉大量无效的任务和表,在存储资源和计算资源上可以减少不少成本。

4.7 数据处理层面 - 计算治理

计算治理当前阶段主要是针对计算引擎升级做治理。

云音乐集群是在 21 年年中上线了 spark3 执行引擎,经过大半年的使用,我们确实在 spark3 上体验到了非常棒的效果,网易数帆大数据团队的同学也在 spark3 上进一步做了大量的优化,例如 AQE 增强优化、zorder 功能以及 shuffle 阶段采用 zstd 压缩算法。为了能够更好的兼容升级过程,大数据团队也在 spark 引擎上内置了大量优化参数。当前 spark3 引擎在计算资源、存储资源、小文件问题上获得了大幅的提升。在这个背景下我们在 22 年 Q2 阶段开始任务迁移至 spark3 的专项。涉及的迁移事项有

每一项在节省资源上都获得了巨大的提升。

项目成果5.1 成本收益

经过一系列的治理动作,我们在存储和计算方面获得了颇丰的收益。

存储上

计算上

5.2 治理资产沉淀

在整个治理过程中我们也将方法论和治理思路沉淀了一系列的可视化监控看板和治理跟进工具,确保整个治理事情是有序进行并且过程可控的。

可视化监控看板方面,

大数据怎么存储_大数据数据存储_大数据存储难点

针对每一项治理,我们都有产出相关的跟进工具,例如 个人指标治理报告、临时表治理监控报告、“三度”指标治理列表、推荐归属治理监控、下线治理报告、任务升级跟踪报告等等

5.3 规范沉淀

未来展望

数据治理是一件长期并且持续要进行的事情,如何达到更好的治理效果?我们整个治理过程遵循理念是:从分散到集约、从被动到主动到自动、从经验到智能。在这个理念的基础上,我们的治理是按事前、事中、事后三个步骤管理治理事项。其中最为重点的是事前事项,事前的动作都是预防性的动作,预防做好、事后无忧。

事前:我们在推进的动作有,推广数据开发规范,推广数仓资产白皮书的使用,推进猛犸产品优化功能迭代,控制好上线审核机制等等。

事中:针对事前没有遵循规范或者遗漏下来的问题,在事中我们会丰富各种治理监控指标工具,及时发现并反馈问题。

事后:事后我们也会产出各项治理指引报告,给出治理理由、治理方案,并同步提供更便捷有效的治理工具。

事中和事后的动作都是在为事前的规范事项提供思路,进一步推进治理的自动化和智能化。接下来我们会在自动化和智能化上发力,让我们整个数据能够在完善的系统化环境中发挥数据价值和业务价值。

结语:以上是对云音乐数据治理实践的分享,在这里感谢网易数帆大数据团队对我们的各种支持。

(编辑:鹰潭站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!