2009/8/13 Tiago Adami <[email protected]>

> Tenho uma tabela de cadastro de produtos com mais de 20 índices. Qualquer
> consulta nesta tabela é muito rápida, não importa o que for feito.
> Entretanto, eu tenho dúvidas quanto ao uso de todos os índices da tabela.
>
> Como eu poderia verificar quais os índices mais utilizados ou então quais
> os não utilizados? Através dos logs do banco?
>
>
Essas informações você obtém das views de estatísticas do PostgreSQL [1],
veja esse pequeno exemplo:

postg...@bage_20090811_v2_2_3=# select * from pg_stat_user_indexes where
relname = 'arrecad';
   relid   | indexrelid | schemaname | relname |
indexrelname           | idx_scan | idx_tup_read | idx_tup_fetch
-----------+------------+------------+---------+---------------------------------+----------+--------------+---------------
 233423297 |  484768250 | public     | arrecad |
arrecad_numcgm_in               |        0 |            0 |             0
 233423297 |  484768251 | public     | arrecad |
arrecad_numpre_in               |    75521 |       433905 |        432747
 233423297 |  484768252 | public     | arrecad |
arrecad_numpre_numpar_in        |     3312 |         5816 |          4476
 233423297 |  484768253 | public     | arrecad |
arrecad_numpre_numpar_receit_in |   443104 |         4273 |          2586
 233423297 |  484768254 | public     | arrecad |
arrecad_tipo                    |       12 |     11023441 |             0
(5 rows)


Nesse exemplo tenho a tabela chamada "arrecad" onde a mesma possui os
indices conforme listado em "indexrelname" e essa view lista o uso de cada
um dos meus índices.


[1] http://www.postgresql.org/docs/8.4/interactive/monitoring-stats.html


Cordialmente,
-- 
Fabrízio de Royes Mello
>> Blog sobre PostgreSQL: http://fabriziomello.blogspot.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a