Qlik Community

New to Qlik Sense

Discussion board where members can get started with Qlik Sense.

Announcements
Save $300 - Register for QlikWorld (formerly Qonnections) by January 31st: Learn More
Highlighted
amirmohamed
Contributor

Qlik Sense engine performance help

Hi all,


In my work place we have an Internal dashboard which holds a very big data and from 3 or 4 different sources and around 20 sheets, using tables/pivot, pie chart, table chart, few different extensions

and on our server we have 10 CPUs, 70GB memory (RAM) but when we open this one dashboard all CPU's go to 99% or 100% and the RAM over 60GB used by this (Qlik Sense Engine)

So each chart with 1 dimension or expression takes a lot of time to load

Would you please help with this

What could be the issue/ extensions, large data, script or ?

Many thanks

24 Replies
JustinDallas
Valued Contributor II

Re: Qlik Sense engine performance help

It could be all of the above.  I think a clue you gave us is that goes into a craze when you open the application which makes me think that it's a chart expression working with a badly connected datamodel.

Do you know how many rows are in the application?  You can use this snippet to find out how many rows live on the tables:

Too much data?

for i = 1 to nooftables() - 1

     LET tableName = tablename(i);

     LET numberOfRows = NoOfRows(tablename(i));

     Trace(Number of Rows for $(tableName): $(numberOfRows));

next;

Expensive Chart Expressions/Bad Data Model:

I'm not sure of a measure that QS has concerning how expensive a chart and it's expression are.  But I have had issues whereby I thought a table was connected through a key, and they really weren't, and that caused my calculation and SetAnalysis to go haywire.  Haywire to the point that the chart would run out of memory for it's calculation.

This can also be caused by unclean data.  For instance, I've had data where the key was "0" for tons and tons of records.  This meant that when my chart was doing a calculation, it was pretty much cross-joining the tables.

Hope that helps, let us know what you find.  If you are feeling frisky, duplicate the dashboard, and then begin a binary search by culling half the sheets and seeing how it performs.  That should help you decide whether it's a UI only problem, or a dataset problem manifesting as a UI problem.

Partner
Partner

Re: Qlik Sense engine performance help

There is probably some less than optimal expressions beeing used in the dashboard.

Are you using if statements in the frontend?

Are you calculating things within a set analysis that could also be done with the use of variable?

amirmohamed
Contributor

Re: Qlik Sense engine performance help

Hi Justin,

Thank you for your points, i'll check the amount of data i have then i'll repost.

amirmohamed
Contributor

Re: Qlik Sense engine performance help

Hi Bram,

Thank you for your reply,

actually yes, I am using a lot of If statements and set analysis as well.

As far as i know we can't use set analysis in the script, i am not sure if it can be used in a variable?

Partner
Partner

Re: Qlik Sense engine performance help

if statements are slow in the front end. try to do all the needed if statements in the script.

set analysis are good to use but not if you calculate the value that is used within the set analysis so for example: year={$(=max(year))} it is better to use a variable that is max(Year) and use that within the set analysis.

amirmohamed
Contributor

Re: Qlik Sense engine performance help

Thank you all for your advise,

But i have 1 app that has only 2 tables but it is taking very long to load the table and the CPU goes up to 99% or 100%

Partner
Partner

Re: Qlik Sense engine performance help

can you post the calculations for the table?

Also a screenshot or something of the datamodel would be helpfull.

amirmohamed
Contributor

Re: Qlik Sense engine performance help

Hi Bram,

I have attached the table; straight table, the table has most dimensions and only 2 expression (sum(quantity)

the data is around 17million rows total, but I have added a  data handling

if(getselectedcount(order_year)=0,0,1)


and below is the two linked tables;table.JPGOrders.JPG

Partner
Partner

Re: Qlik Sense engine performance help

Hi,

There could be a lot of possible issues and different ways to resolve.

When you say a lot of data how many lines of are we talking?

How is the data model? Lots of tables i.e.(Not a good star schema)? any synthetic keys or incorrect joins?

When you say about the expressions, are there big nested if statements?


More information you can share around the problem app the better people can help,


Mark