客户案例:数仓规范化-菜鸟数据模型管理实践(三)| 学习笔记

本文涉及的产品
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 快速学习客户案例:数仓规范化-菜鸟数据模型管理实践。

开发者学堂课程【智能数据建模训课程 :客户案例:数仓规范化-菜鸟数据模型管理实践(三)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1223/detail/18312


客户案例:数仓规范化-菜鸟数据模型管理实践


四、 总结&展望

1. 菜鸟数据模型管理建设成果

上述是在建模过程中比较核心的共同点以及遇到的问题,实际上建模平台合作研发有一年多的时间,现在已经集成了很多功能,从创新性上来说,第一个把数仓规范和建模实操衔接,以前的规范不再像是挂在墙上的告示一样,有的人遵守,有的人不遵守,此时通过此建模平台可以把建模规范和建模实操衔接起来,提供了多种提效的便捷开发功能,多表克隆, Excel 的操作等等,使用此平台不会影响研发效率。第三个是不同视角的大图,从研发的视角,从业务方使用的视角提供一些大图的功能。

菜鸟整个实验下来,实际上有六点可能是其核心价值。首先从规范性的角度来说,辅助数据体系的规范化建设能让规范落到实处,同时全部逆向明细层模模型数据,另外是降本方面,上述提及过,末端的业务实际上在使用建模平台时需要进行逆向,在逆向时会发现很多历史的,不规范的表,或者需要合并的一些表,或者已经没有下游访问的表,实际上此时可以让此模型下线,物理表删除,脚本保留,整个过程中末端业务大概下限了15%的模型表,因此降本的方面效果比较明显。第三个是沉淀,建模是把线下的过程搬运到线上,有助于我们沉淀核心资产同时还能提效,减少了人员沟通成本,提升了研发效率,取得了多种提效的并列开发功能。实际上使用此工具并不会影响效率,整体上来说,末端的使用过程中提效大概占比30%左右,接下来是多样性,实际上数仓建设的过程中,有的时候是自下向上,有的时候是自上向下,即面临不同的场景,从0~1规范化建设,但是在开发过程中有一个小的需求等等,可能是一个逆向开发的过程,都可以在此建模平台上实现。然后就是,末端和公共团队都在全员使用,计划每年菜鸟都会全力使用此数据建模平台。

菜鸟数字数仓团队从2020年开始与 Dataworks 团队不断共建智能数据建模产品,从最初版简单地录入系统到集成逆向建模,多表克隆、多种引擎的代码模式,Excel 交互模等功能,极大的提升了建模规范和研发效率,成为菜鸟落地数仓规范的统一平台。

image.png

2. 建设成果展示

如下图是整个建设过程中菜鸟的一些建设成果,即之前提及到的分层划域等。

image.png

3. 菜鸟数仓管理体系建设计划

如下是建模平台中最终希望集成的功能,即数据模型健康评估体系。从五个角度展开,第一个是研发的规范性,包括命名规范,注释规范,SQL 使用规范,数据类型规范;第二个是数据质量,主键规范,数据波动,数据异常,比如今天的表可能有十条数据,明天有100条数据,此波动是否在合理的业务波动范围内,数据是否有异常,还有变更测试,工单处理;第三个是计算存储健康分,是否简单加工,无下游,模型表是否是长周期,长周期即表的生命周期,有些表日常的访问范围可能是近三个月的数据,但是若保留了近10年的生命周期,此时可以调整其生命周期,数据倾斜;第四个是稳定性健康分,稳定性健康分对这块影响较大,因为菜鸟对整体数仓产能是基线机制和值班机制,基线是否破线?延迟是否告警?如此会影响值班过程,当前的起夜率,当前受伤出现的问题,出现的延迟,还有是外部依赖;第五个是通用性健康分,包括复用度和完善度,复用度是模型表下游访问情况怎么样,完善度是表的描述是否丰富,当业务人员拿到表之后是否可以理解,还有是模型的血缘相似度等等。此上是后续在数仓建设中希望搭建的整体模型体系。

image.png

基于以上来促进模型的升级迭代,最终实现模型管理的目的。

4. 提问回答

在评论区随机抽取问题,首先第一个问题是:“如上建模是基于 Dataworks   做定制开发吗?”老师回答:“内部版本和外部版本大体共同点是相同的,内部版本有一些特定的功能,但是两者做了很多共件,主要还是使用工具为主。”

第二个问题:“历史数据有变动的情况下每一层应该如何处理?”老师回答:“对于数仓而言,历史数据的波动实际上是不可避免的,比如快递业务来说,物流始终是在变化的,世界上收藏中 DI 表是一个全量(每一次全量或每一次增量),对于历史上变化非常频繁的建议做一次全量表的设计,如果说数据变化不是特别频繁,比如只最近90天在变动,实际上可以做一个每次增量,每次增量不只更新昨天的数据,而是更新近90天的一个数据,这可以根据自己的业务波动情况去选择合适的设计。”

第三个问题:“模型是如何打分的?怎么控制数场SQL规范?开发人员写 SQL 容易出现跨层依赖?”老师回答:“ Dataworks  提供了很多检查器的功能,其实致力于开发检查器的功能,可以监测到很大一部分的数据问题,第一是如何检测规范,第2个是如何评估模型好坏,上述提及是从5个方面阐述,主要是以规范和成本,后面要看模型的稳定性和通用型,其实模型打分是从这几个维度综合起来的。打分的目的是让模型的负责人不断的完善模型,没有模型打分,很难推动模型负责人去完善,因此要基于这几个维度对模型做一个综合评价。”

第四个问题:“正向数据模型只是建表结构吗?那建模后如何灌入数据以及如何与宽表数据进行打通?”老师回答:“其实正向建模并不是只建一个表结构,实际上建模过程中要经历三个阶段,一个是概念,一个是逻辑,一个是物理,这三个阶段并不是只建一个表结构,或者只建一个模型,需要把模型进行物理化。模型物理化之后,让这张表进行数据灌输,因此不能单单理解正向建模是一个数据建模过程,后续还有很多 ETL 开发功能在里面,补充说明:建模首先需要管控模型,其代码是两件事,首先要保证模型的健康情况,比如模型是否有跨域情况,是否有不稳定的字段,不稳定的数据,设计者主要是希望保证前期在模型的设计上,每张表的定义上,每张表的含义是什么,这是需要了解到的,后续脚本的开发与模型是前后关系,先有模型,后有脚本上的开发。”

相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
1月前
|
SQL 分布式计算 数据挖掘
加速数据分析:阿里云Hologres在实时数仓中的应用实践
【10月更文挑战第9天】随着大数据技术的发展,企业对于数据处理和分析的需求日益增长。特别是在面对海量数据时,如何快速、准确地进行数据查询和分析成为了关键问题。阿里云Hologres作为一个高性能的实时交互式分析服务,为解决这些问题提供了强大的支持。本文将深入探讨Hologres的特点及其在实时数仓中的应用,并通过具体的代码示例来展示其实际应用。
161 0
|
3月前
|
DataWorks 负载均衡 Serverless
实时数仓 Hologres产品使用合集之如何导入大量数据
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
3月前
|
搜索推荐 OLAP 流计算
OneSQL OLAP实践问题之基于 Flink 打造流批一体的数据计算平台如何解决
OneSQL OLAP实践问题之基于 Flink 打造流批一体的数据计算平台如何解决
55 1
|
3月前
|
SQL 存储 OLAP
OneSQL OLAP实践问题之Flink SQL Gateway的功能如何解决
OneSQL OLAP实践问题之Flink SQL Gateway的功能如何解决
37 1
|
3月前
|
SQL 消息中间件 OLAP
OneSQL OLAP实践问题之BIGO ClickHouse实现二阶段提交事务机制如何解决
OneSQL OLAP实践问题之BIGO ClickHouse实现二阶段提交事务机制如何解决
60 1
|
3月前
|
SQL 消息中间件 OLAP
OneSQL OLAP实践问题之实时数仓中数据的分层如何解决
OneSQL OLAP实践问题之实时数仓中数据的分层如何解决
55 1
|
3月前
|
SQL DataWorks 数据库连接
实时数仓 Hologres操作报错合集之如何将物理表数据写入临时表
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
3月前
|
SQL 分布式计算 关系型数据库
实时数仓 Hologres操作报错合集之指定主键更新模式报错主键数据重复,该如何处理
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
3月前
|
SQL 分布式计算 MaxCompute
实时数仓 Hologres产品使用合集之如何在插入数据后获取自增的id值
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
实时数仓 Hologres产品使用合集之如何在插入数据后获取自增的id值
|
3月前
|
SQL 消息中间件 OLAP
OneSQL OLAP实践问题之BIGO加速离线计算任务如何解决
OneSQL OLAP实践问题之BIGO加速离线计算任务如何解决
39 0