查询运行速度很快但报告渲染速度很慢:如何调试?

时间:2011-09-12 19:41:04

标签: performance reporting-services ssrs-2008

我正在运行SSRS 08.我的查询有四个参数(所有varchars)。我可以通过管理工作室运行查询,它在10秒内运行。如果我在Visual Studio的查询设计器中运行查询,我会得到相同的性能。

但是......如果我尝试预览报告或在部署报告后实际运行报告,实际报告有时需要超过5分钟。我运行了跟踪,查询似乎很快进入/退出SQL服务器端。我怎样才能找到我失去这种表现的地方/原因?到目前为止,我已经尝试/检查了以下内容:

  • 报告中未提及任何图片
  • 在存储过程之外没有分组/排序
  • 由于这是一个直接的报告,我以相同的结果重建它(以检查它是否不是报告损坏的问题)。
  • 在执行报告时运行SQL跟踪以确保查询没有问题

基于一些建议之前我重写了查询以使用变量而不是像

这样的参数
    -- ...
    -- Note: @Parameter is a varchar(40) 
    -- ...
    declare @Var as varchar(40) 
    set @var=@parameter

    select * from table where fieldvalue=@var

追踪追踪,这不是查询方面的问题。

3 个答案:

答案 0 :(得分:2)

报告检索32000行时报告html输出有问题。在我的情况下,我必须激活“交互式页面”以允许用户查看第一页并能够生成Excel文件。专家是第一页快速出现,用户可以生成导出到Excel或PDF,缺点是用户只能滚动当前页面。如果用户想要查看更多内容,他必须使用网格上方的导航按钮。在我的情况下,用户接受了这种行为,因为导出到Excel更重要。

要激活“交互式分页”,您必须单击报告窗格中的空闲区域,然后在“属性”窗格的报告级别更改属性“InteractiveSize”\“Height”。将此属性设置为不同于0.在我的情况下,我设置为8.5英寸。还要确保在Tablix级别取消选中“尽可能保持在一个页面上”属性(右键单击Tablix,然后单击“Tablix属性”,再选择“常规”\“分页符选项”)。 Report Properties pane

答案 1 :(得分:0)

我刚刚对类似问题进行了排查,结果发现它与我用来查看报告的浏览器有关。如果报告向屏幕返回大量数据,请考虑将其拆分为多个页面(如果尚未按此方式配置)。

Why Does Business Intelligence Studio Load Reports Faster than the Report Server

答案 2 :(得分:0)

我想我可能在social.msdn.microsoft.com帖子上找到了答案 http://social.msdn.microsoft.com/Forums/en-US/sqlreportingservices/thread/1e34dc76-4d78-4376-89b0-7c381ed82726/

我取消选中“保持在一起”设置,现在它实际上是来自服务器的预览,我可以导出报告。很多改进