Slow dataTable rendering
Slow dataTable rendering
Dear,
I have a dashboard made in Pentaho CDE 6.0. The loading takes almost 6 seconds. Views in the dashboard are:
1 DataTable, showing Revenue for last 12 months, by Client with posibility to drill down 4 levels (Client, Responsible 1, Responsible 2, Project). The initial view is 280 rows, 14 columns. All 4 levels expanded would be approx. 4000 rows.
1 DataTable, showing Revenue for last 4 quarters, same requirements as above. All 4 levels expanded would be approx. 4000 rows.
1 Bar chart Graph showing either tables graphically, depending on the selected row. I.e. a clickaction event on either table will trigger the bar chart view the clicked row.
My problem is that the performance of 6 seconds is too bad, especially because each drill down takes the same amount of time. The problem seems at the javascript level when rendering the 2 DataTables. I attached an image of the Google chrome performance debugging.
Could you help me find a solution?
Thanks in advance.
Stijn
This question has an accepted answers - jump to answer
Answers
Can you show me the code please, or even better a link to the page. I see that
_fnAddData()
appears to be called quire a lot and that is taking up a lot of time. How are you adding data to the table?How are you doing your four level drill down? That isn't a feature that is provided by DataTables.
Allan
Hi Allan,
Thank you very much to take interest in my question. Sharing a link to the page will be difficult as it is only accessible via the local network + proxy. If you are OK with it, we can do a webex / skype session to fix the access? That would be great.
Let's the take the example of the DataTable showing last 12 month Revenue. I attached the image of the table. Below is the code of the variable holding describing this component. The components are activated in Pentaho with a statement like this:
I believe the table components are fully translated to DateTable rendinging by the Pentaho framework itself, i.e. having the same pre-execution, post-execution and drawcallback functions as DataTables so I don't know if you would also need to have the Pentaho code that does this translation. Maybe this component definition gives you sufficient insight.
The drawCallback is basically used to give CSS styling to the 4 different levels.
Hi,
Yes, we could do that. That would fall under the priority support options.
I suspect it would be likely - that draw looks "funny" to me - the fact that it is being called multiple times and each one is taking a fair amount of time. Indeed, I don't really see from the above how the data is being added, so it must be in a binding somewhere.
I don't know Pentaho at all, so I can't guarantee that I'd even be able to find it.
If you disable your draw callback, what happens - is there a significant performance improvement?
Allan