- Tips for Optimizing the Performance of Web Intelligence Documents
- Document History
- Introduction
- Chapter 1 - Client Side Performance
- TIP 1.1 - Use HTML Interface for Faster viewing/refreshing of Reports
- TIP 1.2 - Upgrade to BI 4.1 SP03+ for single JAR file Applet Interface
- TIP 1.3 - Ensure Online Certificate Revocation Checks aren't slowing down your Applet Interface
- TIP 1.4 - Make sure JRE Client Side Caching is working
- TIP 1.5 - Ensure you are not running into these known JRE Security Change issues
- TIP 1.6 - Choose the right client - Webi Rich Client vs HTML vs Applet Interfaces
- Chapter 2 - Process Best Practices
- Chapter 3 - Report Design Best Practices
- Chapter 4 - Semantic Layer Best Practices
- Chapter 5 - Formula & Calculation Engine Tips
- Chapter 6 - Sizing for Performance
- Chapter 7 - Architectural Differences between XI 3.1 & BI 4.x
- Chapter 8 - Performance Based Improvements / Enhancements
Tips for Optimizing the Performance of Web Intelligence Documents
DRAFT DISCLAIMER - This document is a work in progress and will be released 1 chapter at a time. Please follow or subscribe to updates to ensure you are notified of the latest changes.
Document History
Date | Who | What |
---|---|---|
10-01-2014 | Jonathan Brown | Created Initial Document Structure and Completed Chapter 1 - Client Side Performance |
10-02-2014 | Jonathan Brown | Made some minor updates to the formatting and some links |
10-08-2014 | Jonathan Brown | Started on Chapter 2 - Process Best Practices Started on Chapter 2 - Process Best Practices |
Introduction
This document will become a central repository for all things Web Intelligence & Performance related. It is a living document and will be growing over time as new tips, tricks and best practices are discovered. We encourage suggestions and contradictions on the content within and hope the community will collaborate on this content to ensure accuracy.
Chapter 1 - Client Side Performance
Client side performance tips and tricks cover anything that is specific to the client machine. This includes the HTML, Applet and Rich Client Interfaces as well as the Browser that the client uses to a certain degree.
TIP 1.1 - Use HTML Interface for Faster viewing/refreshing of Reports
The HTML Interface does have a few less features in comparison with the Applet Interface and you will have to weigh the benefits of performance vs functionality.
Chapter 1.4 of the Webi User Guide covers the differences between the HTML, Applet and Rich Client Interfaces. Review this to help you make a decision whether or not the HTML Interface will do everything you need it to do.
Here is a screenshot example of what the feature comparison matrix looks like in the user guide

Below is a link to our Web Intelligence documentation page on our Support Portal. Go to the End User Guides section to find the latest Webi User Guide documentation.
TIP 1.2 - Upgrade to BI 4.1 SP03+ for single JAR file Applet Interface
BI 4.x introduced a new architecture for the Applet Interface, aka Java Report Panel/Java Viewer. Previous versions were a single JAR file called ThinCadenza.jar.
This KBA also covers this issue in a limited fashion:
TIP 1.3 - Ensure Online Certificate Revocation Checks aren't slowing down your Applet Interface
Online Certificate Revocation Checks are turned on my default in newer versions of the Java Runtime Engine (JRE). These basically tell the client side JRE to go out to online servers to validate the certificates that the applet jar files are signed with. On slower networks, this can add a lot of overhead.
TIP 1.4 - Make sure JRE Client Side Caching is working
TIP 1.5 - Ensure you are not running into these known JRE Security Change issues
While these are not technically performance issues, they will slow down your end users and will cause delays in viewing, modifying and refreshing documents and instances.
TIP 1.6 - Choose the right client - Webi Rich Client vs HTML vs Applet Interfaces
- Best interface for report consumers who will mostly be running predesigned reports and doing only light modifications
- The HTML interface utilizes the 64-bit backend servers but lacks some of the design capabilities of the Applet Interface
- Best interface for report designers and power users who will be creating, modifying and doing advanced analysis of documents and data.
- This interface takes advantage of 64-bit backend servers and can generally handle larger amounts of data/calculations as it utilizes backend servers to do the heavy lifting.
- Since this is a Web Application, timeouts can occur when leaving the session idle or when carrying out long running actions.
- This stateless interface has almost all of the features and functionality that the Applet interface does plus a few additional features of its own. This should be used by advanced designers and power users that wish to have a stable design environment for larger documents
- Can be used with local data sources and some desktop type data sources such as Excel and Access
- Also can be used in 3-tier mode which takes advantage of backend servers for data retrieval
Chapter 2 - Process Best Practices
TIP 2.1 - Schedule reports to save time and resources
- Provides lower user wait times when implemented correctly
- Allows us to offload processing to non-peak times
- Can help reduce sizing requirements for concurrent users
- Reduces impact on Database during Peak times
- Can combine Instances with Report Linking to produce smaller, faster documents
- UserA logins to BI Launchpad and navigates to the "Monster Finance Report" document
- UserA Views this document and clicks the refresh button to get the latest data
- After about 2 minutes, UserA is not sure what is going on. The report appears to be refreshing still, but given the fact that UserA is impatient, he suspects that the refresh has "hung" and closes the viewer.
- UserA decides to test his luck and submit the request again. This essentially creates a new request for the same data and potentially works against BOTH requests as they compete for resources on the BI servers and the database side.
- After a few more minutes, UserA gives up and moves on. Meanwhile he has no idea the amount of resources and time he's wasted in the background.
- UserA Never got his report and had a bad experience
- Backend resources were wasted without any usable results
- Educate your users to schedule anything that takes over 5 minutes to run
- Encourage users to Schedule reports that they know they will need throughout the day to non-peak hours before their day begins
- Schedule Documents to formats that you know your end users will want such as Excel, Text, or PDF. This can save time and resources during the day
- Utilize Publications when multiple users have different requirements for the same documents
For more information on Scheduling Objects and Publications, see the below links
DOC - BI 4.1 SP4 BI Launchpad User Guide - Chapter 7 - Scheduling Objects
DOC - BI 4.1 SP4 BI Launchpad User Guide - Chapter 10-11 - Publications
TIP 2.2 - Use the Retry options when Scheduling to Automate Retries
Although this isn't really a true performance tip, I do find that it is a best practice that goes hand in hand with scheduling. It often amazes me how many people are not aware of the Retry functionality within the Schedule (CMC Only) Dialog. This feature allows you to configure your scheduled instances to retry X number of times and after X number of seconds if a failure occurs.
Here is a screenshot of this option in BI 4.1
TIP 2.3 - Use Instance Limits to help reduce the # of Instances in your environment
This is another little known feature that you can use to help improve the performance of your system. The feature is called Instance Limits and you can set it on a Folder or Object Level.
The basic concept is that you can set limits on the # of instances a folder or object will keep. If the limit is exceeded, the CMS will clean up the oldest instances to help reduce the amount of metadata and resources that is stored in the CMS database and on the Filestore disk.
Here are the basic instructions on how to enable and set limits, as found in the CMC Help guide:
Setting limits enables you to automatically delete report instances in the BI platform. The limits you set on a folder affect all objects in the folder.
At the folder level, you can set limits for:
- The number of instances for each object, user, or user group
- The number of days that instances are retained for a user or a group
Steps to enable Instance Limits in the CMC
- Go to the Folders management area of the CMC.
- Locate and select the folder for which to set limits, and select Actions/Limits.
- In the Limits dialog box, select the Delete excess instances when there are more than N instances of an object check box, and enter the maximum number of instances per object the folder can contain before instances are deleted in the box. The default value is 100.
- Click Update.
- To limit the number of instances per user or group, Click the Add button beside Delete excess instances for the following users/groups option.
- Select a user or a group, click> to add the user or group to the Selected users/groups list, and click OK.
- For each user or group you added in step 6, in the Maximum instance count per object per user box, type the maximum number of instances you want to appear in the BI platform. The default value is 100.
- To limit the age of instances per user or group, click Add beside the Delete instances after N days for the following users/groups option.
- Select a user or a group, click> to add the user or group to the Selected users/groups list, and click OK.
- For each user or group you added in step 9, in the Maximum instance age in days box, type the maximum age for instances before they are removed from the BI platform. The default value is 100.
- Click Update.
Below is a screenshot of the dialog for your reference
Once you have enabled Instance Limits, you will have better control over the size of your CMS and Input/Output FRS. A bloated CMS database and Filestore can definitely contribute to a slower running BI system in general so having a handle on this can definitely help keep your system running at top speed.
TIP 2.4 - Platform Search Tweaking for Performance
COMING SOON - FOLLOW DOC FOR UPDATES