Olá. Isto que estou fazendo é um top-posting (responder acima do texto 
original).
Isto não é bom para a lista.
Faça como eu vou fazer com suas respostas, quotando, abaixo:

> Oi Flavio,
> 
> Realmente é estranho. Analisando o explain parece que não dá diferença, mas
> quando o rodo o programa específico da uma diferença gritante. Tínhamos um
> caso em que a consulta demorava 30 segundos e depois destes 2 índices caiu
> pra 6 segundos. Estamos com c=medo é dos inserts que rodam junto com as
> consultas, se vão ficar lentos ou causar mais lentidão no sistema.

Sua consulta pode ter planos diferentes dependendo dos parâmetros na cláusula 
WHERE e das estatísticas das tabelas.
Você pode saber se os índices são mesmo utilizados pela visão 
pg_stat_user_indexes e pg_statio_user_indexes.
Se as estatísticas de uso dos índices estiver zerada, em produção, pode ter 
certeza de que não foram utilizados.

Considere remover os índices e ligar o parâmetro log_min_duration_statement 
para "pegar" as consultas que ficarem lentas.
Assim, você poderá fazer EXPLAIN ANALYZE só nas lentas e ver se parâmetros na 
cláusula WHERE (ou outras consultas diferentes) precisam dos índices que você 
criou.

> Se nós mantermos os índices podemos removê-los a qualquer momento com o
> sistema em produção?

Pode.
No momento que for removê-los, claro, haverá um pequeno pico de utilização de 
discos, mas é rápido.
Se alguma consulta mais lenta estiver usando os índices, o DROP poderá esperar 
até que essas consultas terminem.
Mas sim, pode remover em produção.

> A nossa versão é a 9.1.7.
> 
> realmente é estranho...

Não vejo porque. Pode ter algum ruído aí, por exemplo, você pode estar com o 
autovacuum desligado e as estatísticas da tabela não estavam boas e daí as 
consultas não usaram nem a PK.
E pode ser também que, dependendo dos parâmetros, uma porção maior da tabela é 
utilizada e os índices novos passaram a ser interessantes.

Note que você tem muitas variáveis. Siga as recomendações acima para saber o 
que seu banco de dados está fazendo.

[]s

__________________________________
Flavio Henrique A. Gurgel
Líder de Projetos Especiais
Consultoria, Projetos & Treinamentos 4LINUX
Tel1: +55-11.2125-4747 ou 2125-4748
www.4linux.com.br
email: [email protected]
______________________________
FREE SOFTWARE SOLUTIONS
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a