Qlik Community

New to QlikView

Discussion board where members can get started with QlikView.

Announcements
Make your voice heard! Participate in the 2020 Wisdom of Crowds® Survey. BEGIN SURVEY
greend21
Contributor III

Apply Map Efficiency Question

I understand that apply map can be used instead of a lookup table but is it more efficient if multiple tables would be using the apply map? For example, if you have multiple tables with a customer number that would be joined to the Customer table on the customer number field, is it better performance wise to use a mapping load and apply map in each one of those tables or just have them all join to the Customer lookup table on the customer number field instead?

Tags (2)
1 Solution

Accepted Solutions
Highlighted

Re: Apply Map Efficiency Question

The rule of thumb, truer for QlikView 12 even, is that the bigger the table, the lower the number of tables in the data model, the better. Eventually, if you could have all data in one big table, that would be the ideal case for QlikView. Obviously, not always it's possible.


One of the things that could make QlikView perform slower is to create intermediate tables or cartesian joins of all possible values when all the combinations for two or more given values are not on the same table (e.g.: Sum(Product * Price) when Product is in one table and Price is in another). So denormalizing is usually a good idea.

Whether using ApplyMap instead of JOIN has more to do with the resources available in your computer and also, your data model. ApplyMap() is usually slower, JOIN uses more resources. If you are not handling hundreds of millions of rows, then it probably doesn't matter.

View solution in original post

1 Reply
Highlighted

Re: Apply Map Efficiency Question

The rule of thumb, truer for QlikView 12 even, is that the bigger the table, the lower the number of tables in the data model, the better. Eventually, if you could have all data in one big table, that would be the ideal case for QlikView. Obviously, not always it's possible.


One of the things that could make QlikView perform slower is to create intermediate tables or cartesian joins of all possible values when all the combinations for two or more given values are not on the same table (e.g.: Sum(Product * Price) when Product is in one table and Price is in another). So denormalizing is usually a good idea.

Whether using ApplyMap instead of JOIN has more to do with the resources available in your computer and also, your data model. ApplyMap() is usually slower, JOIN uses more resources. If you are not handling hundreds of millions of rows, then it probably doesn't matter.

View solution in original post