历史版本20 :指标/维度加速 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

FineBI 版本功能变动
7.0.1关联支持预计算

1.2 应用场景

对于模型中心添加的指标和维度支持手动加速,对于一些数据量大、计算逻辑复制的字段加快计算速度,提高产品性能,优化用户体验。

常见加速场景:

  • 跨表计算加速,详情见:关联加速

  • DEF计算

  • 嵌套计算

2. 功能说明编辑

2.1 功能入口

  • 指标加速

在「指标管理」界面,点击指标,选择指标加速「开启加速」。如下图所示:

1.png

  • 维度加速

2.png

2.2 预计算逻辑

指标加速:取公式中 最大粒度 的 静态 明细计算指标 进行预计算。

1)静态指标

特征静态指标动态指标
定义

其计算结果固定,不受拖入的维度变化和过滤条件的影

其计算结果会根据拖入的分析维度和过滤条件动态变化
注:过滤条件指过滤组件、图表间的联动、钻取操作,以及组件自身的内部过滤条件。
分析维度

不受影响。无论按什么维度分析,其结果都保持不变

(例如,始终是公司销售总和)

会受影响。结果会按分析维度进行分组计算,如聚合函数、 def_add/def_sub 输出的指标

(例如,拖入「区域」计算每个区域的销售额)

过滤条件不受影响。会忽略所有过滤条件,始终返回全体范围的计算结果会受影响。结果会根据当前生效的过滤条件进行重新计算

2)最大粒度:

  • 例如指标 sum_agg((单价*折扣)- 系数) ,其中 sum_agg() 是聚合函数不能预计算,但是(单价*折扣)-系数是静态的,因此这部分是可以预计算;

  • 最大粒度值将(单价*折扣)-系数=字段X 进行预计算,指标应用时实时计算 sum_agg(字段X)来尽可能减少原指标的计算量;

3)明细计算指标:

  • 即落在明细视图的计算,包括a+bdef(sum(a))+bleft(a,4),不包含def(sum(a))这样静态但是是聚合视图的计算。

4)特殊情况

  • 明细指标不受行权限影响,DEF 聚合计算的指标会受到行权限影响导致所有计算字段都变成动态指标。

  • 先依据指标创建者权限过滤,然后进行计算

2.3 注意事项

  • 模型底表为最简表时暂不支持预计算。

  • 直连环境下的指标/维度不支持加速。

2.4 预计算示例场景


大类细分案例具体案例预计算部分剩余计算
指标静态明细指标
销售额*折扣全部公式
def(sum_agg(销售额*折扣),[],[CLEAN("ALL")])+成本全部公式
静态聚合指标def(sum_agg(销售额*折扣),[],[CLEAN("ALL")])销售额*折扣def(sum_agg(字段),[],[CLEAN("ALL")])
动态明细指标

def(sum_agg(销售额))+成本

全部公式

def_add(sum(销售额))+成本

全部公式
def_sub(sum(销售额))+成本全部公式
动态聚合指标sum_agg(销售额*折扣)销售额*折扣sum_agg(字段)
def(sum_agg(销售额*折扣))

销售额*折扣

def(sum_agg(字段)
维度静态明细维度(单表)left(合同编号,4)全部公式
year(销售日期)

全部公式

if(def(sum_agg(销售额*折扣),[],[CLEAN("ALL")])>100 ,"高",“低”)全部公式
静态明细维度(多表)if(def(sum_agg(销售额*折扣),[],[CLEAN("ALL")])>100 ,"高",“低”)销售额*折扣if(def(sum_agg(字段),[A,B],[CLEAN("ALL")])>100 ,"高",“低”)
动态明细维度if(def(sum_agg(销售额*折扣))>100 ,"高",“低”)销售额*折扣if(def(sum_agg(字段))>100 ,"高",“低”)

DEF()计算相关说明:

DEF()常规计算结果=动态聚合指标

DEF()及其他分析函数+其他明细字段=动态明细指标

DEF()+CLEAN("ALL")=静态聚合指标

DEF()+CLEAN("ALL")+其他明细字段=静态明细指标

3. 操作步骤编辑

3.1 开启加速

3.png

3.2 查看加速状态

「提交」后对字段进行加速,数据更新完成后,可查看加速状态。如下图所示:

4.png