Otimização e armazenamento em cache do conjunto de dados

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

Consultar desempenho

O senhor pode inspecionar as consultas e seu desempenho em workspace query história. O histórico de consultas mostra SQL consultas realizadas usando o SQL warehouse. Clique em Ícone de história Query History na barra lateral para view a história da consulta. Consulte Histórico de consultas.

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

Otimizações de conjuntos de dados

O conjunto de dados do painel inclui as seguintes otimizações de desempenho:

  • Se o tamanho do resultado do dataset for pequeno (menos de 64 mil linhas), o resultado do dataset será puxado para o cliente, e a filtragem e a agregação específicas da visualização serão realizadas no cliente. A filtragem e a agregação de dados para um conjunto de dados pequeno é muito rápida, e garantir que o seu dataset seja pequeno pode ajudá-lo a otimizar o desempenho do painel. Com um conjunto de dados pequeno, somente a consulta dataset aparece no histórico de consultas.

  • Se o tamanho do resultado de dataset for grande (>= 64K linhas), o texto da consulta de dataset será incluído em uma cláusula SQL WITH e a filtragem e a agregação específicas da visualização serão realizadas em uma consulta no backend e não no cliente. Com um grande conjunto de dados, a consulta de visualização aparece no histórico de consultas.

  • Para consultas de visualização enviadas ao backend, consultas de visualização separadas no mesmo site dataset que compartilham as mesmas cláusulas GROUP BY 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 inicial, operando em uma base de melhor esforço. Isso significa que, embora o sistema sempre tente usar resultados de consulta históricos vinculados às credenciais do painel para melhorar o desempenho, há alguns casos em que os resultados em cache não podem ser criados ou mantidos.

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

Tipo de painel

Tipo de cache

Painel de controle 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 houver 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 um conjunto de dados com mais de 64.000 linhas faz com que as consultas sejam executadas novamente, a menos que os mesmos filtros tenham sido aplicados anteriormente nas últimas 24 horas.

Consultas programadas

A adição de um programar 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 programada do painel, ocorre o seguinte:

  • Toda a lógica do SQL que define a execução do conjunto de dados 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.