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á sobre o que os caches de dados fazem em um cálculo DAX. Você entenderá como eles funcionam com os mecanismos de fórmula e armazenamento para fornecer respostas às suas perguntas.
Índice
O que são caches de dados?
O mecanismo de armazenamento interage com o mecanismo de fórmula na forma de um cache de dados.
Se você se lembra das postagens de blog anteriores sobre a DAX Query Structure, saberá que o mecanismo de fórmula solicita dados do mecanismo de armazenamento. Este último vai para o banco de dados, obtém diferentes tipos de dados e os retorna ao mecanismo de fórmula na forma de um cache de dados.
O mecanismo de armazenamento pode fazer cálculos e agregações simples, o que o torna mais rápido. Ele também oferece paralelismo que pode preencher vários caches de dados de uma só vez. Uma consulta do mecanismo de armazenamento pode levar tempo para gerar uma resposta. Mas se você adicionar todas as diferentes consultas do mecanismo de armazenamento, os resultados não serão os mesmos porque estão preenchendo mais de um cache de dados.
O mecanismo de fórmula, por outro lado, funciona em consultas complexas. Como é um mecanismo de encadeamento único, ele pode usar apenas um cache de dados consolidado final. Ele começa a trabalhar no cache de dados assim que todas as solicitações são preenchidas pelo mecanismo de armazenamento.
Se a solicitação do mecanismo de fórmula for exatamente igual à solicitação anterior, o cache que foi retornado anteriormente será usado novamente. O mecanismo de armazenamento é inteligente o suficiente para retornar o mesmo cache de dados se receber a mesma solicitação. Isso torna o desempenho do DAX mais rápido, pois os dados já estão armazenados em cache.
Ao executar uma medida, é importante executá-la em um cache frio; sempre evite executar suas consultas no cache quente. Um cache quente significa que o cache de dados do mecanismo de armazenamento já está formado e pronto para ser retornado.
Quais são as principais características?
Caches de dados são tabelas materializadas na memória que levam tempo e consomem RAM. Tenha sempre em mente que a materialização deve ser a mais baixa possível.
Outra característica importante é que esses caches são descompactados . Depois que sai do mecanismo de armazenamento e é enviado para o mecanismo de fórmula, o cache de dados se torna uma tabela cheia descompactada na memória. Essa execução é muito mais lenta do que uma solicitação do mecanismo de armazenamento de mesmo nível, que está toda na memória e compactada.
Não há problema em usar o mecanismo de fórmula; você só precisa fazer com que o mecanismo de armazenamento faça o trabalho o máximo possível.
Os caches de dados também são temporários. Eles existem por algum tempo e depois desaparecem. Embora sejam materializados na memória, eles não são persistentes, então serão eliminados.
Onde encontrar caches de dados?
Você pode encontrar essas informações na coluna de registros dos planos de consulta física e em temporizações do servidor do DAX Studio na coluna de linhas . Ele mostrará quantas linhas estão sendo produzidas pelo mecanismo de armazenamento e enviadas para o mecanismo de fórmula.
Se você executar certos testes nos tempos do servidor, notará que a contagem de linhas pode estar um pouco errada. Esta é apenas uma diretriz de quantas linhas você está puxando.
A principal coisa a ter em mente com os caches de dados é que o número de linhas materializadas deve ser igual ao número de linhas necessárias para a saída o mais próximo possível. Se houver uma grande diferença no número de linhas, significa que a operação de ordem está desativada.
Se a quantidade de linhas materializadas for igual à quantidade de linhas necessárias para a saída, é chamada de Late Materialization . No entanto, se o número de linhas materializadas for maior que o número de linhas necessárias, é chamado de materialização antecipada . Como esses são dados não compactados, você não deve permitir que ambos os mecanismos os materializem, pois isso diminuirá o desempenho do DAX.
Este é um exemplo de Materialização Antecipada:
No plano de consulta física, você pode ver 25 milhões de linhas sendo puxadas na coluna de registros. No entanto, a consulta de exemplo não precisa de 25 milhões de linhas de saída. Isso significa que a consulta extraiu muitas linhas do que o necessário.
Se você observar os tempos do servidor, verá a mesma quantidade de linhas sendo extraídas na coluna de linhas.
Nos visuais da CPU do SE , você verá um número se houver paralelismos em suas consultas. Como este exemplo não tem nenhum, ele mostrou 0.
O que é DAX Studio no LuckyTemplates Desktop
DAX Tutorial: contexto e mecanismo de cálculo
VertiPaq Analyzer no DAX Studio | Tutorial do LuckyTemplates
Conclusão
Um DAX de desempenho lento pode significar que sua consulta está extraindo caches desnecessários para que seus mecanismos funcionem. Os caches de dados são responsáveis pela velocidade e precisão do seu DAX porque os mecanismos trabalham neles para gerar respostas para diferentes solicitações. Para obter um desempenho DAX mais rápido, você pode resolver esse problema criando adequadamente seu modelo de dados e medidas DAX.
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.