Partilhar via


Otimização e cache de conjuntos de dados

Os painéis de IA/BI são ferramentas valiosas de análise de dados e tomada de decisão, e tempos de carregamento eficientes podem melhorar significativamente a experiência do usuário. Este artigo explica como as otimizações de cache e conjunto de dados tornam os painéis mais eficientes e eficientes.

Desempenho de consultas

Você pode inspecionar consultas e seu desempenho no histórico de consultas do espaço de trabalho. O histórico de consultas mostra consultas SQL realizadas usando armazéns SQL. Clique em Ícone Histórico Histórico de Consultas na barra lateral para visualizar o histórico de consultas. Consulte Histórico de consultas.

Para conjuntos de dados de painel, o Azure Databricks aplica otimizações de desempenho dependendo do tamanho do resultado do conjunto de dados.

Otimizações de conjuntos de dados

Os conjuntos de dados do painel de IA/BI incluem as seguintes otimizações de desempenho:

  • Se o tamanho do resultado do conjunto de dados for pequeno (menor ou igual a 100K linhas ou 100MB, o que for menor), o resultado do conjunto de dados será puxado para o cliente e a filtragem e agregação específicas da visualização serão executadas no navegador. Filtrar e agregar dados para pequenos conjuntos de dados é muito rápido, e garantir que seu conjunto de dados seja pequeno pode ajudá-lo a otimizar o desempenho do painel. Com conjuntos de dados pequenos, apenas a consulta do conjunto de dados aparece no histórico de consultas.
  • Se o tamanho do resultado do conjunto de dados for grande (maior que 100K linhas ou 100MB), o texto da consulta do conjunto de dados será quebrado em uma cláusula SQL WITH e a filtragem e agregação específicas da visualização serão executadas em uma consulta no back-end em vez de no navegador. Com grandes conjuntos de dados, a consulta de visualização aparece no histórico de consultas.
  • Para consultas de visualização enviadas para o back-end, consultas de visualização separadas no mesmo conjunto de dados que compartilham as mesmas GROUP BY cláusulas e predicados de filtro são combinadas em uma única consulta para processamento. Nesse caso, os usuários podem ver uma consulta combinada no histórico de consultas que está buscando resultados para várias visualizações.

Armazenamento em cache e atualização de dados

Os painéis mantêm um cache de resultados de 24 horas para otimizar os tempos de carregamento iniciais, operando com base no melhor esforço. Isso significa que, embora o sistema sempre tente usar resultados históricos de consulta vinculados a credenciais de painel para melhorar o desempenho, há alguns casos em que os resultados armazenados em cache não podem ser criados ou mantidos. Os dados armazenados em cache não têm limite de memória específico ou contagem de consultas fixas.

Para painéis de várias páginas, aplica-se o seguinte:

  • A edição de um painel de rascunho carrega e armazena em cache todos os conjuntos de dados.
  • Quando os visualizadores abrem um painel publicado, apenas os conjuntos de dados que suportam a página ativa são executados e armazenados em cache.
  • Se uma agenda for definida, todos os conjuntos de dados serão atualizados de acordo com a agenda, e esses resultados serão armazenados em cache.

A tabela a seguir explica como o cache varia de acordo com o status e as credenciais do painel:

Tipo de painel Tipo de cache
Painel publicado com credenciais incorporadas Cache compartilhado. Todos os espectadores veem os mesmos resultados.
Painel de rascunho ou painel publicado sem credenciais incorporadas Cache por usuário. Os visualizadores veem os resultados com base em suas permissões de dados.

Os painéis usam automaticamente os resultados da consulta em cache se os dados subjacentes permanecerem inalterados após a última consulta ou se os resultados tiverem sido recuperados há menos de 24 horas. Se existirem resultados obsoletos e os parâmetros forem aplicados ao painel, as consultas serão executadas novamente, a menos que os mesmos parâmetros tenham sido usados nas últimas 24 horas. Da mesma forma, a aplicação de filtros a conjuntos de dados que excedam 100.000 linhas solicita que as consultas sejam executadas novamente, a menos que os mesmos filtros tenham sido aplicados anteriormente nas últimas 24 horas.

Consultas agendadas

Adicionar uma agenda a um painel publicado com credenciais incorporadas pode acelerar significativamente o processo de carregamento inicial para todos os visualizadores do painel.

Para cada atualização agendada do painel, ocorre o seguinte:

  • Toda a lógica SQL que define conjuntos de dados é executada no intervalo de tempo designado.
  • Os resultados preenchem o cache de resultados da consulta e ajudam a melhorar o tempo de carregamento inicial do painel.