数据集性能与优化

有三种方式,可以定位报表中性能问题是否与数据集相关。

1. 在报表中,改为使用一个更简单的数据集来模拟,如内建数据集。或者干脆不使用数据集。如果相应性能迅速改进,则说明原数据集的性能存在问题。

此方式操作简单,但在使用了数据集参数时不适用。 

2. 使用数据集调试工具,对数据集进行单纯测试,可以得到数据集的性能情况。参见:数据集调试工具

3. 使用报表调试工具,可以看到数据集计算和取数用时。参见:报表调试工具

数据集优化

如果数据集计算用时过长,则应尽量对数据集进行优化。 对于基于SQL的数据集,常见的优化方式包括:

  • 数据库中合理设置索引
  • 减少like、in的使用和SQL内的函数、表达式计算
  • 减少关联表的数量

其他类型的数据集,需结合其特点进行优化。

具体的优化,还应由开发人员结合实际情况进行。

 

需要指出,数据集计算的优化并不是万能的。有些数据集计算的性能问题,要通过更合理的数据结构设计,以及算法设计来解决。比如: 

  • 通过合理的适度冗余数据,减少过多关联。
  • 对于非实时的数据(例如:历史上某月销售额),适时生成汇总数据,减少临时计算。