Cache de resultados de consulta
Armazenamento em cache dos resultados das consultas
Se os resultados das suas perguntas não mudam com frequência, pode ser interessante armazenar esses resultados para que, na próxima vez que alguém acessar a pergunta, o Analytics possa recuperar os resultados em cache, em vez de consultar o banco de dados novamente.
Por exemplo, se seus dados são atualizados apenas uma vez por dia, não faz sentido consultar o banco de dados mais de uma vez ao dia, já que os dados não terão mudado. Retornar resultados em cache pode ser significativamente mais rápido, pois seu banco de dados não precisará recalcular os resultados para carregar sua pergunta.
Você pode definir políticas de invalidação de cache para perguntas, dashboards e bancos de dados.
Como funciona o cache no Analytics
Suponha que você configure uma política de cache para uma pergunta específica. Você define uma política de duração que determina invalidar os resultados (e limpar o cache) após uma hora.
Quando você visualiza a pergunta pela primeira vez, o Analytics verifica se há resultados armazenados. Se não encontrar nenhum, ele consulta seu banco de dados, retorna os resultados e os armazena (faz cache). Esses resultados permanecerão válidos pela próxima hora (de acordo com a política de duração de uma hora que você definiu).
Se você executar a pergunta meia hora depois, o Analytics retornará esses resultados armazenados.
Se executar a pergunta mais de uma hora após a execução inicial, o Analytics observará que os resultados armazenados são mais antigos do que o permitido pela política de cache. O Analytics excluirá os resultados armazenados, executará a consulta no banco de dados, retornará os resultados e os armazenará para consultas futuras. Esse cache permanecerá válido pela próxima hora, conforme a política de duração configurada. Para sempre atualizar o cache quando os resultados expirarem, veja Atualizar cache automaticamente.
Veja como diferentes políticas de cache interagem.
Políticas de invalidação de cache
Essas políticas determinam por quanto tempo os resultados armazenados em cache permanecerão válidos.
Política de cache por duração
Política de cache por duração está disponível apenas nos planos Pro e Enterprise (tanto self-hosted quanto no Analytics Cloud).
Invalida e limpa o cache após um certo número de horas. Quando alguém executa uma consulta, o Analytics primeiro verifica se tem resultados armazenados em cache e se esses resultados ainda estão válidos. Caso contrário, o Analytics executa a consulta no banco de dados e armazena os resultados em cache. Esses resultados permanecerão válidos pelo período definido.
Política de cache por agendamento
Política de cache por agendamento está disponível apenas nos planos Pro e Enterprise (tanto self-hosted quanto no Analytics Cloud).
Escolha quando invalidar o cache regularmente. O Analytics armazenará resultados apenas quando as pessoas executarem uma consulta, apagando os resultados armazenados de acordo com o agendamento definido.
Você pode agendar a invalidação do cache para:
- Horário (a cada hora)
- Diário
- Semanal
- Mensal
Ainda não oferecemos suporte a ciclos lunares.
Política de cache adaptativa
Use o tempo médio de execução de uma consulta para determinar por quanto tempo armazenar os resultados em cache.
- Duração mínima da consulta: o Analytics armazenará em cache essa pergunta se o tempo médio de execução for maior que este valor (em segundos).
- Multiplicador: para determinar por quanto tempo cada resultado em cache deve valer, multiplicamos o tempo médio da consulta pelo valor informado aqui. Por exemplo, se uma pergunta demora em média 10 segundos para retornar os resultados, e você configura um multiplicador de 100, o Analytics armazenará o cache por 10 x 100 segundos: 1.000 segundos (~16 minutos).
O Analytics recalcula o tempo médio de execução sempre que executa a consulta no banco de dados para atualizar os resultados em cache. Então, se a primeira execução da consulta demorar 5 minutos, o tempo médio será de 5 minutos. Se a próxima execução levar 7 minutos, o Analytics atualizará a média para 6 minutos (a média de 5 e 7 é 6).
Nos planos Pro e Enterprise, você pode visualizar estatísticas de consulta e cache na coleção Uso e desempenho.
Não armazenar resultados em cache
Se você selecionar “Não armazenar resultados em cache” para uma pergunta, dashboard ou banco de dados, o Analytics não armazenará os resultados em cache; ele sempre executará a consulta no banco de dados para atualizar os resultados.
Atualizar cache automaticamente
Atualizar cache automaticamente está disponível apenas nos planos Pro e Enterprise (tanto self-hosted quanto no Analytics Cloud).
Atualizar o cache automaticamente não se aplica quando as permissões de sandboxing de dados ou impersonação de conexão estão ativadas. Nesses casos, o Analytics ignora o cache gerado automaticamente e executa uma consulta nova (que ele armazenará em cache). Ou seja, o cache ainda funciona para sandboxing e impersonação, porém essa geração automática de cache preemptivo não é aplicada, já que essas permissões filtram os dados específicos para cada visualizador.
Se você ativar a atualização automática do cache para uma pergunta ou dashboard, o Analytics executará a consulta assim que o cache for invalidado conforme a política configurada. Normalmente, o cache só é renovado quando alguém visualiza o item depois que o cache expira. Assim, normalmente, quando o cache expira, a próxima pessoa a visualizar a pergunta terá que aguardar a execução da consulta para atualizar o cache. Com a atualização automática, os tempos de carregamento sempre serão os mais rápidos possíveis e as pessoas receberão resultados válidos e armazenados em cache.
Como o Analytics trata valores de parâmetros ao atualizar o cache automaticamente
Ao atualizar resultados automaticamente, o Analytics aplicará os valores padrão dos parâmetros (se houver). Também manterá em cache os resultados de até dez dos valores de parâmetros mais frequentemente usados durante o último período de cache (conforme a política definida). Se sua pergunta ou dashboard tiver múltiplos parâmetros, o Analytics armazenará em cache até dez combinações mais frequentes desses valores de parâmetros.
Por exemplo, suponha que um dashboard tenha um filtro de categoria (valor padrão: Doohickey
) configurado para armazenar resultados em cache a cada 24 horas. Nas últimas 24 horas, os valores aplicados ao filtro foram: Widget
, Gizmo
. Ao atualizar o cache, o Analytics armazenará em cache três conjuntos de resultados, cada conjunto com um desses valores aplicados: Doohickey
(valor padrão), Widget
e Gizmo
. Se, no entanto, ninguém executou a consulta nas últimas 24 horas, o Analytics atualizará o cache apenas para o resultado com o valor padrão do parâmetro aplicado.
Logs de cache automático
Para visualizar as consultas executadas pelo Analytics para atualizar o cache automaticamente, acesse o log de consultas e filtre o campo Query source
pelo valor cache-refresh
.
Definir políticas de cache para dashboards, perguntas e bancos de dados
Você pode definir políticas de cache para diferentes entidades.
- Definindo uma política de cache padrão
- Política de cache para bancos de dados (específica para cada banco conectado)*
- Cache para dashboard*
- Cache para perguntas*
* Indica funcionalidades dos planos Pro e Enterprise.
Política de cache padrão
Para definir uma política de cache padrão para seu Analytics: pressione Cmd/Ctrl + k para abrir a paleta de comandos e procure por Performance. Ou clique no ícone de Engrenagem para acessar Configurações Admin > Performance > Cache de banco de dados.
Clique no botão ao lado de Política padrão e selecione uma política de invalidação de cache.
Política de cache para bancos de dados
Cache de banco de dados está disponível apenas nos planos Pro e Enterprise (tanto self-hosted quanto no Analytics Cloud).
Funciona da mesma forma que a política padrão, mas permite definir uma política para bancos de dados específicos.
Se você tiver bancos de dados conectados que estejam configurados para Usar padrão, o Analytics exibirá a política padrão atual para esses bancos. Por exemplo, se você definir o padrão como “Adaptativo”, o Analytics mostrará “Adaptativo” como política atual para esses bancos configurados como “Usar padrão”.
Política de cache para dashboards
Cache para dashboards está disponível apenas nos planos Pro e Enterprise (tanto self-hosted quanto no Analytics Cloud).
Para definir uma política de cache para um dashboard, você deve ter acesso de curadoria à coleção do dashboard.
- Acesse o dashboard.
- Clique no ícone de informações.
- Clique em Política de cache.
- Selecione a política de invalidação de cache.
- Opcional: ative a opção para atualizar cache automaticamente.
- Salve suas alterações.
Política de cache para perguntas
Cache para perguntas está disponível apenas nos planos Pro e Enterprise (tanto self-hosted quanto no Analytics Cloud).
Para definir uma política de cache para uma pergunta, você deve ter acesso de curadoria à coleção da pergunta.
- Acesse sua pergunta.
- Clique no menu de três pontos … e selecione Editar configurações.
- Na seção Cache, selecione a política de invalidação de cache.
- Opcional: se selecionar uma política por Duração ou Agendamento, você poderá ativar a opção para atualizar cache automaticamente.
- Salve suas alterações.
Como as políticas de cache de dashboard, pergunta, banco de dados e padrão interagem
Se múltiplas políticas de cache afetarem a mesma pergunta, o Analytics usará a primeira política disponível nesta ordem:
- Pergunta
- Dashboard
- Banco de dados
- Padrão (site-wide)
Uma política para pergunta substitui uma política para dashboard, que substitui uma política para banco de dados, que por sua vez substitui a política padrão.
Limpando o cache
Para limpar o cache e atualizar os resultados:
- Perguntas e dashboards: Acesse o item e clique em Informações > Política de cache > Limpar cache (o botão “Limpar cache” fica na parte inferior da barra lateral).
- Banco de dados: Clique no ícone de Engrenagem e vá para Configurações Admin > Performance > Cache do banco de dados. Selecione o banco e clique no botão Limpar cache (localizado na parte inferior da página).
Local do cache
Se você estiver hospedando o Analytics por conta própria, os resultados das perguntas armazenados em cache serão salvos no seu banco de dados da aplicação.
Se você estiver usando o Analytics Cloud, os resultados armazenados em cache serão salvos nos servidores do Analytics nos Estados Unidos (pois nosso serviço em nuvem gerencia o banco de dados da aplicação para você).
Leitura adicional
Consulte a documentação para outras versões do Analytics.