4

我在 SSRS 中有一份报告,其中包含两个子报告,但显示最终报告需要很长时间。根据 SSRS 执行日志,该报告在数据检索上花费了约 140 毫秒,在处理上花费了约 20 分钟,在渲染上花费了约 20 毫秒。如果我删除任何一个子报告(无论哪个子报告),处理时间都会下降到约 10 分钟。如果我删除两个子报告,时间会下降到 ~2 秒。很明显,我必须对子报告做点什么;可能会尝试将它们整合到主报告中。

执行日志中的“TimeDataRetrieval”统计数据是否代表报表和所有子报表的聚合数据检索时间,还是仅针对主报表(意味着子报表的数据检索时间实际上已添加到“TimeProcessing”统计信息中) ?

此外,当我在 BIDS (Visual Studio) 中运行主报告时,整个报告会在几秒钟内返回。为什么在 BIDS 中一个报表 + 2 个子报表会在几秒钟内完全呈现,而从报表服务器查看却需要大约 20 分钟?它们都在访问同一个 SQL DB(从 SSRS 服务器获取数据只需 140 毫秒),并且 SSRS/SQL 服务器应该有足够的能力(在不破坏 1% CPU 使用率的 8 核 VM 中运行)。

4

0 回答 0