Pular para o conteúdo principal

Consultar percepções de desempenho

info

Beta

Este recurso está em Beta. Os administradores do espaço de trabalho podem controlar o acesso a esse recurso na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.

Esta página descreve as percepções de desempenho que o Databricks retorna no histórico de queries e como agir sobre elas.

Quando as consultas são executadas, o Databricks pode retornar percepções que identifiquem oportunidades para melhorar o desempenho.

Encontre percepções e recomendações para sua consulta

As percepções aparecem no seu histórico de consultas e no perfil da consulta. O painel de detalhes da query mostra um resumo de percepções, classificadas pelo efeito estimado na duração total da tarefa. A **tab Percepções de Desempenho** no perfil de query exibe todos os detalhes para cada percepção.

Otimizar com o Genie Code

Quando uma query tem percepções acionáveis, selecione **Otimizar** para abrir o Genie Code. Para obter percepções que exigem uma alteração na consulta, o Genie Code reescreve a consulta e apresenta as alterações para sua aprovação. Para percepções que envolvem alterações em tabelas ou compute, o Genie Code resume as ações recomendadas como texto em linguagem natural.

Para saber mais sobre como trabalhar com o Genie Code, consulte Genie Code.

Percepções de otimização de queries

COVERAGE_FILTER_KEYS_CLUSTERING

A tabela é clusterizada por uma ou mais chaves que não são usadas em filtros durante a varredura da tabela.

Recomendação: Adicione filtros nas chaves de clustering para reduzir bytes lidos.

COVERAGE_FILTER_KEYS_PARTITIONING

A tabela é particionada por uma ou mais chaves que não são usadas em filtros durante a varredura da tabela.

Recomendação: Adicionar filtros nas chaves de partição para reduzir bytes lidos.

COVERAGE_PHOTON

Photon não consegue acelerar esta operação, portanto, a consulta utiliza o mecanismo de runtime padrão.

Recomendação: Analise as limitações do Photon e ajuste a consulta para usar um caminho de execução compatível.

JUNÇÃO_EXPLOSIVA

O join produz consideravelmente mais linhas do que lê.

Recomendação: Determine o subconjunto de resultados de que você precisa, em seguida, atualize a condição de join ou reduza o número de linhas de entrada de ambas as relações.

FLUXO_COMPLETO_RECOMPUTADO

O fluxo executa como um recompute completo.

Recomendação: Reescreva a consulta para suporte incremental para reduzir os bytes lidos.

AGREGAÇÃO REDUNDANTE

Uma operação de agregação não alterou o resultado da query.

Recomendação: Remover o agregado ou aplicar restrições de chave primária e chave estrangeira.

JUNÇÃO_SELETIVA

O join produz significativamente menos linhas do que lê.

Recomendação: determine qual subconjunto de resultados é necessário, então adicione filtros antes do join para reduzir as linhas de entrada.

PROJEÇÃO_AMPLA

A consulta projeta todas as colunas da tabela.

Recomendação: projete apenas as colunas necessárias para reduzir os bytes lidos.

Percepções sobre a disposição de dados

AUTO_LIQUID_CLUSTERING

A tabela é otimizada manualmente e pode se beneficiar de liquid clustering automático.

Recomendações:

  • Converter a tabela de externa para gerenciada para melhor desempenho e manutenção automática.
  • Habilitar Otimização Preditiva na tabela para operações de manutenção automáticas.
  • Habilitar o agrupamento automático na tabela para reduzir os bytes lidos.

ESCRITA CONCORRENTE

Gravações concorrentes na tabela causam conflitos que são automaticamente resolvidos ou falham.

Recomendação: Revisar histórico do Delta para identificar gravações concorrentes e ajustar a programação para evitar conflitos.

Variação das Estatísticas de Cobertura

As estatísticas de salto de dados do Delta estão ausentes ou incompletas para os filtros de arquivo de varredura de tabela, portanto, a consulta usa filtragem em arquivo.

O status das estatísticas para cada filtro pode ser um dos seguintes:

  • Completo: Estatísticas estão disponíveis para todos os filtros.
  • Parcial: Estatísticas estão disponíveis para um subconjunto de filtros.
  • Indisponível: Estatísticas não estão disponíveis para nenhum filtro.
  • Não utilizadas: As estatísticas não podem ser usadas porque o filtro converte o tipo de dados.

Recomendação: Coletar estatísticas do Delta para reduzir os bytes lidos.

Otimizador de Estatísticas de Cobertura

As estatísticas do otimizador baseado em custos estão ausentes ou incompletas, portanto, o plano de consulta usa heurísticas padrão.

Recomendação: Coletar estatísticas para permitir que o otimizador produza um plano melhor.

DADOS_DISCUSSÃO

Dados são distribuídos de forma desigual entre recursos de computação.

Recomendação: Revise a distribuição de dados e, em seguida, use salting de chave ou pré-agregação para equilibrar a carga de trabalho.

Percepções de compute e recursos

VAZAMENTO DE DADOS

O spill de dados para o disco ocorreu durante a execução da consulta, pois não havia memória suficiente.

Recomendação: Aumentar o tamanho do warehouse para adicionar memória. Reduza o número de linhas, colunas ou o tamanho de colunas grandes (strings, matrizes, mapas, estruturas) para diminuir o uso de memória.

TEMPO_DE_FILA_EXCESSIVO

A consulta aguardou na fila do warehouse.

Recomendação: Aumente o máximo número de clusters no warehouse para reduzir o tempo de espera na fila.

IO_THROTTLING

A solicitação de armazenamento na nuvem foi limitada pelo provedor de nuvem.

Recomendação: Entre em contato com seu administrador para solicitar limites de solicitação de armazenamento maiores de seu provedor de nuvem.

Outros recursos

Para uma visão geral mais abrangente das melhores práticas de desempenho, consulte o Guia Abrangente para Otimizar Cargas de Trabalho do Databricks, Spark e Delta Lake.