Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Jkaelin
Resolver I
Resolver I

Is this function written poorly?

Good afternoon,

 

I utilize the following DAX measure often. I am curious if this formula, from the naked eye, looks poorly written (poor performance) or if it looks fine given the information provided?

 

The data measure is crunching over 30,000 records.  If this question is not appropriate, or enough information given the question, please let me know and I will disregard.  Thank you.

 

12M T.R. Middle k ProductX :=
PRODUCTX (
    VALUES ( PrimaryDateID[PrimaryDateID] ),
    (
        1
            + (
                CALCULATE (
                    AVERAGE ( Performance[Month_3_Fwd_Blend_TR_then_PR_Ver_1#1] ),
                    FILTER (
                        Sheet1,
                        Sheet1[Total Return:Y-1]
                            >= PERCENTILE.INC ( Sheet1[Total Return:Y-1], MIN ( Quantile[Min_Value] ) )
                            && Sheet1[Total Return:Y-1]
                                <= PERCENTILE.INC ( Sheet1[Total Return:Y-1], MAX ( Quantile[Max_Value] ) )
                    )
                )
            )
                / 100
    )
)

1 ACCEPTED SOLUTION
v-yulgu-msft
Employee
Employee

Hi @Jkaelin,

 

What is your actually problem with above DAX formula? What did you mean "looks poorly written (poor performance)"?

 

For its format, it looks tidy and clear. For its performance, it looks like not a complex logic. Acording to current information, this function look fine. Whether it is the best appropriate method, it depends on your detailed data in actual environment.

 

Here are some articles written about optimizing DAX performance:

Tune your PowerPivot DAX query, don’t use the entire table in a FILTER and replace SUMX if possible

DAX Best Practices

Optimize DAX expressions involving multiple measures

 

Best regards,
Yuliana Gu

Community Support Team _ Yuliana Gu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

3 REPLIES 3
v-yulgu-msft
Employee
Employee

Hi @Jkaelin,

 

What is your actually problem with above DAX formula? What did you mean "looks poorly written (poor performance)"?

 

For its format, it looks tidy and clear. For its performance, it looks like not a complex logic. Acording to current information, this function look fine. Whether it is the best appropriate method, it depends on your detailed data in actual environment.

 

Here are some articles written about optimizing DAX performance:

Tune your PowerPivot DAX query, don’t use the entire table in a FILTER and replace SUMX if possible

DAX Best Practices

Optimize DAX expressions involving multiple measures

 

Best regards,
Yuliana Gu

Community Support Team _ Yuliana Gu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

@v-yulgu-msft

 

Thank you very much for the response.  I will read those articles.  I appreciate the feedback.  

 

What did you mean "poor performance"?

I use this measure in a Power Pivot table for quarterly periods from 2000-2017 (about 60 periods) and the time it takes to calculate is about 20 seconds.  If I use a derivative of that function to generate Stdev & Counts.  It takes a little bit longer.

 

Thank you,

James k

Hi @Jkaelin,

 

Sometimes the long response time might also be related to the large amount of data.

 

Regards,
Yuliana Gu

 

 

Community Support Team _ Yuliana Gu
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.