Skip to main content
Announcements
See why Qlik is a Leader in the 2024 Gartner® Magic Quadrant™ for Analytics & BI Platforms. Download Now
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Master Calendar and multiple tables

I have multiple fact tables in my application with different date fieds.

I have a master calendar in my data model .

My question is which approach would give a better performance

1. Shall i make a large single fact table with all the fields for multiple table and link the dates with Master Calendar.

2. Multiple fact table linked with one link table and the link table will be linked with Master Calendar

5 Replies
tresesco
MVP
MVP

If your data size is not very big, my suggestion would be to go with 'Link Table' to keep the data model more readable and logical. If you are with huge data, 'Concatenation' would be the way to make it more performance-friendly. For, better understanding refer:Concatenate vs Link Table

Anonymous
Not applicable
Author

Making One single large Fact table is not necessary, you can keep multiple Fact tables as well...Go for link table which would define your common master calender and will be linking to Fact tables

jonathandienst
Partner - Champion III
Partner - Champion III

There is no magic one design fits all here. It depends on the size of the data set, the amount of commonality between the facts and whether or not you have expressions that span both fact tables. Unless your data set is small, you will need to experiment to find the best performing data model for your application.

Whatever approach you select for the facts, you will have an issue with multiple dates. See this article for how to handle that issue: Canonical Date

Logic will get you from a to b. Imagination will take you everywhere. - A Einstein
Not applicable
Author

Yes my data set is huge and the performance has improved after concatenating everything into single fact table but that actually increased the size of the file considerably and it is always growing ...

Why the size was increased with this approach.

tresesco
MVP
MVP

Concatenation would generally (depends on your tables commonality) generate a huge table with many many null values. Though the nulls would not require an additional space for itself, it's pointer would require. And that eventually increases the qvw size. This one of the hidden darkness of concatenation in Qlik.