Re: problema con query lento

From: Silvio Quadri <silvioq(at)gmail(dot)com>
To: Diego Ayala <netdiego81(at)gmail(dot)com>
Cc: Postgres Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: problema con query lento
Date: 2011-04-14 12:34:37
Message-ID: BANLkTi=mtSxdUd7pOrWeMyNjyTykJSr8JQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El día 14 de abril de 2011 09:02, Diego Ayala <netdiego81(at)gmail(dot)com> escribió:
> Amigos, una duda que no me quedo claro respecto a esto es lo siguiente,
> ayer, hice pruebas en un servidor de desarrollo, y en el de produccion sobre
> este query, y viendo el resultado del explain, me llamo la atencion la
> diferencia de tiempo, y por sobre todo, la forma que utilizo los indices, en
> produccion, solo utiliza las pk, en desarrollo, donde casi es nula la
> actividad, utilizo los indices de todas las tablas, por que ese
> comportamiento tan diferente, realmente tiene algo que ver la cantidad de
> movimiento que existe en un servidor y otro, para que decida ejecutarse de
> una y otra forma.. inclusive, hice la prueba en el servidor de produccion
> durante la noche, al no haber actividad, y obtuve el mismo resultado del
> explain..  les paso para el resultado de ambos, que realmente me llama mucho
> la atencion, el servidor de desarrollo tiene la misma version del
> postgresql, es tambien de 64 bits, pero solo tiene 4 cores y 4 GB de RAM.
>
> EXPLAIN EN PRODUCCION, SOLO USA LAS PKs....
>
> Limit  (cost=0.00..3898.64 rows=10 width=128) (actual
> time=356.290..41325.074 rows=2 loops=1)"
> "  ->  Nested Loop  (cost=0.00..1120468.40 rows=2874 width=128) (actual
> time=356.288..41325.067 rows=2 loops=1)"
> "        ->  Nested Loop  (cost=0.00..1119657.11 rows=2874 width=116)
> (actual time=356.268..41325.034 rows=2 loops=1)"
> "              ->  Index Scan Backward using pk_item on item_solicitado
> item  (cost=0.00..200976.40 rows=2608137 width=110) (actual
> time=0.051..9049.918 rows=2610986 loops=1)"
> "                    Filter: ver"
> "              ->  Index Scan using pk_llamado_grupo on llamado_grupo
> (cost=0.00..0.34 rows=1 width=14) (actual time=0.009..0.009 rows=0
> loops=2610986)"
> "                    Index Cond: (llamado_grupo.id = item.llamado_grupo_id)"
> "                    Filter: (llamado_grupo.llamado_id = 127968)"
> "        ->  Index Scan using producto_n5_pkey on producto_n5
> (cost=0.00..0.27 rows=1 width=20) (actual time=0.008..0.009 rows=1 loops=2)"
> "              Index Cond: (producto_n5.id = item.producto_n5_id)"
> "Total runtime: 41325.263 ms"
>
>
>
> EXPLAIN EN DESARROLLO, USO LOS INDICES
>
> "Limit  (cost=13514.89..13514.92 rows=10 width=128) (actual
> time=44.792..44.799 rows=2 loops=1)"
> "  ->  Sort  (cost=13514.89..13522.47 rows=3031 width=128) (actual
> time=44.788..44.790 rows=2 loops=1)"
> "        Sort Key: item.id"
> "        Sort Method:  quicksort  Memory: 25kB"
> "        ->  Hash Join  (cost=987.75..13449.39 rows=3031 width=128) (actual
> time=44.742..44.770 rows=2 loops=1)"
> "              Hash Cond: (item.producto_n5_id = producto_n5.id)"
> "              ->  Nested Loop  (cost=0.00..12187.82 rows=3031 width=116)
> (actual time=0.043..0.085 rows=2 loops=1)"
> "                    ->  Index Scan using idx_llamado_grupo_llamado_id on
> llamado_grupo  (cost=0.00..107.25 rows=28 width=14) (actual
> time=0.024..0.030 rows=2 loops=1)"
> "                          Index Cond: (llamado_id = 127968)"
> "                    ->  Index Scan using
> idx_item_solicitado_llamado_grupo_id on item_solicitado item
> (cost=0.00..430.10 rows=108 width=110) (actual time=0.015..0.019 rows=1
> loops=2)"
> "                          Index Cond: (item.llamado_grupo_id =
> llamado_grupo.id)"
> "                          Filter: item.ver"
> "              ->  Hash  (cost=647.22..647.22 rows=18522 width=20) (actual
> time=42.738..42.738 rows=18522 loops=1)"
> "                    ->  Seq Scan on producto_n5  (cost=0.00..647.22
> rows=18522 width=20) (actual time=0.004..21.221 rows=18522 loops=1)"
> "Total runtime: 45.033 ms"
>
>

¿Tenés el mismo juego de datos y están los vacuum hechos?
Silvio

--
Silvio Quadri

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Diego Ayala 2011-04-14 12:40:33 Re: problema con query lento
Previous Message Diego Ayala 2011-04-14 12:02:00 Re: problema con query lento