<< Click to Display Table of Contents >> 性能检测 |
用户在制作报告时,系统会对报表性能进行检测,告知用户哪些地方会影响报表展示并给出合理的建议。报表性能检测原因分为三类,包括系统原因、报表原因和数据集原因,下面会分别详细介绍。当报表存在性能问题时,报表右上角的“检测性能”上会出现小红点提醒,用户可以点击“检测性能”查看具体原因和建议,并可以点击“检测性能”中的“下载”将所有性能慢的原因以Excel格式导出,如下图所示:
当用户将检测性能中列出的所有问题按给出的建议全部修改后,红点就会消失。
➢注意:
报表性能检测只在用户制作报告时提示,在预览报告时不会提示。
❖性能检测频率
报表性能检测频率可以通过系统设置->系统参数配置->基本参数配置中的 db.performance.test.interval 属性控制,如下图所示:
该值默认为60s,即每分钟对报表性能检测一次,用户也可以手动修改该值,修改后将按修改后的值进行检测。
➢注意:
首次打开报表或者同时打开多个报表后切换选中报表会对报表性能立即进行检测,其它操作会按属性值进行检测。
❖系统原因
当用户在系统设置->系统参数配置->数据量参数配置中将 list.qry.maxrow 的值修改大于10000时,会弹出提示,如下图所示:
用户点击“确定”强制修改该值后,会将此信息收集到报表制作的系统原因中,如下图所示:
❖报表原因
用户在制作报告新增列时,如果该列不能下推到数据库执行,会显示为橙色标识,且鼠标悬浮在该列上有性能检测提示,如下图所示:
当报表有以下几种情况时,会收集到报表原因中:
1)组件上使用的SQL数据集中,列不能下推到数据库执行,或组件的过滤器中设置的过滤条件不能下推到数据库执行,如下图所示:
2)过滤组件或者参数组件没有勾选默认值且空选项策略设置为全部数据,即一次性把所有的数据都展示出来,如下图所示:
3)组件上使用的SQL数据集中,列为逻辑判断类型的细节表达式(表达式中只有if语句),如下图所示:
4)组件中维度绑定的个数超过10个,如下图所示:
❖数据集原因
当报表组件依赖的数据集(SQL数据集/自服务数据集/组合数据集)有不能下推到数据库执行的列/操作或者SQL数据集的行过滤器中的过滤条件不能下推到数据库执行时,会将此信息收集到数据集原因中,如下图所示: