Forum Discussion
PowerBI report server license
d_gosbell completely align with your notes for large scale deployments and even I have had similar setups with query nodes seperate from Report Server nodes. I am suggesting only in case they have a direct query or small import models its fine to have all on same node!
For the last part the warning is based on an experience with our really long running Paginated reports( 16-28 hours) They were on multidimensional and are set of sub-reports stitched together (sounds bad right 🙂 ) The communication dropped on several instances and we had to rerun for success when there were not many running in parallel. What helped there was keeping query nodes and RS on same AWS instance and have our own distribution of report requests to 10-14 different nodes. The deployment was a pain too with scaleout built accordingly.
AbhiSSRS wrote:
For the last part the warning is based on an experience with our really long running Paginated reports( 16-28 hours) They were on multidimensional and are set of sub-reports stitched together (sounds bad right 🙂 ) The communication dropped on several instances and we had to rerun for success when there were not many running in parallel. What helped there was keeping query nodes and RS on same AWS instance and have our own distribution of report requests to 10-14 different nodes. The deployment was a pain too with scaleout built accordingly.
Ah ok I see where you are coming from. That is an entirely different scale of problem. I don't tend to pull anything that runs that long directly through Report Server if I can avoid it. I usually aim to make any of our visible reports run in 5-10 minutes at most. Then I have some that maybe take upto 30 mins which I put in hidden "Subscription" folders and try to run on a schedule outside working hours and deliver via email or file share. And processes that run longer than that I tend to build data extract routines that preferrably run on the source server to avoid potential network interruptions and if possible I'll build a loop that pulls smaller chunks of data at a time so that the process can be stopped and re-started without loosing everything. Although I realise that there are sometimes edge cases where this is not possible and everything needs to run in a single statement, but in general I try to follow the roughly follow the above splits if I can.