数据集性能与优化
有三种方式,可以定位报表中性能问题是否与数据集相关。
1. 在报表中,改为使用一个更简单的数据集来模拟,如内建数据集。或者干脆不使用数据集。如果相应性能迅速改进,则说明原数据集的性能存在问题。
此方式操作简单,但在使用了数据集参数时不适用。
2. 使用数据集调试工具,对数据集进行单纯测试,可以得到数据集的性能情况。参见:数据集调试工具
3. 使用报表调试工具,可以看到数据集计算和取数用时。参见:报表调试工具
数据集优化
如果数据集计算用时过长,则应尽量对数据集进行优化。 对于基于SQL的数据集,常见的优化方式包括:
- 数据库中合理设置索引
- 减少like、in的使用和SQL内的函数、表达式计算
- 减少关联表的数量
其他类型的数据集,需结合其特点进行优化。
具体的优化,还应由开发人员结合实际情况进行。
需要指出,数据集计算的优化并不是万能的。有些数据集计算的性能问题,要通过更合理的数据结构设计,以及算法设计来解决。比如:
- 通过合理的适度冗余数据,减少过多关联。
- 对于非实时的数据(例如:历史上某月销售额),适时生成汇总数据,减少临时计算。