body { background-color: white; }
Amauri Bekesius • 23 set 2025 • Microsoft Power BI
O Power BI parece ser uma “ferramenta” infinita com tantas possibilidades no desenvolvimento de relatórios e/ou painéis, assim como, o Editor Power Query com tantas e tantas possibilidades para a transformações de dados.
O intrigante é que cada alteração feita no Editor do Power Query é criada a respectiva etapa na coluna Etapas Aplicadas. E como é sabido ou não, quanto mais etapas aplicadas, mais uso de processamento e mais lenta a transformação desses dados. Essas etapas servem para deixar “gravadas” as transformações de dados e quando uma atualização for feita as transformações ocorrem como se fossem “mágica” com essas etapas, uma a uma.
Portanto, resolvi utilizar algumas alternativas nessas reduções e gostaria que com esses pequenos exemplos, possa ajudar na diminuição das Etapas Aplicadas melhorando assim a performance das mudanças, especialmente em conjuntos de dados grandes ou quando há múltiplas fontes envolvidas. Porém, caso não consiga realizar tais diminuições, o funcionamento ocorrerá da mesma forma contudo, um pouco mais lento.
Abaixo será citado diversas vezes a utilização da Linguagem M do Editor do Power Query. Mas o que vem a ser essa linguagem? Resposta:
A Linguagem M (Power Query Formula Language) é uma linguagem de fórmula funcional, de baixo nível, que permite transformar e "misturar" dados de diversas fontes. Serve para criar etapas de transformação de dados que o Power Query executa, oferecendo funcionalidades mais avançadas do que as disponíveis na interface gráfica.
A linguagem M é usada principalmente por analistas, cientistas e engenheiros de dados que precisam realizar transformações avançadas e complexas desses dados que vão além do que a interface gráfica do Power Query pode oferecer. Essencialmente, qualquer usuário do Power BI que necessite de uma preparação de dados mais aprofundada e personalizada utiliza essa linguagem para ajustar ou criar consultas complexas.
Passo 1:
Estratégias para reduzir Etapas Aplicadas
Em vez de criar uma coluna e depois removê-las, tente aplicar a lógica diretamente na criação da coluna final.
Exemplo: invés de criar uma coluna para extrair ano e outra para mês, combine tudo em uma fórmula M sempre que possível.
Ao invés de depender do clique-a-clique, edite diretamente o código M para consolidar etapas.
Isso permite escrever transformações mais enxutas evitando redundâncias.
Se usar tabelas apenas como apoio (por exemplo, para mesclar ou buscar dados), desative o carregamento delas para o modelo.
Essas operações são pesadas. Só use quando forem realmente necessárias para o resultado.
Pode ajudar a melhorar performance, mas deve ser usado com critério, pois pode congelar o estado de uma tabela e evitar reprocessamentos, mas só vale a pena quando há múltiplas referências à mesma consulta podendo aumentar o uso de memória.
Exemplo prático de otimização. Em vez de:
= Table.AddColumn(...)
= Table.RemoveColumns(...)
= Table.TransformColumnTypes(...)
Podemos fazer:
= Table.TransformColumns(Table.SelectColumns(Origem, {"Coluna1", "Coluna2"}), {{"Coluna1", each Text.Upper(_), type text}})
Isso reduz três etapas em uma só!
Evite criar múltiplas consultas que referenciam outras. Isso pode duplicar o processamento.
Prefira mesclar ou anexar dados diretamente, quando possível.
Passo 2:
Técnicas avançadas para reduzir Etapas Aplicadas
Quando faz ações como “Remover Colunas” ou “Alterar Tipo” o Power Query cria etapas automáticas que podem ser agrupadas manualmente no Editor Avançado.
Funções como Table.SelectRows, Table.TransformColumns, Record.Field, entre outras, são mais eficientes que operações feitas via interface.
Consultas que dependem de outras podem gerar múltiplas leituras da fonte. Prefira consolidar tudo em uma única consulta, quando possível.
Passo 3:
Query Diagnostics
Ferramenta poderosa que ajuda a entender o que está acontecendo nos bastidores do Power Query. Especialmente útil para identificar gargalos de performance e otimizar suas consultas.
No topo, clique em Ferramentas e selecione Iniciar Diagnóstico.
Pode ser atualizar uma consulta, aplicar uma transformação, ou carregar dados. O Power Query vai rastrear tudo que está sendo avaliado.
Isso encerra a coleta e gera uma tabela com os resultados do diagnóstico.
Tempo gasto em cada etapa
Consultas internas geradas
Eventos em segundo plano
Possíveis falhas ou lentidões
A visão resumida mostra onde o tempo está sendo gasto.
A visão detalhada traz eventos específicos e ajuda a identificar problemas mais complexos.
Conclusão:
De inúmeras possibilidades de utilização em relação a redução das Etapas Aplicadas no Editor Power Query, neste artigo tentei ilustrar apenas com textos esses cenários que achei mais relevantes, mas esses recursos são sensacionais e seus efeitos sempre impactantes. A ideia é trazer novas formas de recursos. Esses são apenas exemplos que podemos realizar de uma forma bem simples, mas cada analista deverá utilizar de seus conhecimentos para verificar a real necessidade dessas soluções. O que desejo a vocês são inspirações.