Re: how to find which tables required indexes in postgresql

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: JotaComm <jota(dot)comm(at)gmail(dot)com>
Cc: Thomas Kellerer <spam_eater(at)gmx(dot)net>, PostgreSQL mailing lists <pgsql-general(at)postgresql(dot)org>
Subject: Re: how to find which tables required indexes in postgresql
Date: 2013-04-10 14:11:09
Message-ID: CAB7nPqR+F2ONE6zg3f0FrBesK6hWU120pN7=9fJDJO1PQrxRkA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Wed, Apr 10, 2013 at 10:19 PM, 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).
>
There is also this tool online that can help you to determine what are the
slow parts of a query plan :
http://explain.depesz.com/

This is perhaps more simple than visualizing raw ANALYZE output, and it
will help you to catch what are the tables needing indexing, or perhaps
partial indexing.
--
Michael

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2013-04-10 14:17:54 Re: Characters
Previous Message Michael Paquier 2013-04-10 14:05:25 Re: how to create materialized view in postgresql 8.3