Forum Discussion
Bi-Di Relationship Impact on Model Memory Usage
You should not see an impact on processing performance, as long as you don't have very complex calculated columns that may be affected by bidi. On the query memory usage and/or speed, on the other hand, the impact can be quite devastating, but you know, the answer is always the same: it strongly depends on the measures you wrote.
You need to use DAX Studio and VertiPaq analyzer to gather this information, and then process them with your brain. Every model is unique, depending on data distribution, this is why you will find it really hard to gather "golden rules" from the web. Most of these, by the way, would be misleading. This is the reason we never provide rules of thumb, or simple directions. VertiPaq is a complex beast, you need to thoroughly study its internals to understand exactly what is happening. Ths, by the way, is the reason I find it so fascinating to study :)
Alberto
- Anonymous7 years agoNot applicable
Thank you for your insights, Marco.
I'm working to remove the bi-di relationships and also getting rid of primary keys from fact tables. These two items alone seem to be having significant performance improvements at relatively low cost in effort. The hardest part is giving up the power of the bi-di relationships from a simplified self-serve UX perspective if users want to build reports off a model that has bi-di it becomes much easier for them to do so than in one without. However, that being said, I've reached the point where I believe the trade-off of sacrificing bi-di to be worth it, especially if I can manage the usability issues from providing guidance on creating appropriate "fact table relationship" driven sync'd slicers as per the recent article you published on SQLBI.com