Re: Mejorar rendimiento en consulta usando fechas

From: Rodrigo Ruiz <rruizf(at)gmail(dot)com>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Jaime Casanova <jaime(at)2ndquadrant(dot)com>, Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Mejorar rendimiento en consulta usando fechas
Date: 2013-04-30 20:29:39
Message-ID: 518029B3.5090107@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola estimados,
mis disculpas por no contestar con anterioridad, estuve un poco enfermo
y hoy recién he regresado a mis labores.
Antes de cargar la base de datos con los miles de registros había
desactivado autovacum y no le había hecho un analyze a la tabla tal como
sugirió Jaime.
Hoy se ha hecho el ANALYZE y la verdad es que los resultados han
mejorado muchísimo, por lo cual ya hemos quedado satisfechos con los
resultados de las consultas.

Muchas gracias a todos.

El 26/04/2013 0:23, Alvaro Herrera escribió:
> Jaime Casanova escribió:
>> 2013/4/25 Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>:
>>> Rodrigo Ruiz escribió:
>>>> El 25/04/2013 16:03, Alvaro Herrera escribió:
>>>> Hola Alvaro,
>>>> el explain analyze de la consulta arrojó lo siguiente:
>>>>
>>>> "Index Scan using persona_fecha_nacimiento_idx on persona
>>>> (cost=0.01..9.68 rows=1 width=835) (actual time=0.097..102908.235
>>>> rows=699498 loops=1)"
>>>> " Index Cond: ((fecha_nacimiento >= (('now'::text)::date - '35
>>>> years'::interval)) AND (fecha_nacimiento <= (('now'::text)::date -
>>>> '25 years'::interval)))"
>>>> "Total runtime: 103004.026 ms"
>>> Es curioso que use un indexscan en este caso; probablemente debería
>>> estar usando un seqscan, o cuando mucho un bitmap scan. ¿No tendrás
>>> enable_seqscan=off? ¿O quizás tienes otros parámetros del optimizador
>>> puestos en valores inusuales?
>> Lo que realmente me llama la atención es que los registros estimados
>> dice 1 que es completamente distinto a los 699498 que finalmente
>> retorno.
> Ah! No lo había visto. Quizás por eso usa un indexscan ...
>
>> Inicialmente te diré que ejecutes ANALYZE sobre esa tabla,
> +1
>

--
Rodrigo Ruiz Fuentes

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripcin:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Anthony 2013-05-02 00:05:33 Re: COPY TO a filename dinamico
Previous Message Jaime Casanova 2013-04-30 20:23:22 Re: ayuda con mensajes de postgres