cancel
Showing results for 
Search instead for 
Did you mean: 

Lumira Data Reload on Hierarchy Drill-Down

maxbeu
Discoverer
0 Kudos
378

Hi Experts,

I have an input ready query based on a Calculation View and an InfoCube with a number of keyfigures in a hierarchy you can drill into. I added this query to a Lumira Designer Dashboard bound to a crosstab.

Now when the query is inputReady, every time I expand the keyfigure hierarchy the data is reloaded from the backend. But strangely this does not seem to happen when the query is not inputReady.

I did some profiling on the application, here are the results:

*** Step 12 ***
Total time: 2421 ms, Lumira Designer time: 455 ms, data sources time: 1966 ms

2405 ms: Main task of step ZEN
2405 ms: Process request: Application startup
2405 ms: Processing
13 ms: Page -> Command Interpreter (Execution) BUTTON_1.OnClick()
2 ms: ScriptInterpreter: Prepare CommandResolver
2 ms: ScriptInterpreter: Prepare JS Scope for scope "<root scope>"
7 ms: ScriptInterpreter: Validate script
2 ms: Loading dynamic ZTL classes
4 ms: ScriptInterpreter: Execute script
1 ms: DS_1.configureInputReadiness()
1968 ms: Page -> Command Interpreter (Execution) BUTTON_1.OnClick() (continuation)
1968 ms: ScriptInterpreter: Execute script (continuation)
1968 ms: DS_1.getDataSelections()
1947 ms, 338: Get result set
56 ms: RFC BICS_PROV_SET_INPUT_ENABLED
1887 ms, 338: Get provider result set
1877 ms: RFC BICS_PROV_GET_RESULT_SET
8 ms: RFC RSBOLAP_BICS_STATISTIC_INFO
1 ms: Sort tuples:ROWS
1 ms: ResultSet post processing
1 ms: Visual selection state
424 ms: Page: Process rendering
424 ms: Process rendering
424 ms: Page: Save state
413 ms: Render item ROOT
413 ms: Render Ui Item ROOT
412 ms: Render Ui Item CROSSTAB_1
412 ms: Render Component Ui Query Reference Component CROSSTAB_1
9 ms: RFC BICS_PROV_GET_DATA_CELL_MASK
1 ms: Render Ui Item ZEN_PROFILING
6 ms: PageProcessorBase: Create PageObjectStateDescription
6 ms: PageObjectStateDescription: Set state parameters
6 ms: SelectionObject: State Serialization
16 ms: RFC RSBOLAP_BICS_STATISTIC_INFO


*** Step 13 ***
Total time: 3482 ms, Lumira Designer time: 1370 ms, data sources time: 2112 ms

3465 ms: Main task of step ZEN
3465 ms: Process request: Application startup
3465 ms: Processing
863 ms: Process page command RECALCULATE
863 ms: Process item command RECALCULATE
22 ms: RFC BICS_CONS_DATA_AREA_COMMAND
2564 ms: Process page command SET_DRILL_STATE
2564 ms: Process data provider command SET_DRILL_STATE
2037 ms, 338: Get result set
2035 ms, 338: Get provider result set
2033 ms: RFC BICS_PROV_GET_RESULT_SET
1 ms: ZeroSuppression
1 ms: ResultSet post processing
1 ms: List calculation
519 ms: Set tuple element drill state
515 ms: Get result set
512 ms: Get provider result set
32 ms: RFC BICS_PROV_GET_RESULTSET_DETAIL
1 ms: ZeroSuppression
1 ms: ResultSet post processing
1 ms: List calculation
1 ms: Process commands before rendering
34 ms: Page: Process rendering
34 ms: Process rendering
34 ms: Page: Save state
21 ms: Render item ROOT
21 ms: Render Ui Item ROOT
21 ms: Render Ui Item CROSSTAB_1
21 ms: Render Component Ui Query Reference Component CROSSTAB_1
8 ms: Validate dataset
8 ms: RFC BICS_PROV_GET_DATA_CELL_MASK
1 ms: Characteristic member access
1 ms: InfoObject:getMembersFromProviderMembers: 007VNIABFSGFEKMIMYZRG2ZE8
7 ms: PageProcessorBase: Create PageObjectStateDescription
7 ms: PageObjectStateDescription: Set state parameters
7 ms: SelectionObject: State Serialization
17 ms: RFC RSBOLAP_BICS_STATISTIC_INFO

*** Step 15 ***
Total time: 1968 ms, Lumira Designer time: 32 ms, data sources time: 1936 ms

1952 ms: Main task of step ZEN
1952 ms: Process request: Application startup
1952 ms: Processing
1 ms: Page -> Command Interpreter (Execution) BUTTON_1.OnClick()
1 ms: ScriptInterpreter: Execute script
1 ms: Process page command SET_DATA_PROVIDER_PARAMETERS
1928 ms: Page -> Command Interpreter (Execution) BUTTON_1.OnClick() (continuation)
1928 ms: ScriptInterpreter: Execute script (continuation)
1928 ms: DS_1.getDataSelections()
1927 ms, 455: Get result set
42 ms: RFC BICS_PROV_SET_INPUT_ENABLED
1858 ms, 455: Get provider result set
1849 ms: RFC BICS_PROV_GET_RESULT_SET
8 ms: RFC RSBOLAP_BICS_STATISTIC_INFO
1 ms: AxisHierarchy
23 ms: Perform drill operations
22 ms: Get result set
21 ms: Get provider result set
21 ms: RFC BICS_PROV_GET_RESULTSET_DETAIL
1 ms: Sort tuples:ROWS
1 ms: Sort tuples:ROWS
21 ms: Page: Process rendering
21 ms: Process rendering
21 ms: Page: Save state
1 ms: Prepare rendering for container ROOT
1 ms: Prepare rendering for child CROSSTAB_1
1 ms: Prepare rendering update BW characteristic selection state for CROSSTAB_1
10 ms: Render item ROOT
10 ms: Render Ui Item ROOT
10 ms: Render Ui Item CROSSTAB_1
10 ms: Render Component Ui Query Reference Component CROSSTAB_1
1 ms: Validate dataset
7 ms: PageProcessorBase: Create PageObjectStateDescription
7 ms: PageObjectStateDescription: Set state parameters
7 ms: SelectionObject: State Serialization
16 ms: RFC RSBOLAP_BICS_STATISTIC_INFO


*** Step 16 ***
Total time: 71 ms, Lumira Designer time: 24 ms, data sources time: 47 ms

58 ms: Main task of step ZEN
58 ms: Process request: Application startup
58 ms: Processing
37 ms: Process page command SET_DRILL_STATE
37 ms: Process data provider command SET_DRILL_STATE
36 ms: Get result set
35 ms: Get provider result set
34 ms: RFC BICS_PROV_GET_RESULTSET_DETAIL
1 ms: ZeroSuppression
19 ms: Page: Process rendering
19 ms: Process rendering
19 ms: Page: Save state
9 ms: Render item ROOT
9 ms: Render Ui Item ROOT
8 ms: Render Ui Item CROSSTAB_1
8 ms: Render Component Ui Query Reference Component CROSSTAB_1
1 ms: Render Ui Item ZEN_PROFILING
5 ms: PageProcessorBase: Create PageObjectStateDescription
5 ms: PageObjectStateDescription: Set state parameters
5 ms: SelectionObject: State Serialization
13 ms: RFC RSBOLAP_BICS_STATISTIC_INFO



So on Step 12 I started a script to configure the input readiness of the query to true. Here for testing purposes I added the command DS_1.getDataSections({}); to see if this problem also occurs if I pre-load the data (as described here: https://blogs.sap.com/2020/04/22/lumira-delayed-loading-vs.-pre-loading-of-data-sources/), but this does not seem to change the bahaviour.

As seen in the following step after the drill down the data is reloaded, which takes about 2s in this case.

In the next step I configure the input readiness to false and in the last step I expand the hierarchy again. As seen above the RFC BICS_PROV_GET_RESULT_SET is not called again.

Can someone clarify on this? Why is the data reloaded every time the hierarchy is expanded? And why does this only happen when the query is inputReady?

I also tested this in Analysis for Office and here the query expands immediatly even if the query is inputReady. So I guess this is a Lumira specific problem. The profiling data above is from the dev system where we don't have that much data in the query, in the production system it takes about 20s every time the hierarchy is expanded. So any help would be appreciated.


thanks and kind regards

Max


Accepted Solutions (0)

Answers (0)