Re: Encontrar los índices menos usados en PostgreSQL 9.1

From: Marcos Ortiz <mlortiz(at)uci(dot)cu>
To: Yoan Manuel Perez Piñero <ymperez(at)uci(dot)cu>
Cc: pgsql-es-ayuda(at)postgresql(dot)org, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Subject: Re: Encontrar los índices menos usados en PostgreSQL 9.1
Date: 2013-02-06 11:56:37
Message-ID: 511244F5.2010305@uci.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Ésta es la consulta con los consejos que me dió Álvaro, pero
parece que pg_size_pretty sólo acepta como parámetro el oid
del objeto:

SELECT idstat.relname AS table_name,
indexrelname AS index_name,
idstat.idx_scan AS times_used,
pg_relation_size(idstat.relid::regclass) AS table_size,
pg_size_pretty(idstat.indexrelid::regclass) AS index_size,
n_tup_upd + n_tup_ins + n_tup_del AS num_writes,
indexdef AS definition
FROM pg_stat_user_indexes AS idstat
JOIN pg_indexes ON indexrelname = indexname
JOIN pg_stat_user_tables AS tabstat ON idstat.relname = tabstat.relname
WHERE idstat.idx_scan < 200
AND indexdef !~* 'unique'
ORDER BY idstat.relname, indexrelname;

Por tanto, éste es el error que da:
ERROR: function pg_size_pretty(regclass) does not exist
LINE 5: pg_size_pretty(idstat.indexrelid::regclass) AS...
^
HINT: No function matches the given name and argument types. You might
need to add explicit type casts.

On 02/06/2013 08:40 AM, Yoan Manuel Perez Piñero wrote:
> Marcos si ya tienes la consulta mejorada, por favor compártela. Gracias de antemano.
>
> ----- Mensaje original -----
> De: "Marcos Ortiz" <mlortiz(at)uci(dot)cu>
> Para: "Alvaro Herrera" <alvherre(at)2ndquadrant(dot)com>
> CC: pgsql-es-ayuda(at)postgresql(dot)org
> Enviados: Martes, 5 de Febrero 2013 11:32:00
> Asunto: Re: [pgsql-es-ayuda] Encontrar los índices menos usados en PostgreSQL 9.1
>
>
> On 02/05/2013 11:28 AM, Alvaro Herrera wrote:
>> Marcos Ortiz escribió:
>>
>>> Bueno, encontré una forma más fácil de encontrar los índices que
>>> menos se usan usando el campo idx_scan:
>>>
>>> SELECT schemaname,
>>> relname,
>>> indexrelname,
>>> idx_scan
>>> FROM pg_stat_user_indexes
>>> ORDER BY idx_scan ;
>> Pero cuidado. La otra consulta no es más compleja por puro capricho.
>> Por ej. debes tener cuidado con los índices únicos, que pueden tener
>> cero recorridos pero ser importantes para implementar una restricción de
>> unicidad, por ejemplo.
> Si, precisamente, ese tema era una de las cuestiones que advertía
> Josh Berkus en su post. Lo tendré en cuenta.
>
>
>
> -
> Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
> Para cambiar tu suscripción:
> http://www.postgresql.org/mailpref/pgsql-es-ayuda

--
Marcos Ortiz Valmaseda,
Product Manager && Data Scientist at UCI
Blog: http://marcosluis2186.posterous.com
Twitter: @marcosluis2186 <http://twitter.com/marcosluis2186>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Yoan Manuel Perez Piñero 2013-02-06 13:40:53 Re: Encontrar los índices menos usados en PostgreSQL 9.1
Previous Message Marcos Ortiz 2013-02-05 16:32:00 Re: Encontrar los índices menos usados en PostgreSQL 9.1