« How Web-based Charting Software Helps Business Decisions | Main | What makes value in business intelligence software? »
January 9, 2009
Is Reporting Performance Poor? Boost It with a Few Simple Actions
If you're a report developer, and you hear that the performance of your reports is poor--slow, cumbersome, inaccurate, etc.--there are some tools in your control to make it better.
Reporting performance depends on two categories of things--one environmental, one under your control as a developer. This post is a summary of a very informative white paper on reporting performance.
Environmental reporting performance factors.
These are the ones people usually think of when reporting performance is not up to par.
Hardware (CPU/RAM). The more robust a hardware solution, the better the overall report performance will be.
Network bandwidth. Connectivity to the reporting server will play a large role in how responsive each report request will be.
Operating system and database platform. The main factors are the overall file management performance and data load performance, and the connectivity to the database.
Number of concurrent users. As with most web-based applications, user load shows a linear growth when it comes to response times.
Data schema. Complexity of the database or data source schema will affect performance.
Data Volume. Columns, rows and size/type of data value can burden your processor.
Report definition complexity. The number of elements and attributes in a report will affect loading time, just like the more information a web page requests, the longer it will take to load.
Performance factors in the developer's control
Now, here are the good news. Although the factors just mentioned are in general outside of the developer's control, there are elements within a web application model that depend (at least in part) from the developer, who can therefore affect reporting performance.
Interactive paging. This allows the server to only load the proper amount of data and not become burdened, while letting the users view the information they request.
Drill down, drill-through (on-demand data). Besides being beneficial to the end-user, these features make the report faster and more efficient, lightening the reporting load by given only the current state of requested data.
Reusing elements. Reusing or sharing elements within a report allows for more complex reporting environments without adding burden to the server.
Dashboard visualization. With a dashboard, the user gets only the information he needs, while the load on the system will be lighter. Also, dashboards present grouped data, aggregations, KPIs, etc., further compounding the technical benefits.
These are only the main factors affecting reporting performance that are under the developer's control. To learn even more about this topic, there is a performance factors white paper that delves more specifically into this subject.
Posted by Hound of the BI-skervilles at January 9, 2009 12:15 PM
