persist_for (para análises detalhadas)

Esta página se refere ao parâmetro persist_for, que faz parte de uma análise detalhada.

persist_for também pode ser usado como parte de um modelo, descrito na página de documentação do parâmetro persist_for (para modelos).

persist_for também pode ser usado como parte de uma tabela derivada, conforme descrito na página de documentação do parâmetro persist_for (para tabelas derivadas).

Uso


explore: explore_name {
  persist_for: "1 hour"
}
Hierarquia
persist_for
Valor padrão
A configuração persist_for do modelo

Aceita
Uma string que contém um número inteiro seguido de um período (segundos, minutos ou horas)

Regras especiais
Uma configuração de persist_for no nível do explore vai substituir a configuração de persist_for no nível do modelo.

Definição

Para um gerenciamento de cache mais robusto, incluindo a sincronização da política de cache do Looker com o processo de ETL (extração, transformação e carregamento) do banco de dados, considere usar um datagroup e um persist_with, conforme descrito na página de documentação Consultas de armazenamento em cache.

O persist_for permite modificar o período em que os resultados de consulta armazenados em cache são usados para uma análise detalhada específica. O período padrão do cache no Looker é de uma hora. Os resultados do cache são armazenados em um arquivo criptografado na sua instância do Looker.

O mecanismo de cache no Looker funciona da seguinte maneira: quando um usuário executa uma consulta específica, o resultado dela é armazenado em cache. Se exatamente a mesma consulta (tudo precisa ser igual, incluindo limites de linha etc.) for executada novamente em menos tempo do que o intervalo especificado por persist_for, os resultados em cache serão retornados. Caso contrário, uma nova consulta será executada no banco de dados.

Quando o intervalo persist_for expira, os dados são excluídos do cache. Consulte a página de documentação Armazenamento em cache de consultas para saber por quanto tempo os dados são armazenados no cache.

Se persist_for estiver definido para uma Análise e o modelo dela, o valor definido para a Análise terá prioridade nas consultas baseadas nela.

Em uma análise detalhada, é possível ver se uma consulta foi retornada do cache ou forçar a geração de novos resultados do banco de dados. Consulte a página de documentação Armazenamento de consultas em cache para mais informações.

Exemplos

Ajuste a duração do cache para 2 horas:

explore: my_explore {
  persist_for: "2 hours"
}

Ajuste a duração do cache para 30 minutos:

explore: my_explore {
  persist_for: "30 minutes"
}

Desative o armazenamento em cache para que os usuários nunca recebam resultados em cache para uma consulta:

explore: my_explore {
  persist_for: "0 seconds"
}

Informações importantes

Quando persist_for é definido como 0 seconds, as consultas dos usuários não recuperam dados do cache. No entanto, o Looker exige o cache de disco para processos internos. Portanto, seus dados criptografados sempre serão gravados no cache, mesmo quando persist_for estiver definido como 0 seconds. Depois de gravados no cache, os dados são sinalizados para exclusão, mas podem permanecer no disco por até 10 minutos. Consulte a página de documentação Armazenamento em cache de consultas para mais detalhes.

O persist_for não se alinha necessariamente com a importação de dados

Muitas empresas fazem uma importação diária de dados para o banco de dados de análise. Às vezes, eles argumentam que não há motivo para executar consultas atualizadas se os dados não são atualizados constantemente. Por isso, definem a duração do cache como 24 horas (como persist_for: 24 hours). No entanto, isso não impede que os usuários recebam dados mais antigos do que a atualização mais recente.

Por exemplo, uma consulta é executada ao meio-dia de 1º de janeiro, novos dados são importados na manhã de 2 de janeiro e, em seguida, a consulta é executada novamente ao meio-dia de 2 de janeiro. Como a consulta foi executada dentro do período de 24 horas especificado por persist_for, os dados de 1º de janeiro serão retornados, mesmo que novos dados tenham sido carregados em 2 de janeiro.

Se você quiser que o armazenamento em cache seja alinhado com as importações de dados, use um grupo de dados e persist_with, conforme descrito na documentação sobre consultas de cache.

Os Looks programados armazenam resultados em cache

Quando um Look programado é executado, ele cria um conjunto de resultados em cache da mesma forma que uma consulta executada pelo usuário. Para pré-armazenar um determinado Look, salve e programe.