【发布时间】:2016-05-17 10:09:44
【问题描述】:
我对 SSRS 上的一个数据驱动订阅有一个奇怪的问题。 订阅是一种定时订阅,可生成发票 (pdf/excel) 并由存储过程触发。
我们面临的问题是,无论生成多少发票,第一次运行总是需要 30-60 分钟。第一次运行完成后,后续运行将在一分钟内完成。
同一报告的第二个版本是手动运行的,并且运行良好(排除了数据提取位的任何延迟)。
我在这里查看了其他一些问题,但这无助于确定问题:
【问题讨论】:
-
这里似乎没有问题。或者一个问题。它的工作,对吧?
-
第一次执行完成后它运行良好,但第一次运行需要将近一个小时,这对大多数用户来说非常令人沮丧。首次运行是指一天中第一次触发订阅,无论一天中的什么时间。
-
初次运行和后续运行有什么区别?报告正在处理的数据量是否存在巨大差异?如果没有更多信息,我不确定您是否会从任何人那里得到答案。您可能需要对初始运行期间实际发生的情况进行更详细的分析。有什么方法可以记录存储过程中发生的事情?也许运行跟踪以查看当时发生了什么?您的 DBA(如果有的话)应该能够提供帮助。
-
很遗憾没有 DBA。初始运行和后续运行之间没有区别。订阅由另一个包含发票列表的报告触发。在第一次运行完成一个小时后,如果我为相同的发票运行订阅,则在不到一分钟的时间内生成所有在第一次运行中花费大约一个小时的发票。在它第一次运行后,在白天的任何时间运行它都不需要时间。每次触发时都没有数据缓存拉取数据。