Sim... Bem lembrado!

Mas como havia falado com relação ao uso indiscriminado, existe a grande
possibilidade de um atributo que está sendo atualizado contemplar um índice
criado desnecessariamente.

O tema índice é muito interessante, e geralmente levanta muitas dúvidas e
polêmicas. E como já discutido anteriormente, não existe uma fórmula mágica
para o uso de índice. O sistema (estatísticas) vai dizer se precisa ou não.
Aplicações com demandas altas de operações transacionais, principalmente
inserções e inclusões, costumam (volto a ressaltar, não é regra) demandar
uma quantidade menor de índices.

Não é raro a situação onde uma entidade muito grande retorna uma consulta
com um tempo pequeno, e uma exclusão utilizando os mesmos parâmetros
demandam muito tempo para ser realizada em virtude do custo para atualização
nas tabelas de índices associadas.

Todavia, existem situações diferentes, onde a carga transacional não é tão
relevante, mas demanda uma quantidade muito grande de operações de consulta.
Nesses casos, obviamente índices bem planejados vão reduzir em muito o custo
do banco. E índices bem planejados também incluem utilizar os algoritmos
corretos para as classes de operadores corretas...

Enfim... O assunto é vasto, e muito interessante, espero termos
oportunidades de discutirmos com mais propriedade depois.

Um grande abraço a todos!


-- 
Charly Frankl
http://javadevilopers.blogspot.com/
[email protected]
Linux user #391083



2009/8/13 Euler Taveira de Oliveira <[email protected]>

> Charly Frankl escreveu:
> > Pois quando um registro é
> > atualizado (insert/update/delete) os índices também são atualizados.
> >
> Vale lembrar que (em uma versão 8.3 ou superior) para o comando UPDATE,
> isso
> nem sempre é verdade. O _HOT_ (Heap Only Tuples) foi introduzido justamente
> para *não* ter que atualizar o índice caso as colunas modificadas não
> estejam
> presentes em índices.
>
>
> --
>  Euler Taveira de Oliveira
>  http://www.timbira.com/
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a