Power Query | Qual é diferença entre DAX e a Linguagem M?

Power Query | Qual é diferença entre DAX e a Linguagem M?


Na comunidade do Power BI (PBI) surgem várias questões sobre como se pode implementar a criação de uma coluna utilizando DAX ou o Power Query, no entanto várias vezes a notação programática que surge é relativa a outra linguagem que não a referenciada no post.


O PBI tem por base duas linguagens de “programação”:

M: Utilizando no Power Query

DAX: utilizada nas análises

Estas linguagens apesar de diferentes permitem-nos por exemplo criar colunas nos nossos modelos.


Mas quais as principais diferenças entre as duas?


O que é M?

M é uma linguagem de script que corre nos bastidores do PBI, mais propriamente no Power Query (nome completo: Power Query Formula Language)

Com esta linguagem podemos realizar a transformação de dados, como tal é uma linguagem funcional.

Quem está habituado a criar queries no PBI (ou excel) sabe que este é um tipo de linguagem por passos e que cada linha de código corresponde a um passo da transformação dos dados. Sendo que um determinado passo é o resultado do passo anterior.

Considerando o universo do PBI é uma linguagem que muitas vezes é negligenciada pelos utilizadores uma vez que através da barra de tarefas ou do botão do lado direito vamos criando os vários passos da query e a linguagem é automaticamente carregada na nossa query.


M pode ser utilizado para:

Agrupar dados

Remover linhas

Adicionar colunas

Substituir dados

Pivot / Unpivot


O que é DAX?

DAX ou Data Analysis eXpression Language, é uma linguagem existente na maior parte dos serviços de análise de dados (SQL, SSAS, PBI, Power Pivot no Excel).


Esta linguagem tem um código muito parecido com as funções do Excel e muitas das suas funções são iguais às do Excel (SOMA, DIVIDIR, MEDIA, …) no entanto permite fazer muito mais. O DAX é uma linguagem de expressão.


Os cálculos em DAX são montados de forma similar ao EXCEL assim a maior parte dos utilizadores que fazem a transição entre as duas ferramentas conseguem perceber facilmente a lógica da construção das funções DAX. As funções passam por uma combinação de filtros e expressões.

DAX pode ser utilizado para:

Soma de dados

Definir o valor mais elevado ou mais baixo

Cálculo de médias ao longo do tempo

Cálculo de previsões futuras baseadas em tendências


Tal como podemos verificar estamos falando de duas linguagens complexas, no entanto, e apesar de poderem fazer coisas similares, os seus propósitos são diferentes:


M é utilizada na transformação de dados e DAX para fazer as análises dos dados.


Como utilizador do PBI penso que seja necessário perceber as duas linguagens e quais os seus propósitos, se temos de nos aprofundar mais em DAX ou em M acho que depende muito do que fazemos, se estamos mais virados para o tratamento de dados então temos de perceber de M, mas se no nosso dia a dia tentamos perceber tendências de dados criar gráficos devemos entender bem como funcionar com DAX.


Verifiquem o artigo abaixo em que me baseei para terem mais algumas respostas e façam uma simples pesquisa no google com certeza vão encontrar muitas leituras interessantes que vão aguçar a vossa mente.

 Clique aqui e nos contate via What's App para avaliarmos seus projetos 

Compartilhe, deixe comentários!
brazilsalesforceeffectiveness@gmail.com

Nenhum comentário:

Postar um comentário

diHITT - Notícias