SSRS Report Performance & Optimization
Can any explain how would i Optimize a report performance.. I have few reports that are taking longer time to run. Thank youFM
September 8th, 2010 9:21pm
You should determine what is taking a long time. You can query the reportserver database to find out how much time the report is spending running the query and how much time is spent rendering. To optimize the query time, you need to analyze
the query and optimize it as you would any other SQL Query. Many times the main reason a report will render slowly is because you are doing lots of aggregations inside of the report instead of pushing the aggregations down to the database in your query.
This query will show you the details for a specific report:
select
CAST(convert(varchar(40),timestart,101) as datetime) dt,
avg(DATEDIFF(second,timestart,timeend)) run_time_seconds,
AVG(
case TimeDataRetrieval
when -1 then null
else TimeDataRetrieval
end
) / 1000 data_retrieval_seconds,
AVG(
case TimeProcessing
when -1 then null
else TimeProcessing
end
) / 1000 processing_seconds,
AVG(
case TimeRendering
when -1 then null
else TimeRendering
end
) / 1000 rendering_seconds,
COUNT(*) num_runs
from ExecutionLog2
where timestart > getdate()-30
and Reportpath=@path
group by CAST(convert(varchar(40),timestart,101) as datetime)
Free Windows Admin Tool Kit Click here and download it now
September 8th, 2010 10:22pm
Hi Farhan1,
Just add extra information besides what Justin's reply. After you determine whether the delay time is in data retrieval, report processing, or report rendering,
use these topics to help troubleshoot issues.
My data takes too long to retrieve
My report takes too long to process
My report takes too long to render
Design Tips for Optimizing Report Processing
Hope this helps.
Regards,
Challen Fu
September 10th, 2010 11:02am
scrubs.codeplex.com
It's free.
Free Windows Admin Tool Kit Click here and download it now
January 7th, 2011 11:05am