Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
greend21
Creator III
Creator 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?

1 Solution

Accepted Solutions
Miguel_Angel_Baeyens

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
Miguel_Angel_Baeyens

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.