Ideias de materialização para caches de dados no DAX Studio

Ideias de materialização para caches de dados no DAX Studio

Este tutorial discutirá sobre materialização para caches de dados no DAX Studio. Esta postagem mostrará como isso afeta seu cálculo ao gerar resultados com sua consulta. Você aprenderá qual materialização é melhor para maximizar o desempenho do DAX.

Existem duas ideias de materialização: Materialização Precoce e Materialização Tardia .

Índice

Materialização antecipada

Materialização antecipada é quando o número de linhas materializadas é maior que o número de linhas necessárias para a saída.

Se sua saída for uma tabela por ano civil e você tiver cinco anos de dados, não é necessário trazer muitas linhas materializadas. A melhor prática é ter o número de linhas materializadas igual ao número de linhas necessárias. No entanto, nem sempre é esse o caso porque depende da complexidade do seu DAX e da configuração de dados.

Lembre-se sempre de que os dados consistem em colunas. Assim, quando o mecanismo de fórmula precisa trabalhar em uma tabela, as colunas são reunidas novamente em um formato de tabela, que é a materialização. Em uma ideia de materialização antecipada, o mecanismo de armazenamento envia o cache de dados para o mecanismo de fórmula. O mecanismo de fórmula trabalha nesse cache e executa processos complexos.

A materialização antecipada pode ser causada por junções complexas ou um relacionamento muitos-para-muitos em seus modelos de dados. Também pode ser causado por filtros ou iteradores complexos.

Não é errado ter medidas complexas; você só precisa configurá-los corretamente para aproveitar ao máximo o mecanismo de armazenamento.

Materialização Tardia

Late Materialization é quando você tem o número de linhas materializadas igual ou próximo ao número de linhas necessárias para sua saída.

O mecanismo de armazenamento faz quase todo o trabalho, não deixando nada para o mecanismo de fórmula. Isso torna todo o cálculo mais rápido.

Estes são exemplos de consultas de Early e Late Materialization:

Ideias de materialização para caches de dados no DAX Studio

Antes de executar essas consultas, certifique-se de limpar o cache. Isso fará com que suas consultas sejam executadas no cache frio. Se você executar seu DAX sem limpar o cache, obterá este resultado:

Ideias de materialização para caches de dados no DAX Studio

O tempo total de execução é de apenas 1861 milissegundos porque já usou um cache. Portanto, sempre limpe seu cache antes de executar suas consultas.

Se você executar a consulta Early Materialization, verá que o tempo total gasto é de 9.485 milissegundos. Ele gerou um cache de dados e uma saída de uma linha, mas retornou 25 milhões de linhas.

Ideias de materialização para caches de dados no DAX Studio

Você não precisa materializar 25 milhões de linhas para obter um resultado de uma linha porque leva tempo e diminui o desempenho do DAX.

Se você executar a consulta Late Materialization, verá que todo o cálculo levou apenas 1340 milissegundos. Ele também gerou 2 caches de dados, cada um retornando 5.003 linhas.

Ideias de materialização para caches de dados no DAX Studio

Se você observar o plano de consulta física, poderá ver 5.000 linhas. Eles não têm o mesmo número de linhas. Às vezes, o resultado das temporizações do servidor terá uma pequena discrepância em relação ao número exato de linhas no plano de consulta.

Ideias de materialização para caches de dados no DAX Studio

Então, trabalhando em um cache de dados com 25 milhões de linhas, você agora tem dois caches de dados com 5.003 linhas. É por isso que trabalhar com Later Materialization obtém resultados mais rápidos do que Early Materialization.

Dentro de cada consulta de materialização

Só de olhar a consulta já dá para perceber que a Materialização Posterior é mais rápida. A consulta Early Materialization conta as linhas de uma tabela resumida.

Ideias de materialização para caches de dados no DAX Studio

A tabela resumida e materializada é maior do que apenas fazer um de na tabela, que é o que a consulta Late Materialization está fazendo.

Se sua consulta for lenta, comece observando quantas linhas estão sendo extraídas em sua consulta e quantas são necessárias para a saída. Você também pode acessar o Plano de Consulta Lógica e acompanhar o fluxo de trabalho que está acontecendo no cálculo.


O que é o DAX Studio no LuckyTemplates Desktop
DAX Tutorial: contexto e a
medida do mecanismo de cálculo no LuckyTemplates: dicas e técnicas de otimização

Conclusão

A materialização ocorre quando suas consultas extraem colunas ou linhas de seu modelo de dados. Esse processo acontece naturalmente quando seu mecanismo obtém dados de seu modelo de dados para fornecer resultados para sua consulta.

No entanto, podem ocorrer problemas se o DAX extrair muitas linhas do que o necessário para o resultado. Esse problema pode ser resolvido simplificando seu DAX para executar processos específicos.


Colunas calculadas no SharePoint | Uma visão geral

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.

Atributos pré-atentivos: como isso pode afetar seu relatório

Atributos pré-atentivos: como isso pode afetar seu relatório

Descubra todos os atributos pré-atentivos e saiba como isso pode impactar significativamente seu relatório do LuckyTemplates

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

Calcular Dias de Estoque Zero – LuckyTemplates Inventory Management Insights

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.

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

Usando exibições de gerenciamento dinâmico (DMV) no DAX Studio

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.

Variáveis ​​e expressões dentro do editor do Power Query

Variáveis ​​e expressões dentro do editor do Power Query

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.

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Como calcular a diferença em dias entre compras usando o DAX no LuckyTemplates

Aprenda a calcular a diferença em dias entre compras usando DAX no LuckyTemplates com este guia completo.

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

Calculando a média no LuckyTemplates: isolando os resultados do dia da semana ou do fim de semana usando o DAX

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

O que é self em Python: exemplos do mundo real

O que é self em Python: exemplos do mundo real

Como salvar e carregar um arquivo RDS em R

Como salvar e carregar um arquivo RDS em R

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.

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Primeiros N dias úteis revisitados - uma solução de linguagem de codificação DAX

Neste tutorial de linguagem de codificação DAX, aprenda como usar a função GENERATE e como alterar um título de medida dinamicamente.