Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
PUBLIC CLOUD
PRIVATE CLOUD
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Intelligence (Analytics)
Report generation load/Store reports on disk
rmohan
Hi,
General question. I am planning to distribute the report generation load by using a separate WebSphere server. These reports are heavy and they fire over 250 queries on about 100 tables. The reports will
be stored on disk because streaming them could take some time. The user will access them after some time.
What is the way to do this with an engine like BIRT ? I understand there is a DB involved here but that is another problem. We are not using BIRT at this time but I want to understand how reporting engines help this case.
Thanks.
Find more posts tagged with
Comments
mwilliams
If I'm understanding your question correctly, you're wanting to pre-run your reports because of how large they are. You could create a Java class to run your designs and save the output as html, pdf, or one of the other outputs that BIRT has. From there, you'd have the completed reports for your user to access.
Actuate also has products built around BIRT, one of which has scheduling capabilities which could be helpful for you in this situation to be able to set a report to run at a certain time. You would even have the ability to email this report when it completed. You can find more info about the BIRT iHub on the products page, if interested in commercial solutions.
Hope this helps. Let me know if you have further questions.
rmohan
Thanks. At this time this is a design question.
1. Does a reporting engine cache data ?
2. What is the reporting engine support for this kind of problem ? I am aware that something like materialized views can be used in the DB.
mwilliams
You can choose whether the data engine caches the data or not. You can see there is an option in the advanced properties to cache data for a dataset or not. This would be used if you have multiple elements within a report that you will be using the same data for, so you'd rather not hit the database again:
Yaytay
<blockquote class="ipsBlockquote" data-author="rmohan" data-cid="117779" data-time="1371629021"><p>1. Does a reporting engine cache data ?
2. What is the reporting engine support for this kind of problem ? I am aware that something like materialized views can be used in the DB.</p></blockquote>
Michael's answer to your firs question is correct, but I don't think the feature he's talking about is what you want.
The BIRT engine does not cache data between separate reports, but can cache data that is used multiple times on a single report.
I think Actuate have products that can do more about caching between reports, but I don't use them.
For your second question the answer is that the report engine itself lives underneath this kind of problem.
There are lots of ways to schedule the running of reports, and two main options for the output from the scheduled task (an intermediate rptdocument file that users can later render to any of the normal BIRT outputs, or directly to a finished file that can be opened by your users).
The Actuate products will provide out of the box systems that do all of this, but there are plenty of people that have done something similar using just the (free) open source BIRT.
Jim