news 2026/4/3 4:50:51

原子指标计算实现方案详解 | qData 数据中台商业版 · 指标平台

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
原子指标计算实现方案详解 | qData 数据中台商业版 · 指标平台

在数据中台建设过程中,指标是数据资产向业务价值转化的核心载体。
qData 数据中台商业版在产品生态圈中构建了统一的指标平台,通过原子指标作为指标体系的最小计算单元,实现指标的标准化定义、统一计算与可治理管理。

本文将系统介绍qData 指标平台中原子指标的计算实现方案,涵盖业务需求、技术选型、架构流程及关键实现细节。

一、业务需求

围绕原子指标计算能力,指标平台需要满足以下核心业务需求:

1、指标规则配置并自动生成 SQL

通过配置化方式定义指标的计算规则,系统自动生成可执行 SQL,避免人工编写带来的口径不一致问题。

2、支持 1000 条数据试计算

在指标正式运行前,支持基于真实数据的小规模试算,用于快速验证指标逻辑与统计口径。

3、支持指标实时计算

满足实时分析、实时监控等业务场景,对指标数据进行实时计算与输出。

4、支持指标离散计算并进行存储

针对周期性统计场景,支持按调度周期进行离线计算,并将结果持久化存储。

5、适配主流数据库环境

指标平台需兼容多种数据库,包括 MySQL、DM8、Doris 等。

二、技术框架选型

1、计算与调度引擎选型

指标平台统一采用Flink作为计算与调度引擎。

  • (1)支持流式与批式统一计算模型
  • (2)SQL 能力成熟,适合规则化生成
  • (3)数据处理性能高,满足实时与离线场景需求

2、数仓架构选型

指标结果统一落地至Doris构建分析型数仓。

  • (1)面向分析型场景,查询性能优异
  • (2)适合大规模指标数据存储
  • (3)与 Flink 集成成熟,写入与查询效率高

三、原子指标计算整体流程

1、指标规则配置

系统首先对原子指标进行基础信息配置,包括:

  • (1)度量字段
  • (2)计算逻辑
  • (3)数据格式
  • (4)维度信息
  • (5)数据筛选条件

2、规则转化为 Flink SQL

系统根据指标配置规则,自动生成 Flink 可执行 SQL,确保规则定义与执行逻辑一致。

3、试计算判断

  • (1)若为试计算模式
  • (2)系统自动追加近 1000 条数据的筛选条件
  • (3)快速返回计算结果,用于指标校验

4、实时与离线计算判断

  • (1)实时计算:直接触发 Flink 实时任务
  • (2)非实时计算:由后台调度器按配置周期定时执行

5、统一计算执行

无论实时还是离线计算,指标计算流程统一通过 Flink 执行,避免多套计算逻辑并存。

6、计算结果后处理

Flink 计算完成后,结果统一交由后端进行二次处理:

  • (1)维值函数结果整理
  • (2)数据结构封装
  • (3)结果返回前端或进入存储流程

7、离线结果持久化

针对离线计算场景,计算结果需额外进行持久化存储,供后续分析与复用。

四、原子指标计算具体实现方案

1、SQL 自动拼接机制

(1)关联查询

根据数据模型定义,将事实表与对应的维度表进行自动关联查询。


(2)聚合函数配置

通过原子指标计算逻辑配置,自动生成对应的聚合函数。

(3)统计字段配置

明确原子指标的度量字段,作为最终统计对象。

(4)分组字段配置

分组字段仅支持模型结构中定义的维度类型字段和时间类型字段。

(5)数据筛选条件解析

支持交集、并集等多种筛选方式,通过解析 JSON 规则动态生成 WHERE 条件。

(6)生成 SQL 明细解析
系统支持对最终生成的 SQL 明细进行展示,便于排查与维护。

2、任务调度机制

  • (1)配置指标调度周期
  • (2)调度器按周期自动触发 Flink 任务执行

3、指标结果数据结构规范

(1)表生成规则
每一个原子指标最终只生成一张结果表。

(2)表名定义规则

数仓层级 + 指标域代码 + 指标代码 示例:ads_water_order

(3)表结构定义

字段示例:
id、维度1主键、维度1主键名称、维度2主键、维度2主键名称、指标代码

(4)数据含义说明

  • 指标代码字段存储具体统计结果
  • 维度主键来源于维度表中的维键数据
  • 未配置维度时,最终结果为单值指标

4、离线指标数据存储流程

离线计算采用全量重建策略:

  • (1)删除已存在的指标结果表
  • (2)按规则重新建表
  • (3)执行计算结果插入

五、总结

通过该原子指标计算方案,qData 数据中台商业版指标平台实现了:

  1. 指标规则配置化

  2. 指标计算引擎化

  3. 实时与离线统一执行

  4. 指标结果规范化存储

  5. 多数据库环境适配

该方案为后续派生指标、复合指标及指标治理能力建设奠定了坚实基础。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/21 0:16:44

周视图统计-Cordovaopenharmony时间维度分析

一、功能概述 在喝水记录应用中,“按周查看”的需求非常常见。相比单日统计,周视图更能反映用户最近一段时间的整体习惯变化。本篇文章围绕“周视图统计”页面,介绍如何在 Cordova Web 层 以 7 天为一个单位聚合展示数据,并通过 O…

作者头像 李华
网站建设 2026/3/15 23:12:05

Cordova与OpenHarmony其他运动类型支持

欢迎大家加入开源鸿蒙跨平台开发者社区,一起共建开源鸿蒙跨平台生态。 多样化运动支持 除了跑步和骑行,用户还需要记录各种其他运动类型。通过Cordova框架与OpenHarmony的灵活架构,我们可以支持多种运动方式。本文将介绍如何实现对其他运动类…

作者头像 李华
网站建设 2026/4/1 13:57:27

LobeChat投资者关系问答准备系统

LobeChat构建企业级AI助手:以投资者关系问答系统为例 在上市公司与资本市场之间,每一次沟通都可能影响股价走势。当财报季来临,IR(投资者关系)团队往往要面对数百个来自分析师的尖锐提问——“为什么毛利率连续下滑&am…

作者头像 李华
网站建设 2026/4/1 16:38:22

Linux编程网络基础(四)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录一、应用层协议与序列化二、为什么要进行序列化与反序列化三、序列化反序列化的工具四、理解TCP为什么支持全双工五、面向字节流传输与面向数据报传输的异同面向字节…

作者头像 李华