In this blog I am going to discuss about how we will monitor performance of Stories and Tune it accordingly to achieve performance optimization in SAC Analytics Cloud.
SAC provides a Performance Analysis Tool which we will use to monitor.
Steps :
1. Need install Performance Analysis Tool in our SAC landscape: Go to the following path –
Files/System/Common/SAC Content Open the performance Analysis Tool.
2. Open and Run the application –
3. Now we have to put filter criteria for which report or dashboard you want to do the analysis.
For our case we will analyze the “Revenue Analysis” Report.
Now we will open the detail analysis and analyze the report step by step and also provide approaches to overcome this. The total page will look like the below –
4. Now we will go to those steps which I used to check for checking performance. (will not go to each and every steps) :
Inside the summary view, I used to the check the first 3 graph from summary view i.e. –
- Page Startup time – First check the pages by startup time, which gives an idea about the most startup time consuming page. Concentrate on that page and check other parameters to identify issue. It will be the duration from opening till the final action in the page.
- Top 5 Widget – Total Widget Time. Next Important Graph which provide you the which widget taking more time for rendering. If the Widget visited twice the sum will be the total time. you can use best practices on widget development which I will discuss latter to fix this issue.
- Model maximum backend time : In this graph we can see the name of the backend query which used to create the model. After checking the maximum query runtime, we can fine tune the backend BW or HANA query.
There are three details tab for more details information where you can get all details but most useful according to me is Widget Drill down Tab. –
- For our case the Store(Discount%) widget calculation is taking to more time that others .
Before you decide to apply best practices to fix the widget time, you double on the Store(Discount%) and get additional details. it will give you details idea where time taken most time –
Here bottom file managers calculation is taking time for the widget.
Please use below basic best practices to fine tune your stories –
1. If it can be avoid ,avoid to combine data from different sources i.e. import and live connection. Try to merge the data in backed side and retrieve as a whole in SAC side.
2. Enable Optimize Story Building Performance from Model preference .
3. Enable “Use Optimized Scenario Composer of Analytical Engine” to get better performance –
4. Avoid Exception aggregation always in model or Story Level. Not only in SAC but in BW or HANA all the places I faces a bad hit when I used exception aggregation. If possible please avoid that .
5. For Story Design –
- A. Avoid converting dimension to Measure process if not required at all.
- Avoid exception aggregation in aggregation process.
- Responsive page is preferable over Canvas.
- Try to reduce the the number of data points.
- For charts display with unbooked data.
- For table limit to 400 rows and 50 column for better performance as per my experience.
- For Image smaller than 1MB.
- Do not Blend different model in SAC story level, It will decrease the performance rapidely.
- leverage Move Widgets API to design analytical application.
- Avoid repeating loops in design analytical application.
Hope this will help.