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.