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: 
matthewjbryant
Creator II
Creator II

Why avoid Synthetic Keys?

It seems to be common practice to create a key column to avoid Qlikview joining tables via a synthetic key. Why is this? I would've thought that the join Qlikview sets up would be very efficient.

Are there pros and cons to each approach?

1 Solution

Accepted Solutions
Not applicable

Hi Matthew,

Refer to this article   Synthetic Keys by Henric. This might clear your doubt.

Regards,

Sridhar

View solution in original post

5 Replies
john_s_w_wood
Creator
Creator

It may not be noticeable with smaller data sets but with very large ones (100,000- Millions of rows) you may see a degradation in performance in the refresh of charts when selections are made. It could also highlight that you have an 'ambiguous' join e.g. join on a field called Date where in fact one date may be order date and the other date is Delivery Date.

simospa
Partner - Specialist
Partner - Specialist

Synthetic Keys are entity that can create duplication of data, this can bring you to have a down of performances and ambigous joins.

Try to use Ctrl+T and in table viewer see how many rows your Synthetic Keys have and think that all that data are unnecessary. Then with Syn you create many connections between tables, and with large size of data you could have problem with front-end user (for examples when applying selections).

Avoid Synthetic Keys is always a best practice to follow when working with QlikView.

In my opinion (and in my job) I can't see pros in Syntethic Keys 🙂

S.

Not applicable

Hi Matthew,

Refer to this article   Synthetic Keys by Henric. This might clear your doubt.

Regards,

Sridhar

ramasaisaksoft

Hi Matthew,

         when ever you are working with huge amount of data then you can find exact problem.

-->synthetic keys are reducing the speed of the application

-->Data ambiguity is a problem

if your data model is having 7 to 8 synthetic tables associated keys then for reloading of the application is also takes much time comparatively normal data model(Without synthetic keys)

matthewjbryant
Creator II
Creator II
Author

Ah Henric. He'll save the day!