From: | Chris Curvey <chris(at)chriscurvey(dot)com> |
---|---|
To: | JotaComm <jota(dot)comm(at)gmail(dot)com> |
Cc: | Thomas Kellerer <spam_eater(at)gmx(dot)net>, pgsql <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: how to find which tables required indexes in postgresql |
Date: | 2013-04-10 13:29:37 |
Message-ID: | CADfwSsAfkzvSHzUqEbq82tvB05_TLToRGqPJHY3A3LQn0n_Bqw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Wed, Apr 10, 2013 at 9:19 AM, JotaComm <jota(dot)comm(at)gmail(dot)com> wrote:
> Hello,
>
>
> 2013/4/10 Thomas Kellerer <spam_eater(at)gmx(dot)net>
>
>> Zahid Quadri, 10.04.2013 13:31:
>>
>> hi,,
>>>
>>> please suggest if there is any way which i can find which tables need
>>> indexes in postgresql.
>>>
>>
> You have some possibilities:
>
> - the log file (slow queries)
>
> - statistics with old information (see the ANALYZE command)
>
> - statistics tables, for example: pg_stat_user_tables
>
> You can run this SQL:
>
> SELECT pg_stat_user_tables.schemaname,
> pg_stat_user_tables.relname,
> pg_stat_user_tables.seq_scan,
> pg_stat_user_tables.seq_tup_read,
> pg_stat_user_tables.idx_scan,
> pg_stat_user_tables.idx_tup_fetch
> FROM pg_stat_user_tables;
>
> If you have a big value in seq_scan column compared to the idx_scan column
> (small value), this indicate that you probably need to create an index in
> some column, but you need to discover what column needs the index. (the log
> file is a good indication).
>
>
I'll also give a shout-out for pgBadger. It parses your slow query logs
and creates a nice summary of queries that could use some attention.
From | Date | Subject | |
---|---|---|---|
Next Message | Vincent Veyron | 2013-04-10 13:33:01 | Re: how to create materialized view in postgresql 8.3 |
Previous Message | JotaComm | 2013-04-10 13:24:07 | Re: Characters |