A common problem that data analysts and business users face is slow dossiers, making users wait for data to load. The dossiers may have been fast when initially built, but the performance and responsiveness deteriorates over time. Application good performance is crucial to provide unhindered user experience and to meet company defined SLAs. Average execution time for any application shouldn’t exceed 10 seconds.
Below are some factors which may impact application performance:
- Underlying datasets
- Data blending on underlaying datasets
- Application design
- Configuration is not properly adjusted
This article aims to articulate different ways to find a bottleneck of your dossier performance problems.
The optimization process should start with identification of the problem:
- Start with binary search. Remove half the chapters, and see which half is adding cost. Then break that down even further to see which chapter and which page is adding highest cost.
- You can repeat the same step above with datasets, to see if you can isolate which dataset is adding highest cost.
- Analyze the design of the problematic chapters, is there anything that could be optimized? (see ways of application design optimization on our blog).
- Think about separating the costliest chapters and pages to improve application performance
- Try removing derived objects from the Application to see if performance improves. Some of the derived objects have higher performance cost than others. Identify them by binary search, by removing them and checking again the performance.
- Incorporate Enterprise Manager
- To see whether the virtual datasets (one of data preparation techniques I-server uses as part of Document execution) creation is a bottleneck for application performance with a large number of or large datasets involved. A data preparation bottleneck can be identified by using MicroStrategy Enterprise Manager statistics, reporting on document jobs down to the level of the Document Job, Document Job Step Sequence and Document Job Step Type attributes, and focusing on the «DP Execution Duration hh:mm:ss» metric.
- Measure the time that document spent passing through different MicroStrategy architecture components to identify where it spends too much time. In order to do that, refer to:
- Intelligence Server
- Query Execution – Reference MicroStrategy Product Documentation > System Administration Guide for a complete list on how to monitor Job Execution and system usage
- Web Server
- Client rendering – KB30914: Overview of Profiling MicroStrategy Documents
- Intelligence Server
- Analyze the joins between dossier’s datasets and avoid cross joins, activate MCE trace.
After bottlenecks have been identified, now the optimization process can start to improve the performance.
In next articles we will give you useful tips on how to troubleshoot some of the identified problems.