March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hello guys, Let’s say I have a simple model and I fully understand how bi-directional filtering works and I really need to optimize my model performance.
So, what is the best way, and why so?
The options are:
Opt-1: Enabling Bi-directional cross-filtering ?
Opt-2: Use CROSSFILTER() function instead ?
Notes: I do understand that bi-di are troublesome and we must avoid using it but, I just need to understand what is the best approach when we have a simple model.
So, this means my model is simple but, not the dataset, so it could have millions of rows and 20-30 columns.
Solved! Go to Solution.
Personally I would avoid bi-directional filters at all costs (I've only used them for RLS security tables), and go for TREATAS ( I use this function very often) or CROSSFILTER
Proud to be a Super User!
Paul on Linkedin.
Hi @quantumudit ,
I agree with @PaulDBrown. Use CROSSFILTER function.
Best practice is to avoid Bi-Directional relationships as they sometimes introduce complex joins between the tables and affect background performance a lot; specially when you are dealing with millions of rows in the dataset.
Thanks,
Pragati
Personally I would avoid bi-directional filters at all costs (I've only used them for RLS security tables), and go for TREATAS ( I use this function very often) or CROSSFILTER
Proud to be a Super User!
Paul on Linkedin.
Hi, @quantumudit , in addition to PaulDBrown's advice on CROSSFILTER and TREATAS, I'd like to recommend Expanded Table as a third option. It's a more intrinsic way of filter propagation in DAX. Pls refer to this article by Italians.
https://www.sqlbi.com/articles/expanded-tables-in-dax/
Thanks to the great efforts by MS engineers to simplify syntax of DAX! Most beginners are SUCCESSFULLY MISLED to think that they could easily master DAX; but it turns out that the intricacy of the most frequently used RANKX() is still way beyond their comprehension! |
DAX is simple, but NOT EASY! |
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
User | Count |
---|---|
93 | |
92 | |
86 | |
77 | |
49 |
User | Count |
---|---|
166 | |
149 | |
99 | |
73 | |
57 |