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á o que é um cache de dados e por que ele é importante. Um cache de dados armazena bits de dados que podem se tornar valiosos para uso futuro.
Se você precisar das mesmas informações em uma medida ou ação futura, o cache de dados fornecerá as informações de que você precisa. Elimina fazer o sistema buscar novamente os mesmos conjuntos de dados.
Neste tutorial, você passará por oito coisas importantes a serem lembradas ao lidar com caches de dados no LuckyTemplates:
Índice
Definição e finalidade de um cache de dados
Um cache de dados é uma tabela temporária criada na memória pelo mecanismo de armazenamento . Essa tabela temporária é enviada para o mecanismo de fórmula que itera sobre essas informações e executa diferentes operações após a consulta.
Toda a comunicação entre o mecanismo de fórmula e o mecanismo de armazenamento sempre acontece na forma de um cache de dados. O mecanismo de fórmula prepara os planos de consulta e envia as instruções para o mecanismo de armazenamento. O mecanismo de armazenamento o envia de volta ao mecanismo de fórmula, que retorna o resultado ao usuário.
Como o mecanismo de fórmula não tem acesso direto aos dados armazenados em DirectQuery e VertiPaq, ele depende do mecanismo de armazenamento para os caches de dados.
O cache de dados enviado pelo mecanismo de armazenamento está em um formato descompactado. Isso significa que o tamanho dos dados armazenados na ferramenta Vertipaq pode ser reduzido.
Mas quando é hora de retornar o cache de dados de volta ao mecanismo de fórmula, ele não pode ser compactado porque o mecanismo de fórmula não funciona com conjuntos de dados compactados.
Qual é o impacto de um cache de dados na RAM
Se o mecanismo de armazenamento estiver enviando grandes blocos de caches de dados, isso ocupará muito espaço na RAM do software. Também vai consumir uma quantidade significativa de tempo para o mecanismo de fórmula realizar iterações e produzir um resultado.
Portanto, ao escrever seu código DAX, você precisa entender que ele deve ser escrito de forma a minimizar as linhas no cache de dados.
O melhor cenário seria corresponder ao número de linhas mostradas no visual com o número de linhas retornadas no cache de dados.
Na maioria das vezes, é difícil retornar a mesma quantidade de linhas. Se isso acontecer, você precisará revisar seu código DAX e dividi-lo de forma a otimizar o cache de dados produzido pelo mecanismo de armazenamento.
Como um cache de dados otimiza as consultas
Funções não otimizadas
Algumas das funções na linguagem DAX não são otimizadas para o mecanismo de armazenamento. Para entender melhor, vejamos um exemplo.
Por exemplo, em seu código, em vez de usar SUMMARIZE, você pode usar a função As funções SUMMARIZE e GROUPBY executam a mesma operação. No entanto, existem diferenças notáveis dependendo do cenário.
A função GROUPBY não é otimizada para o Storage Engine. Se você usar a função GROUPBY em uma tabela de fatos com 12 milhões de linhas, ela produzirá um cache de dados com o mesmo número de linhas. Isso pode ser tão grande quanto 600 MB até 1 GB.
Esse tamanho pode colocar muita pressão na sua RAM. Portanto, em vez de usar GROUPBY, use . A função SUMMARIZE resulta em um tamanho de cache de dados menor. Você pode emparelhá-lo com GROUPBY como uma função de nível superior.
Reiterações reduzidas
Ao escrever suas medidas ou consultas DAX, você precisa garantir que o código produzido nos bastidores seja adequado para o mecanismo de armazenamento.
Você precisa escrever seu código DAX de forma a produzir um cache de dados que também possa ser usado em consultas subsequentes. A vantagem de fazer isso é que, em vez de executar uma verificação separada usando o VertiPaq , o mecanismo de armazenamento verificará se uma consulta semelhante já foi recebida.
Se isso for verdade, significa que seu cache de dados está disponível na memória. Portanto, em vez de verificar a consulta novamente, o VertiPaq simplesmente a retornará da memória cache para o mecanismo de fórmula.
Se você vir um operador CALLBACKDATAID em sua consulta do mecanismo de armazenamento, isso significa que essas consultas não podem ser armazenadas em cache. Caso uma consulta semelhante seja enviada ao mecanismo de armazenamento, ele executará uma reiteração.
Assim, VertiPaq terá que chamar o mecanismo de fórmula para resolver a consulta. Isso aumenta o tempo geral de execução porque a memória cache não pode ser usada nesse caso.
Conclusão
O cache de dados é seu melhor amigo na linguagem DAX. Lembre-se de escrever seu código DAX de forma a maximizar o espaço de armazenamento e reduzir o número de iterações da ferramenta VertiPaq. Você pode reutilizar o cache de dados já produzido pelo Storage Engine para reduzir o tempo de execução da consulta.
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.