治理效率提升77%!揭秘基于DataLeap实时健康分的最佳实践
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群
背景
某企业实时数仓团队通过数据收集、整合、计算和存储构建实时数据仓库,为企业提供快速、准确、可靠的实时数据分析和决策支持。目前该实时数仓团队已运行了上万的实时任务,依赖的组件繁多(例如:Flink、Yarn、Abase、Doris等)、开发人员众多 、开发习惯和经验程度参差不齐等各类主客观因素,导致任务稳定性、资源浪费等问题频出。因此,任务治理已是势在必行,但纵观整个治理过程,仍存在以下矛盾:
1. 业务阶段与数据治理的矛盾
业务阶段大致可以分为两个阶段:发展期,成熟期。发展期: 产品不断迭代,需求不断新增,实时任务持续增加。在此时期同时也是与业务建立信任的阶段,实时任务的质量会被重点关注,成本控制的优先级小于质量保障。成熟期: 资源预算增量越来越少,业务需求数量不降反升,在此成熟阶段实时团队不仅要做好数仓质量保障,也需关注资源成本的合理分配和利用。
2. 人力成本与数据治理的矛盾
实时任务的治理成本由于其技术复杂性和在线运行等属性导致治理要求一直较高,人力经常在数据治理和业务需求之间徘徊。由于实时任务治理必将占用业务支持精力,如何提高治理人效,降低治理成本,释放个人精力,也是大家特别关注的点。
3. 治理问题与可评价的矛盾
通常实时任务可以通过一定的规则筛选出存在问题的任务,并进行集中的运动式治理。这种方式虽然可以一定程度解决阶段性治理问题,但是无法量化任务的健康程度以及待治理的紧迫程度,使得治理无法持续开展。因此,需要有一个可评价的体系对数仓健康程度进行评价,并通过评价后的分数持续推动治理。
走进DataLeap实时健康分
DataLeap实时健康分是一套集治理评价、目标制定、治理驱动、治理提效、效果量化于一身的一站式实时数据治理解决方案,满足精准治理的诉求,降低治理成本,保障数据整体规范性、稳定性,逐步成为公司内评价团队实时数据治理水平和资源分配的风向标,让治理成为一件简单高效的事。
实时健康分方案大致可以分为四个模块:元数仓建设、治理项沉淀、分数计算、平台治理。
1. 元数仓建设
健康分元数仓指的是任务相关的元数据信息,它是健康分加工过程中依赖的底层数据,包括任务的稳定性、质量、规范性、成本以及SLA等。
元数据类型 | 描述 |
---|---|
稳定性元数据 | gc、failover、cp、state、反压、倾斜等 |
质量元数据 | 时效性、准确性、指标监控覆盖度等 |
规范性元数据 | 任务配置、组件配置、报警配置等 |
成本元数据 | 队列资源、计算资源、存储资源等 |
SLA 元数据 | 组件SLA、数据SLA、任务SLA 等 |
2. 治理项沉淀
治理项规则是Flink团队通过引擎视角和各个BP实时数仓团队通过业务视角积累沉淀出的一套通用规则,通过这套通用规则可达成快速复用的作用,可以快速发现实时任务中存在的成本浪费和质量隐患问题。现阶段,越来越多的团队加入实时治理,贡献更多的治理经验,总结出更通用的规则,吸引更多的团队,从而形成正向循环。目前质量项规则14项,成本项规则2项。
3. 分数计算
名词解释:
- 治理项权重: 根据治理项规则的重要性,治理项权重不同,例如:"CPU资源浪费"=40;"队列配置不规范"=15;
- 任务等级系数:每个任务等级会有不同系数,等级越高,系数越高,对分数的影响越大,例如:D1/D2=10;D3=5;D4=3;D5=1
目前实时健康分涵盖质量分和成本分两套评价体系,其结果等于质量分与成本分的均值。每套评价体系采用扣分制算法,计分逻辑简单、可解释性强,能够实现细到任务、个人粒度,粗到部门、公司粒度的分数计算结果。
- 质量分计算
口径:$$\frac {\sum(命中治理项的任务等级系数)}{\sum(全部任务的任务等级系数)} *治理项权重$$
例如:
- 一共有1000个任务,$$\sum(全部任务的等级系数)=2500$$
- 其中有100个任务命中了任务未配置报警,$$\sum(命中治理项的任务等级系数)=500$$
- 未配置报警治理项(治理项权重:15)扣分为500 / 2500 * 15 = 3分
- 质量分=100-3=97分
- 成本分计算
口径:$$\frac {\sum(命中治理项的任务CPU分配数)}{\sum(全部任务的任务CPU分配数)} *治理项权重$$
例如
- 一共有1000个任务,$$\sum(全部任务的任务CPU分配数)=25000$$
- 其中有100个任务命中了CPU资源浪费,$$\sum(命中治理项的任务CPU分配数)=10000$$
- CPU资源浪费治理项(治理项权重:40)扣分为10000 / 25000 * 40 = 16分
- 成本分=100-16=84分
4. 平台治理
实时健康分依托平台提供高效的治理能力,其中包括治理全景、治理工作台以及治理辅助三个模块:
- 治理全景:提供健康分趋势、成本项治理趋势、待治理问题分布等看板,观察健康程度趋势。
- 治理工作台:提供治理项明细、推荐参数、一键治理、事后监控等工具,提高治理效率。
- 治理辅助:提供治理播报卡片、自定义场景治理辅助工具,完善治理场景。
一级项 | 二级项 | 描述 |
---|---|---|
治理全景 | 健康分程度 | 展示各个业务线或个人当前健康分程度 |
健康分趋势 | 展示健康分变化趋势,其中也包括成本分和质量分的变化趋势。 | |
成本项治理趋势 | 展示成本项已治理、待治理、已节约CPU和待节约CPU趋势。 | |
质量项治理趋势 | 展示质量项规则命中待治理任务数和已治理任务数趋势。 | |
待治理问题分布 | 展示各个规则命中的待治理问题数、扣分情况。 | |
治理工作台 | 治理项明细 | 展示待治理任务列表明细,可通过规则项、任务等级、任务类型、任务owner等进行筛选展示 |
治理参数推荐 | 给每一个任务命中的治理项给出优化参数建议。 | |
批量一键治理 | 通过治理参数推荐批量完成多个任务的治理。单任务治理人效从15min提升到30s | |
事后监控大盘 | 治理完成之后通过推动治理任务的lag监控大盘来观察任务运行情况。 | |
治理辅助 | 治理播报卡片 | 每日给对应owner推送治理卡片,播报当前成本分、质量分、成本待治理项数、质量待治理项数和昨天已治理信息等。 |
自定义场景治理 | 给业务提供一个可自定义治理项的能力,满足业务个性化非通用的治理场景。 |
实时治理专项
某企业数据平台存在降本增效和稳定性保障诉求,日常任务存在CPU使用浪费、未配置报警、队列使用不规范、CPU使用率过高等问题。因此,该实时数仓团队联合DataLeap团队成立治理专项。专项设立虚拟小组与治理poc机制,自上而下拆分治理目标,快速响应治理阻塞问题,推动治理进度,协调治理资源,最终保障制定目标达成。
虚拟小组成员时刻关注业务线健康程度,评估目标完成风险,发现治理进度存在风险后及时与业务治理poc沟通治理过程中遇到的困难和阻塞,并由虚拟小组开发新的工具或制定新的治理方案,帮助业务治理poc克服治理困难,推动各业务方向达成既定季度目标。
1. 实时成本专项
该数据平台实时任务存在大量资源浪费问题,资源浪费任务数3.8k+,待治理CPU资源27.9w+core。基于资源浪费严重问题,成立实时成本专项,形成虚拟支持小组,深入业务,协助业务进行资源浪费治理,累计治理资源浪费任务1.15k,待治理CPU资源27.9w+core -> 17.7w+core。
2. 实时质量专项
同时,该数据平台实时任务存在多种质量稳定性隐患,例如:CPU使用过高、任务未配置报警、队列使用不规范、数据倾斜等问题。基于稳定性隐患问题,多方联合形成实时质量专项,沉淀出11个质量项规则,帮助企业数据平台发现3k+质量问题,推动数据平台进行质量治理,完成1.1k次质量治理。
3. 季度治理收益
指标解释:
- 一键治理时长提升率:一键治理将治理时长从15min降到0.5min,因此提升率96.5%
- 一键治理场景覆盖率: $$\frac {一键治理问题数}{所有治理问题数} $$
- 治理效率:一键治理时长提升率*一键治理场景覆盖率
收益如下:
- 该数据平台Q3季度健康分从80.57(新上9个治理项导致分数下降)-> 81.85分
- 质量项治理问题1.11k+(其中“任务未配置报警”问题清零、“CPU使用率过高”治理700+)
- 一键治理场景覆盖率80%,一键治理时长提升率96.5%,治理效率提升77%
点击跳转大数据研发治理套件 DataLeap了解更多
治理效率提升77%!揭秘基于DataLeap实时健康分的最佳实践的更多相关文章
- atitit.基于http json api 接口设计 最佳实践 总结o7
atitit.基于http json api 接口设计 最佳实践 总结o7 1. 需求:::服务器and android 端接口通讯 2 2. 接口开发的要点 2 2.1. 普通参数 meth,p ...
- 基于AWS的云服务架构最佳实践
ZZ from: http://blog.csdn.net/wireless_com/article/details/43305701 近年来,对于打造高度可扩展的应用程序,软件架构师们挖掘了若干相关 ...
- 基于AngularJS的前端云组件最佳实践
AngularJS是google设计和开发的一套前端开发框架,他能帮助开发人员更便捷地进行前端开发.AngularJS是为了克服HTML在构建应用上的不足而设计的,它非常全面且简单易学习,因此Angu ...
- 基于kubernetes集群的Vitess最佳实践
概要 本文主要说明基于kubernetes集群部署并使用Vitess; 本文假定用户已经具备了kubernetes集群使用环境,如果不具备请先参阅基于minikube的kubernetes集群搭建, ...
- 转发:基于Lerna打造多包管理最佳实践之道
最近在看vue-cli的源码部分,注意到这一个仓库下维护了多个package,很好奇他是如何在一个repo中管理这些package的. 我们组现在也在使用组件库的方式维护项目间共用的业务代码.有两个组 ...
- 基于微服务的DevOps落地指南 交付效率提升40%
基于微服务的DevOps落地指南 交付效率提升40% 2015-2016年,珍爱线下门店已新增覆盖城市9个,与此同时,CRM系统大小故障却发生了数十起... ... 珍爱网是以“网络征选+人工红娘”模 ...
- DevOps Workshop | 代码管理入门:基于代码扫描实现团队效率提升
CODING「DevOps Workshop 学习营地」持续火热进行中! 在这里,你可以轻松实践 DevOps 全流程.体验高效的云端开发.赢取精美礼品--第二期大奖「戴尔 U2718Q 显示器」将于 ...
- jQuery效率提升建议
jQuery简洁通用的方法集把编码者从繁重的工作中解脱出来,也拉低了进入javascript的门槛,初学者对浏览器兼容性一无所知的情况下,几行代码就可以写出超炫的特效.网上有一篇文章转载比较泛滥,已经 ...
- jQuery 效率提升建议
jQuery简洁通用的方法集把编码者从繁重的工作中解脱出来,也拉低了进入javascript的门槛,初学者对浏览器兼容性一无所知的情况下,几行代码就可以写出超炫的特效.网上有一篇文章转载比较泛滥,已经 ...
- K8s 集群节点在线率达到 99.9% 以上,扩容效率提升 50%,我们做了这 3 个深度改造
点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击上方图片即可下载! 作者 | 张振(守辰) ...
随机推荐
- Linux MIPI 摄像头驱动框架编写(RN6752解码芯片)
一.概述 在编写 MIPI 摄像头驱动之前,需要先了解 Media 子系统的链路关系,这里我就不介绍了,需要的看我之前的笔记:Linux Media 子系统链路分析. 理解 Media 子系统链路关系 ...
- Android RTL 语言适配
RTL 语言,即 right to left language,也就是右对齐的语言,与一般语言按照左对齐的方式不同,需要进行特别适配. AndroidManifest.xml 文件中,增加 andro ...
- MySQL运行在docker容器中会损失多少性能
前言 自从使用docker以来,就经常听说MySQL数据库最好别运行在容器中,性能会损失很多.一些之前没使用过容器的同事,对数据库运行在容器中也是忌讳莫深,甚至只要数据库跑在容器中出现性能问题时,首先 ...
- docker构建打包java项目
docker构建打包java项目 简介 本项目用于 研究和实践 docker的工作流部署发布 查看github源码 技术栈 spring-web (RESTAPI 请求交互) redis (用于实验 ...
- excel表格怎么设置数据超链接?
在Excel表格中,可以设置超链接来快速导航到其他单元格.工作表.文件.网页等.下面我将详细介绍如何设置数据超链接. 1. 在Excel表格中选择要添加超链接的单元格或文本. 2. 使用鼠标右键点击选 ...
- 🎉开发者的福音:TinyVue 组件库文档大优化!类型更详细,描述更清晰!
你好,我是 Kagol. 前言 从今年2月份开源以来,有不少朋友给我们 TinyVue 组件库提了文档优化的建议,这些建议都非常中肯,我们也在持续对文档进行优化,并且从中总结出了大家对于文档优化的一些 ...
- MySQL运维3-分库分表策略
一.介绍 单库瓶颈:如果在项目中使用的都是单MySQL服务器,则会随着互联网及移动互联网的发展,应用系统的数据量也是成指数式增长,若采用单数据库进行存储,存在一下性能瓶颈: IO瓶颈:热点数据太多,数 ...
- DHorse v1.5.0 发布,基于 k8s 的发布平台
版本说明 新增特性 支持同一机器部署多个DHorse服务: 支持Next..NET应用部署: 优化Node.Nuxt应用构建和部署的性能: 默认使用fabric8客户端与k8s集群交互,可以通过指定参 ...
- VA01/VA02/VA03 销售订单根据定价和步骤校验权限隐藏价格(二)
1.文档说明 1.1.内容回顾 之前发表过相关文章<VA01/VA02/VA03 销售订单根据定价和步骤校验权限隐藏价格>,本篇文章对上一篇文章做补充说明. 第一篇文章是通过拥有权限,则隐 ...
- 在 IIS 上生成经典 ASP 网站
场景:在 IIS 上生成经典 ASP 网站 本文档将指导你完成安装 IIS 和配置经典 ASP 网站的过程. 经典 ASP 是服务器端脚本环境,可用于创建和运行动态 Web 应用程序. 借助 ASP, ...