Friday, January 18, 2019

Optimize QlikView - Server and Scripting


Hello once again, in this blog post I am going to tell you different tips by which you can optimize your QlikView Application, so that it executes more rapidly, operate with less memory storage or use fewer resources. There are fewer ideas and techniques at Server, Scripting and Design level that can be done to optimize the Qlikview Application. 

In this article, we will look into the Server and Scripting techniques for same. In the next article we will check for the Design techniques.

Server Level:

Data Compression Technique:
  • In general, QlikView consumes more memory while reloading and while opening the QlikView file. This can be rectified by saving the file with lower compression.

Breaking single large QVW file into multiple smaller QVW:

  • If a QlikView application is large in size, obviously it will consume more memory during opening the application. Splitting a single large QlikView documents into several separate documents will help in solving the issue.

Load Balancer:

  • Server load will be very high if concurrent users using QlikView web server is high. It  can be overcome by using network load balancer (Servers with Windows Advanced Server, IIS And QlikWebServer)


Scripting Level:

Removing Synthetic key:
  • In data modelling, synthetic keys might formed if there two or more tables have common columns exist. Synthetic keys will greatly impact the performance and it is better to avoid or removing it. This can be done by removing the unnecessary links and join the tables explicitly in the script.
  • In some cases, reloading QlikView might take long time to load. The best practice to overcome is using a Binary Load of static historical data.
 Dropping Temporary Tables:
  • The temporary tables are used in qlikview scripting mostly for doing calculations (Resident Load). These temporary tables can be dropped once when their purpose is achieved.

Handling Expressions/Calculations:

  • Complex calculation within a dimension or expression or in any of the QlikView objects will give poor performance and it will be better to use the complex calculations within the script of the QVW.
  • Avoiding resource heavy expressions or calculations greatly hinder the performance of the qlikview application. Replacing with simpler calculations will help and its a good practice too in scripting. Example: Count(Distinct,’ Fieldname’)
  • Instead of the above expression, replace the count() with sum() and the distinct qualifier by assigning the value ‘1’ to each distinct occurrence as it is read in the script.

Use of Auto number Function:

  • Avoid using Complex composite keys(when to remove synthetic keys), and instead use the autonumber() function to generate a sequence which uses compact memory.
Please add any other technique if you have at Server and Scripting level. I am happy to hear and learn from you. For Design level techniques, please check out the link, for details. Stay tuned...!!! Lets shape up your data using Qlik...!!!



No comments:

Post a Comment