Re: Consulta lenta

From: Horacio Miranda <hmiranda(at)gmail(dot)com>
To: Jairo Graterón <jgrateron(at)gmail(dot)com>, Jaime Casanova <jaime(dot)casanova(at)2ndquadrant(dot)com>
Cc: Lista PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Consulta lenta
Date: 2020-10-14 08:16:36
Message-ID: 7010464f-bdb6-6019-1f64-f79354fe8698@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


On 8/10/2020 10:18 am, Jairo Graterón wrote:
> Sí gracias. Se pudo resolver ese tema en particular y se usó el tipo
> de índice predeterminado que usa postgres.
>
> Aquí está el resultado de la consulta que solicitaste.
>
> => explain select count(*), count(*) filter (where fecha_de_emision >=
> '2020-09-01 05:00:00' and fecha_de_emision <  '2020-10-01 05:00:00')
> from invoices;
>                                                        QUERY PLAN
> ------------------------------------------------------------------------------------------------------------------------
>  Aggregate  (cost=3431745.91..3431745.92 rows=1 width=16)
>    ->  Index Only Scan using idxpdo46192ooj1ys1xxkcknhsy0 on invoices
>  (cost=0.57..2660899.27 rows=77084664 width=11)
>  JIT:
>    Functions: 2
>    Options: Inlining true, Optimization true, Expressions true,
> Deforming true
> (5 rows)
>
> => select count(*), count(*) filter (where fecha_de_emision >=
> '2020-09-01 05:00:00' and fecha_de_emision <  '2020-10-01 05:00:00')
> from invoices;
>   count   |  count
> ----------+---------
>  77322360 | 3679203
> (1 row)
> Time: 15702.502 ms (00:15.703)
>
Es posible hacer esto.

explain (analyze,buffers)
select count(*), count(*) filter (where fecha_de_emision >= '2020-09-01
05:00:00' and fecha_de_emision <  '2020-10-01 05:00:00') from invoices;

>
> Estamos analizando las diferencias del tiempo de ejecución de algunas
> consultas ya que no tienen la misma respuesta al cambiar de postgres
> 9.6 a 12
>
> Sospecho que no es el mismo hardware, a pesar que tiene igual
> configuración de 32 GB de RAM, disco SSD de 500GB en una instancia AWS
> de 8 cores.
>
> Llega un momento que al presentarse más de 3mil request por minuto las
> consultas demoran mucho para finalizar y se degrada el rendimiento en
> general.
>
> No hay cambios en el frontend, sólo se migró a la nueva versión del
> gestor y se perdió la sensación de rapidez que tenía la versión anterior,
>
> El sistema ahora está un poco más estable al crear y/o eliminar
> índices que mejoró notablemente.
>
> Seguiré revisando el porqué se degradó el performance.
>
> Saludos
>
> El mié., 7 oct. 2020 a las 2:46, Jaime Casanova
> (<jaime(dot)casanova(at)2ndquadrant(dot)com
> <mailto:jaime(dot)casanova(at)2ndquadrant(dot)com>>) escribió:
>
> On Mon, 28 Sep 2020 at 16:16, Jairo Graterón <jgrateron(at)gmail(dot)com
> <mailto:jgrateron(at)gmail(dot)com>> wrote:
>
> Saludos lista, recientemente migramos de postgresql 9.6 a 12
>
> Ahora tenemos una consulta lenta que está afectando el
> rendimiento en el sistema
>
> Observo que en el explain el motor no está usando el índice
> del campo fecha_de_emision
>
>
> Saludos,
>
> ¿Pudiste solucionar el problema? porque te pidieron el explain
> analyze pero no veo que hayas pasado.
>
>  puedes mostrar el resultado de:
>
> select count(*),
>            count(*) filter (where fecha_de_emision >= '2020-09-01
> 05:00:00' and fecha_de_emision <=  '2020-10-01 04:59:59.999999'
>    from invoices;
>
>
> además de la estructura de invoices obtenida con \d en psql (por
> favor, no uses imagenes, pon esas cosas que te pedí en archivos de
> texto y adjuntalos. gracias)
>
> --
> Jaime Casanova www.2ndQuadrant.com <http://www.2ndQuadrant.com>
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2020-10-14 20:19:39 Re: Consulta lenta
Previous Message listas 2020-10-14 08:12:35 Re: performance de ejecucion de triggers hay alguna penalidad este es mi caso