Aceleração de consultas de pesquisa de pontos com otimização de pesquisa¶
Consultas de pesquisa de ponto são consultas que devem retornar um pequeno número de linhas. O serviço de otimização de pesquisa pode melhorar o desempenho das consultas de pesquisa de ponto que utilizam:
Predicados de igualdade (por exemplo,
column_name = constant
).
As seções a seguir fornecem mais informações sobre o suporte de otimização de pesquisa para consultas de pesquisa de pontos:
Ativação da otimização de pesquisa para consultas de pesquisa de pontos¶
As consultas de pesquisa de pontos não são aprimoradas a menos que você ative a otimização de pesquisa para as colunas referenciadas pelo predicado da consulta. Para melhorar o desempenho das consultas de pesquisa de pontos em uma tabela, use o comando ALTER TABLE … ADD SEARCH OPTIMIZATION para:
Ativar a otimização de pesquisa para colunas específicas.
Ativar a otimização de pesquisa para todas as colunas de tabela.
Em geral, habilitar a otimização de pesquisa apenas para colunas específicas é a prática recomendada. Use a cláusula ON EQUALITY para especificar as colunas. Esse exemplo permite a otimização de pesquisa para uma coluna específica:
ALTER TABLE mytable ADD SEARCH OPTIMIZATION ON EQUALITY(mycol);
Para especificar EQUALITY para todas as colunas dos tipos de dados compatíveis (exceto para semiestruturado e GEOGRAPHY):
ALTER TABLE mytable ADD SEARCH OPTIMIZATION;
Para obter mais informações, consulte Habilitação e desabilitação da otimização de pesquisa.
Exemplos de consultas de pesquisa de pontos compatíveis¶
O serviço de otimização de pesquisa pode melhorar o desempenho da seguinte consulta que usa um predicado de igualdade:
SELECT * FROM test_table WHERE id = 3;
A cláusula IN é suportada pelo serviço de otimização de pesquisa:
SELECT id, c1, c2, c3
FROM test_table
WHERE id IN (2, 3)
ORDER BY id;