半累加指标
Aloudata CAN 支持用户在基础指标中为一个指标开启半累加指标标识。
定义
半累加指标指的是在部分维度上具备累加性(即可以进行求和、平均等聚合操作),而在其他维度上不具备此属性的指标。例如,库存数量可以在产品和地区维度上进行累加,但在时间维度上直接累加则不适用,因为库存通常表示某一特定时点的快照。
半累加指标的应用场景
库存数量
库存数量是典型的半累加度量。在产品和地区维度上,库存可以累加得出总库存。然而在时间维度上,直接累加不同时间点的库存会导致结果失真,因为各时间点的库存数据是相互独立的快照。例如,2023年1月的库存与2023年2月的库存不应直接相加。
银行账户余额
银行账户余额也是半累加度量的例子。在账户类型和地区维度上,余额可以累加。然而,在时间维度上,余额通常仅代表某一时点的状态,无法通过简单累加得到总余额。例如,不同月份的账户余额不应直接相加来反映总余额。
配置半累加指标
半累加指标的配置需要在基础指标的配置中开启半累加指标配置。

| 内容 | 说明 |
|---|---|
| 不可累加维度 | 必选,支持多选。当聚合发生时,指标在哪些字段上无法进行聚合。会在聚合前对不可累加维度进行筛选,选取最小或最大的值用来做聚合。(期末一般选取最大值,期初一般选取最小值) |
| 窗口分组 | 非必选,支持多选。当聚合发生时,按照窗口分组的维度将数据先进行分组,再选取最小或最大值。 |
| 窗口选择 | 选择使用不可累加维度在窗口分组内的最大/最小值的筛选结果计算出聚合结果。 |
示例解析
接下来参考一个案例,在 Aloudata CAN 中使用 库存表 来计算 期末库存 指标。指标定义如下:

对于上述数据集,我们创建指标 [期末库存] ,用户在分析数据时,如果按月查看时,比如 7 月份的数据应只计算 2024-07-31 当日的库存数量进行累加求和,而不能将 2024-07-01 至 2024-07-31 多日的数据加和。但是我们发现在计算指标时,我们对 [仓库编号] 和 [商品编号] 进行了聚合的操作,因为不同的仓库和商品之间他们的库存是可以累加求和的。
说明
所以我们认为,指标 [期末库存] 是半累加指标
指标在 [日期] 维度上无法进行数据的累加,需要指定筛选出期末的数据进行加和。
指标在[product] 和 [region] 维度上可以进行数据的累加。" 所以我们认为,指标 [期末库存] 是半累加指标
使用半累加指标
指标 [期末库存] 开启了半累加指标,并有如下设置
在指标看板中使用指标,我们使用 [指标日期(月)] 维度查看 [期末库存] 时,查询结果将返回 2列。

其中 2024-07 单元格对应的结果是基于明细中标蓝部分的数据求和计算而得。
