指标系统计算架构设计

本文探讨了指标系统计算架构的设计,针对过往实现中的高耦合问题,提出了以指标为单位的低耦合高内聚解决方案。计算架构分为基础数仓层、指标计算层、指标存储层和报表层,确保指标的复用性和系统稳定性。每个指标对应单独的表存储,解决了字段差异和维护成本高的问题。
摘要由CSDN通过智能技术生成

前言

前一篇《指标管理系统设计》,我讲了指标体系要解决的问题,以及指标系统宏观搭建和模型上的设计。其中对具体实施时的计算存储架构说的不是特别清楚。这一篇,我将着重介绍指标计算架构的设计。

过往的一些实现问题

指标体系跟标签体系其实有些类似,都有很多的字段,甚至在某种程度上,他们还可以成为依托关系。比如标签系统可以使用指标体系作为数据基础,当然这是题外话。这里列举下我之前参与的标签系统和一些报表开发所存在的问题。

下图是一个标签系统的的标签加工逻辑片段,这个脚本一次性的将标签体系中的所有标签挨个计算出来

下图是一个报表sql的脚本片段,它也一次性计算出了该表报的多个字段,有很复杂的加工逻辑

从软件设计的角度来看,上述的开发方式耦合度很高,这会带来一些列的问题

  • 所有逻辑耦合在一起,后续阅读理解很困难
  • 要下线、新增、更新一个指标/标签需要更改原来的脚本,代价较高,出现bug时还会影响之前的指标/标签
  • 多个报表拥有相同口径的指标时,该指标的加工逻辑需要在多个报表中重复编写,修改时也需要多处修改,难免挂一漏万

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值