Como usar o SWITCH para melhorar o desempenho de suas medidas DAX no Power BI

Criar medidas eficientes em DAX é essencial para garantir que os relatórios tenham sua perforamance otimizada. E uma boa prática é o uso do SWITCH.

Esta função é usada para simplificar expressões condicionais que precisam retornar diferentes valores com base em várias condições.

Considere a seguinte medida DAX, que avalia o desempenho de uma medida chamada [Variance]:

Variance KPI = IF([Variance] > 0.80, "Amazing!", IF([Variance] > 0.60, "Good", "Bad"))

Embora funcione corretamente, é possível notar que há alguns IFs encadeados e a medida [Variance] é chamada mais de uma vez nesta expressão.

Isso aumenta o processamento desnecessário, principalmente em modelos com grandes volumes de dados. Esta fórmula pode ser mais eficiente.

A solução com SWITCH e VAR:

Reestruturando a medida com SWITCH(TRUE()) e uma variável intermediária, temos a versão otimizada:

VAR Calc = [Variance]

RETURN 
SWITCH
( 
       TRUE(), 
       Calc > 0.80, "Amazing!", 
       Calc > 0.60, "Good", 
       "Bad"
)

A variável Calc armazena o valor de [Variance] uma única vez, e isso elimina a necessidade de novas chamadas à esta medida.

Além do ganho na performance, o SWITCH deixa o código mais intuitivo e de fácil manutenção no futuro.

Boas práticas com SWITCH e variáveis no DAX

  • Priorize o uso de variáveis: Sempre que possível, armazene os valores em variáveis para evitar cálculos repetitivos.
  • Substitua múltiplos IFs por SWITCH: Isso não apenas melhora a performance, mas também a organização do código.
  • Teste suas medidas: Em modelos grandes, simples mudanças podem gerar significativos ganhos em eficiência.

✍️E você, já usa o SWITCH em suas medidas DAX? Compartilhe nos comentários como ele tem facilitado o seu trabalho!

Share this content:

Publicar comentário