Teradata - ajuste de desempenho

Este capítulo discute o procedimento de ajuste de desempenho no Teradata.

Explicar

A primeira etapa no ajuste de desempenho é o uso de EXPLAIN em sua consulta. O plano EXPLAIN fornece os detalhes de como o otimizador executará sua consulta. No plano Explicar, verifique as palavras-chave como nível de confiança, estratégia de junção usada, tamanho do arquivo de spool, redistribuição, etc.

Coletar estatísticas

O Optimizer usa dados demográficos para criar uma estratégia de execução eficaz. O comando COLLECT STATISTICS é usado para coletar dados demográficos da tabela. Certifique-se de que as estatísticas coletadas nas colunas estejam atualizadas.

  • Colete estatísticas sobre as colunas usadas na cláusula WHERE e nas colunas usadas na condição de junção.

  • Colete estatísticas nas colunas de índice primário exclusivo.

  • Colete estatísticas em colunas de índice secundário não exclusivo. O Optimizer decidirá se pode usar NUSI ou Full Table Scan.

  • Colete estatísticas no índice de junção embora as estatísticas na tabela base sejam coletadas.

  • Colete estatísticas nas colunas de particionamento.

Tipos de dados

Certifique-se de que os tipos de dados adequados sejam usados. Isso evitará o uso de armazenamento excessivo do que o necessário.

Conversão

Certifique-se de que os tipos de dados das colunas usadas na condição de junção são compatíveis para evitar conversões de dados explícitas.

Ordenar

Remova as cláusulas ORDER BY desnecessárias, a menos que seja necessário.

Problema de espaço no spool

O erro de espaço de spool é gerado se a consulta exceder o limite de espaço de spool de AMP para esse usuário. Verifique o plano de explicação e identifique a etapa que consome mais espaço no spool. Essas consultas intermediárias podem ser divididas e colocadas separadamente para construir tabelas temporárias.

Índice Primário

Certifique-se de que o Índice Primário esteja definido corretamente para a tabela. A coluna do índice primário deve distribuir uniformemente os dados e deve ser usada com frequência para acessar os dados.

Configurável

Se você definir uma tabela SET, o otimizador verificará se o registro está duplicado para cada registro inserido. Para remover a condição de verificação duplicada, você pode definir o índice secundário exclusivo para a tabela.

ATUALIZAÇÃO em mesa grande

Atualizar a mesa grande consumirá muito tempo. Em vez de atualizar a tabela, você pode excluir os registros e inserir os registros com linhas modificadas.

Descartando tabelas temporárias

Elimine as tabelas temporárias (tabelas de preparação) e os voláteis se não forem mais necessários. Isso irá liberar espaço permanente e espaço de carretel.

Mesa MULTISET

Se você tiver certeza de que os registros de entrada não terão registros duplicados, você pode definir a tabela de destino como uma tabela MULTISET para evitar a verificação de linha duplicada usada pela tabela SET.