1. 概述
1.1 应用场景
计算行数:单表分析步骤结果限制的行数,比如计算行数限制 1000 万,那么合并表后若数据行数大于 1000 万,就会提示计算行数超限。
计算内存:分析表在计算时所占用的计算资源。数据量较大,计算步骤复杂时,可能会出现计算内存超限的情况。
根据用户实际情况,若数据行数多、列数过多、计算步骤复杂等因素,可能会导致资源超限。
为了帮助用户在遇到这些问题时,可以进行自检调优,现给出优化指导方案,可以根据步骤自行排查进行优化。
1.2 优化方案
下表中列举了资源超限的几种优化方案,本文的 2、3 节将会对这些方案详细讲解。
类型 | 优化方案 |
---|---|
计算行数超限 | 在分析表前添加筛选/分类汇总步骤减少行数 |
不等值合并前提条件:左表行数 X 右表行数 <=1000 万,在使用不等值合并前,请自我检查一下数据量是否超限 | |
拆分分析表,建立有层次的分析 | |
计算内存超限 | 请管理员购买专享节点(8GB+4000万行) |
建议减少冗余的排序步骤,或者尽量让排序步骤靠后执行 | |
左右合并步骤中:
| |
可以在一个「同环比」步骤中一次计算多个指标的同环比,而不是添加多个「同环比」步骤 | |
「删除重复数据」尽量不要全字段去重 |
2. 计算行数超限
2.1 购买计算内存+计算行数
企业基础行数为 1000 万,不可以单独购买行数。可以开通专项计算节点,即可享受更高计算内存与行数(8GB+4000万行)。提交工单后,将会有销售经理为您服务。
2.2 添加分类汇总/筛选步骤减少行数
若单表计算行数超限:
可以在分析表中添加「筛选」步骤,筛选出部分数据进行计算;
可以添加「分类汇总」步骤,对数据进行汇总,减少数据行数后再进行后续计算。
2.3 左右合并(不等值合并)
1)左右合并时,除「等于」之外的合并统称为「不等值合并」。如下图所示:
2)若两表之前需要的是不等值合并,那么前提条件为:左表行数 X 右表行数 <=1000 万。
若不等值合并下提示计算行数超限,请计算一下两表行数相乘是否超过 1000 万。若超过,请减少一下数据量,或使用其他方式进行合并。
2.4 拆分分析表,建立有层次的分析
为了避免在一张分析表中堆积过多的计算操作,请大家尝试建立父子表的结构,逐层递进地进行分析。
1)建议不要在数据源表中添加分析步骤,请单独创建分析表来进行数据清洗的操作;
2)如果多个分析表的前置步骤相同,可以单独创建一张分析表。将这些前置步骤都复制到这张新的表中,在新表的基础上再创建分析表进行分析,减少维护成本。
3)尽量减少在分析表内各图表高级模式下的步骤,如果多个图表的高级模式中有相同的分析步骤,建议将这些步骤放在分析表的主干上进行维护。
详情参见视频:拆分分析表,建立有层次的分析
3. 计算内存超限
3.1 购买计算内存+计算行数
企业基础内存为 2 GB,若您的企业数据量大,计算较为复杂,管理员可以购买专享节点(8GB+4000万行)。提交工单后,会有销售经理为您服务。
3.2 排序步骤
排序这个步骤要遍历表的所有数据,所以会消耗更多的计算时间和资源。
如果您的数据量已经超过了百万行,建议减少冗余的排序步骤,或者尽量让排序步骤靠后执行。
拓展:筛选步骤需要尽量靠前执行。
3.3 左右合并
1)在合并时,请精简合并表的字段,减少无用的字段。避免全选字段合并后,再添加「选字段」步骤。如下图所示:
2)示例:需要根据 A、B 字段将两表合并,不要将 A、B 合并成一个新字段 Z 作为合并依据。
左表字段 | A B C D E |
右表字段 | A B R Y U |
可以在一个步骤中添加多个合并依据,如下图所示:
详情参见文档:添加合并依据
3.4 同环比步骤
可以在一个同环比步骤中,一次计算多个指标的同环比,而不是添加多个同环比步骤。如下图所示:
详情参见文档:多个指标计算同环比
3.5 删除重复数据
数据量较大时,「删除重复数据」功能会消耗较多计算资源。
用户可以先观察数据的特点,选择主要的几个字段作为去重字段,尽量不要全字段去重。如下图所示: