大数据仓库建设质量度量体系构建【已实践】

本文探讨了大数据仓库建设中常见的问题,并提出了一套包括完善度、复用度、规范度、资源度在内的质量指标体系。通过任务名称规范和计算任务资源消耗,实现了数仓的优化改造。同时,分享了小表广播、降低SQL复杂度、减少GroupBy维度以及MapReduce到Spark升级等策略,显著提升了任务产出效率。最终,展示了数仓质量改进的实际成果,包括Spark任务占比增加和任务平均产出时长缩短。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 大数据仓库较差的建设

先来回忆一下数仓建设经常遇到的一些坑 或 现象~


 二、构建数仓建设质量指标体系

        还在为如何评估数仓建设质量而犯愁么?本文在常规的分层建设、划分主题外将带大家一起探索出了一条可在大、小团队均可实施落地的数仓建设质量体系构建之路。

        为此,从完善度、复用度、规范度、资源度全面衡量数仓建设质量。那问题来了,如何构建这4个核心指标呢。如下表所示:

        现在有了数仓质量的度量指标体系,新问题也来了。现有的任务及库表在线上运行及相互依赖引用极多,直接贸然改动可能引起线上问题!!!那该如何“落地”呢?

        库表名称改动涉及的面太大,那可以通过任务名称进行改动,例行化每天统计所有的任务消耗的资源;然后放长时间看趋势就可以观察到数据任务的变化趋势

1、任务名称规范

所属于分层 + 最大引用层 + (主题)(模块)(任务) + 任务调用脚本

  • 示例1:dws-dwd-事件轻度聚合表-dws_detail_app_log_di

2、例行化计算所有任务消耗资源

通过属于分层、最大引用层计算得出跨层引用,如:ads 直接依赖于dwd、ods 层则算跨层引用;


 三、战略战术性进行任务改造

某个数仓任务改造效果示例:

Tip1: 小表广播,MapJoin加快产出

 Tip2: 降低SQL 嵌套层数,加快产出

 Tip3: 降低Group By 维度,加快产出

 

 Tip4: MapReduce 升级为 Spark,加快产出


 

四、通过数仓质量度量体系建设成果

如下图:

  1. Spark 任务占比逐步提升;
  2. MapReduce 任务占比逐渐递减;
  3. 任务平均产出时长在逐步缩短;


 文章最后,给大家推荐一些受欢迎的技术博客链接

  1. JAVA相关的深度技术博客链接
  2. Flink 相关技术博客链接
  3. Spark 核心技术链接
  4. 设计模式 —— 深度技术博客链接
  5. 机器学习 —— 深度技术博客链接
  6. Hadoop相关技术博客链接
  7. 超全干货--Flink思维导图,花了3周左右编写、校对
  8. 深入JAVA 的JVM核心原理解决线上各种故障【附案例】
  9. 请谈谈你对volatile的理解?--最近小李子与面试官的一场“硬核较量”
  10. 聊聊RPC通信,经常被问到的一道面试题。源码+笔记,包懂
  11. 深入聊聊Java 垃圾回收机制【附原理图及调优方法】

欢迎扫描下方的二维码或 搜索 公众号“大数据高级架构师”,我们会有更多、且及时的资料推送给您,欢迎多多交流!

                                           

       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不埋雷的探长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值