Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
avastani
Partner - Creator III
Partner - Creator III

Performance issues

I have table that looks like KPI as the dimension and each expression is different. Therefore if I had PY and CY comparisons for 10 KPIs, I would essentially have 20 expressions working at the same time. Extend that complexity to also have sparklines and whiskers and we have 40 expressions working hard to populate a table chart. I am using the pick(rowno(), expr1, expr2,...) vs. if statements to speed up some performance

Is it better to keep it in one table or split it up into smaller tables of 2-3 KPIs?

I am using Set Analysis as well and NO if statements. Is Numeric set analysis faster than string set analysis i.e. {<Type={'Green'}>} vs {<TypeCode={5}>}

There isn't much data but there's a lot of expressions thereby causing my app to grind all my 8 processors at 100% and still take 2 minutes for the answers to come back. If I add currency conversions or any other dynamic functionality, that's adds to the overhead.

Thought I'd put it out there as a generic thread for others to also benefit for future apps. Your comments, suggestions, recommendations are most appreciated.

6 Replies
Not applicable

Hi

It doesn't sound too onerous for QlikView to deal with, can you tell me which version of QlikView you are using? If this is on the server, which version on the server and which version at the client side? Which service release also.

Not applicable

Actually, maybe the PICK function is causing the performance issues, just for a test have you tried the table without that function in it?

avastani
Partner - Creator III
Partner - Creator III
Author

there's no way around the pick function. it is either that or the if statement.

my table has the metric as a dimension and then 1 expression for pick(rowno(), kpi1expr, kpi2expr,...) then another one to show minichart for each kpi and another for whiskers etc.

if i remove the kpi as a dimension and put it in the expression, then i would have 20+ expressions with if statements in them doing character comparisons whic hwould slow it down even more.

Not applicable

OK!

Which version(s) are you running at the server and client?

Not applicable

I'm not familliar with the pick function, but the rest of what you've described seems pretty run-of-the-mill for QlikView.

Are there composite keys in your data model? How many levels deep into the table structure are your sets going?

You might get a better response if you put up a sample file. Do you have one that you can post here?

johnw
Champion III
Champion III

I don't know about numeric vs. string set analysis, but my testing on 8.5 and the initial release of 9.0 (haven't tested with SR4) showed that FLAG comparisons with a 1/null flag were the fastest option of what I tested, so {<GreenType?={1}>}. The difference wasn't particularly large as I recall, though.

I use the pick() function fairly often, and haven't noticed a problem, but I haven't specifically tested its performance either.