Batch Report Processing

Posted on 2008-06-12
Last Modified: 2012-05-05
Is there a way to mange report load using Sql Server Reporting Services?  So of my reports take a while to run.  It would be nice to be able to batch them.    I don't think caching is much of a help since the users change data and then run a report and see results.
Question by:GhengisX
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
LVL 13

Expert Comment

ID: 21776918
Are the reports running slowly at the data extraction stage (So would your data query or stored procedure it is based on be running slowly too), or at the rendering stage?

Author Comment

ID: 21778938
the data queries are expensive and slow.  the rendering is not an issue.  If multiple users run the report at once it can really bring the server to its knees.

we are tuning the sql and database but it will not be enough.
LVL 13

Expert Comment

ID: 21779593
I see, so you are looking to First-In-First-Out queue the queries really, so they are not running concurrently and killing the database server.

Before we get into this you could consider the caching again, how often are the users updating the data and then needing to look at the reports?  Do the users need the data immediately available after the change?

You may find this is only a few times a day and they don't need it immediately, then you can use the caching to cache a snapshot say every hour or so.  "Render this report from a report execution snapshot "  You could then stagger your snapshots over the hour.
Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.


Author Comment

ID: 21779647
they update data then run a report to see results.  then they update data again and tune.  there is a lot of data so we dont monitor if things have changed between one report run and another, otherwise we could cache.  
LVL 13

Accepted Solution

rickchild earned 500 total points
ID: 21779879
OK, if you are saying you want to run only one report at a time then you need a Stored Procedure to act as a runner.  The runner will contain say a big CASE of all your possible queries/stored procedures, which are specified by a parameter into the Runner.

One basic queue would be that your Runner will add the current request to a queue table, if there is nothing else in the queue it can run immediately, if there are items ahead in the queue it must wait for an interval before checking again (Say 10 seconds).

It will loop and wait until the request reaches the front, at which point the runner can then execute that statement to return the result for the report.  It must also remove itself from the queue table after the statement.

Author Comment

ID: 21796900
any experience with service broker out there, it seems to be a big part of what I am looking for?

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
SHOWPLAN permission denied in database 'AdventureWorks'. 13 115
Delete from table 6 48
Strange msg in the SSMS pane 13 60
SQL query 7 12
Hi, In my previous Article  ( discussed some basic understanding of Microstrategy that how we can get in Intro of Microstrategy (MSTR). Now it's tim…
Today, still in the boom of Apple, PC's and products, nearly 50% of the computer users use Windows as graphical operating systems. If you are among those users who love windows, but are grappling to keep the system's hard drive optimized, then you s…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below.…

756 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question