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)
Designing performanced reports
locutuz
Hello everybody,
I create a report that's based on a XML data source (1 XML-file as data source).
Everything works fine so far.
The amount of data could be very high and I try to optimize the report design
and/or the XML data structure for a better performance.
It's just a bit "try and error" to find out how the performance is influenced.
This is a very time-consuming job.
In my case I can think of two approaches that could influence the performance,
which one is better for a fast report-rendering (or are they the same?):
a.) having less data sets as possible and decide what to show in a table by a filter on the "Filters"-tab of the report item?
or
b.) pre-filter the data set that the report-table is assigned to, so the settings in the "Filters"-tab are obsolete?
Option b.) would result in many more data sets in the report-library. But each of them is pre-configured to fit the needs of its usage.
I don't know how BIRT processes these approaches. Or does anybody think of an additional better approach?
Thanks for any help or suggestions.
Regards,
Sebastian
Find more posts tagged with
Comments
CBR
Hi Sebastian,
it is faster to fetch as less data as possible so there is more memory available for other things. But you always have to compare the time you probably save with the costs. When comparing the table filter with a WHERE clause in a jdbc query i would always choose the WHERE clause because its a **** lot faster.
You wrote that you use the XML datasource. The XML datasource uses XPath to extract the data which is very generic but very slow too. It gets slower and slower with every XPath expression that is used inside the dataset. The filter on the dataset is pretty much comparable with the table filter (so there is not much time to save here).
I think that you will save most time if you write your own datasource that is specific to your xml format and less generic: e.g. using JAXB or a SAX parser.
locutuz
Hi cbrell,
thanks for your reply. That's very useful information for deciding my next steps.
Actually we want to keep the XML as data source since XML is our common exchange format between applications.
Maybe it would be the best way to implement an own ODA data source as you described.
What about a scripted data source that accesses the data via an XML stream. Can you tell me something about that?
Thanks.
Regards,
Sebastian