1
votes

We have thousands of reports, which needs to be executed from SSIS, without using sql agent. Those reports have times subscriptions as of now. 1) need to run/execute these reports based of few load status 2) We should not use sql agent 3) need to use multi threading option, to make sure only few reports runs at a particular time & it does not cause overhead to the DB As the subscriptions are available, we have the report details, parameters & its values available in subscription & catalog tables. on daily basis, we need to get the list of reports from these tables and get the parameter details and execute the report from SSIS. (i am trying to use script task - c# code)

1
Why cant you use SQL Agent? Why can't you use the existing subscription mechanism? Why do you need to use SSIS? If you're just using C# why not just write a console app? - Nick.McDermaid
Hi Nick, our requirement is to avoid sql agent. (bcoz to reduce the overhead of db, as v have thousands of reports). i just found c# as one of the method. I am not familiar with console app... To make it simple, my requirement is to run the ssrs reports which are in report manager, without using sql agent and also based on some load output. Since we have thousands of reports, we want to get it done as simple as possible instead of creating thousands of jobs in 3rd party scheduler or thousands of script. - vino
Using SQL Agent is probably going to use the least of your DB resources. No matter how you run SSRS (i.e. using windows scheduler which in turn runs SSIS) it uses the SSRS service, the SSRS system databases and whatever source database is providing the data. Running this in SSIS is not going to reduce your database load. It seems like you have some concerns about the volume of reports to be rendered. If you don't want to run a bunch in parallel then you either need to get creative withe scheduling or roll your own queueing application. - Nick.McDermaid
Hi Nick,thank you so much for suggestion. my mail id is [email protected]. can you pl send me a email, i will explain more on this. - vino

1 Answers

0
votes

in my tool i have used a threadpool (so it runs max n reports in parallel and doesn't blog down the system) it's probably not going to suit you 100% but maybe you can reuse some code https://busyreports.codeplex.com/

in any case don't waste time with sql agent