Colunas calculadas no SharePoint | Uma visão geral
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
Neste tutorial, você aprenderá uma técnica de otimização DAX usando a função UNION. Este tutorial irá comparar o desempenho da função UNION versus Power Query e outras técnicas para combinar tabelas.
A função combina duas tabelas em uma única tabela combinando suas linhas e removendo quaisquer linhas duplicadas.
O exemplo neste tutorial é uma tabela Sales que foi dividida em três tabelas para cada ano (2007, 2008, 2009).
Índice
A função UNION no DAX
Abra o DAX Studio e inicie o Server Timings and Query Plan.
O código DAX abaixo é usado como exemplo:
Depois de executar o código, vá para a guia Horários do servidor . Você pode ver que o código leva um total de 5,4 segundos para ser executado. A maior parte do tempo de execução foi gasta no Storage Engine . Cada uma dessas três consultas contém a mesma operação, mas os anos são diferentes.
Após essas três consultas serem retornadas pelo Storage Engine, o Formula Engine realiza um UNION, que pode ser observado no Plano de Consulta Lógica. O Plano de consulta também executa um para calcular as vendas totais.
No Plano de Consulta Física, você pode ver os três caches de dados contendo as operações realizadas para cada ano na tabela Vendas.
Comparando o desempenho do DAX
Para construir a comparação, vamos criar uma medida para Total Sales usando a tabela Sales original.
Se você executar esse código e acessar a guia Server Timings , verá que isso é significativamente mais eficiente do que a função UNION.
A função UNION consome 97,9 kilobytes, enquanto a nova medida consome apenas 1 KB.
Quando você usa UNION, o mecanismo DAX retorna uma grande quantidade de cache de dados para o mecanismo de fórmula. Isso coloca muita pressão na RAM.
Portanto, se você estiver lidando com um modelo de dados contendo mais de um milhão de linhas, não é recomendável usar a função UNION
Alternativas de função UNION DAX
Em vez de usar UNION, você pode usar três funções SUMX para este exemplo. Ou seja, uma função SUMX para cada ano.
Ao executar este código e ir para a guia Server Timings, você pode ver que o tempo de execução é significativamente menor. Passou de 5.400 ms para 33 ms enquanto ainda executava três consultas diferentes.
Outra maneira é anexar a tabela do Modelo de Dados no Power Query ou na própria fonte de dados.
Mas a melhor opção é criar uma tabela calculada que fará a união dessas três tabelas. Mas esta opção tem seus prós e contras.
O uso de uma tabela calculada permite que você economize o tempo de processamento geral em vez de executar um acréscimo no Power Query. No entanto, isso fará com que o tamanho do banco de dados no VertiPaq aumente.
Ao usar uma tabela calculada, você está criando uma nova tabela que combina as três tabelas. Mas essas três tabelas divididas continuarão no banco de dados.
Neste exemplo, as três tabelas consomem um total de 25 MB. Se você criar uma tabela calculada, ela consumirá outros 25 MB em sua RAM.
Para casos delicados como esses, você precisa tomar uma decisão informada sobre qual seria o melhor curso de ação a ser tomado.
Conclusão
A função UNION no DAX combina duas tabelas em uma, facilitando a análise dos dados. Ele funciona tomando duas tabelas como entrada e retornando uma nova tabela que contém todas as linhas de ambas as tabelas de entrada. No entanto, esta função tem suas próprias limitações.
A função UNION pode ser mais lenta do que outros métodos de combinação de dados, especialmente se as tabelas de entrada forem grandes. Também pode consumir mais espaço no armazenamento em oposição a outras alternativas.
Sempre que uma situação exigir que as tabelas sejam combinadas, é importante primeiro pesar os prós e os contras antes de decidir usar a função UNION. Suas alternativas incluem a função SUMX, uma tabela de modelo de dados ou uma tabela calculada.
Tudo de bom,
Descubra a importância das colunas calculadas no SharePoint e como elas podem realizar cálculos automáticos e obtenção de dados em suas listas.
Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates
Aprenda a contar o número total de dias em que você não tinha estoque por meio dessa técnica eficaz de gerenciamento de inventário do LuckyTemplates.
Saiba mais sobre as exibições de gerenciamento dinâmico (DMV) no DAX Studio e como usá-las para carregar conjuntos de dados diretamente no LuckyTemplates.
Este tutorial irá discutir sobre Variáveis e Expressões dentro do Editor do Power Query, destacando a importância de variáveis M e sua sintaxe.
Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.
Calcular uma média no LuckyTemplates envolve técnicas DAX para obter dados precisos em relatórios de negócios.
O que é self em Python: exemplos do mundo real
Você aprenderá como salvar e carregar objetos de um arquivo .rds no R. Este blog também abordará como importar objetos do R para o LuckyTemplates.
Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.