From: | Emanuel Calvo Franco <postgres(dot)arg(at)gmail(dot)com> |
---|---|
To: | Ernesto Quiñones <ernestoq(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: querys pesados |
Date: | 2009-05-07 18:05:41 |
Message-ID: | f205bb120905071105u32f67bd1ia3dbc5e0f9e8acd5@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El día 7 de mayo de 2009 13:39, Ernesto Quiñones <ernestoq(at)gmail(dot)com> escribió:
> que tal amigos
> este es el explain analyze:
>
> explain analyze select a.FlgCobroLlamada, a.FlgCelular,
> a.FlgStatusCDR, a.CodMesFactura, a.CodCiudadDestino, a.CodNpa,
> a.TipLlamada, a.CodSubMotivoEstadoCliente, a.CodEstadoCliente,
> a.CodPuntoVenta, a.CodCicloFacturacionCliente, b.codpaisubigeocliente,
> b.codpaisfacturacion, a.CodOperador, a.CodEmpresaUT,
> to_date(substr(CAST(a.codhora as text),1,8),'yyyymmdd'),
> a.TipConexion, a.TipAcceso, sum(a.MtoCostoValorizado),
> sum(a.MtoMinutosTotalesValorizado) from f_consumo a join
> lcl_maecliente b on (a.codcliente=b.codcliente)group by
> a.FlgCobroLlamada, a.FlgCelular, a.FlgStatusCDR, a.CodMesFactura,
> a.CodCiudadDestino, a.CodNpa, a.TipLlamada,
> a.CodSubMotivoEstadoCliente, a.CodEstadoCliente, a.CodPuntoVenta,
> a.CodCicloFacturacionCliente, b.codpaisubigeocliente,
> b.codpaisfacturacion, a.CodOperador, a.CodEmpresaUT,
> to_date(substr(CAST(a.codhora as text),1,8),'yyyymmdd'),
> a.TipConexion, a.TipAcceso
> ;
> QUERY PLAN
> -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> GroupAggregate (cost=6793590.06..7973814.93 rows=15228708 width=106)
> (actual time=2811295.104..5198116.245 rows=5750514 loops=1)
> -> Sort (cost=6793590.06..6831661.83 rows=15228708 width=106)
> (actual time=2811295.056..5119747.291 rows=15228708 loops=1)
> Sort Key: a.flgcobrollamada, a.flgcelular, a.flgstatuscdr,
> a.codmesfactura, a.codciudaddestino, a.codnpa, a.tipllamada,
> a.codsubmotivoestadocliente, a.codestadocliente, a.codpuntoventa,
> a.codciclofacturacioncliente, b.codpaisubigeocliente,
> b.codpaisfacturacion, a.codoperador, a.codempresaut,
> (to_date(substr((a.codhora)::text, 1, 8), 'yyyymmdd'::text)),
> a.tipconexion, a.tipacceso
> Sort Method: external merge Disk: 1971456kB
> -> Hash Join (cost=6819.01..1437289.10 rows=15228708
> width=106) (actual time=1302.791..196625.524 rows=15228708 loops=1)
> Hash Cond: ((a.codcliente)::text =
> (b.codcliente)::text)
> -> Seq Scan on f_consumo a (cost=0.00..429172.08
> rows=15228708 width=112) (actual time=4.052..65973.189 rows=15228708
> loops=1)
> -> Hash (cost=4555.45..4555.45 rows=123245 width=18)
> (actual time=1298.143..1298.143 rows=123245 loops=1)
> -> Seq Scan on lcl_maecliente b
> (cost=0.00..4555.45 rows=123245 width=18) (actual time=14.092..953.654
> rows=123245 loops=1)
> Total runtime: 5217852.883 ms
> (10 filas)
>
>
Creo que una forma de mejorarla es creando index en lcl_maecliente y f_consumo
en las columnas que haces el join (si no es que no queres reformular toda la
consulta nuevamente).
> OS: Linux
> Hardware: Servidor Dell 2gb de ram y HD sata, procesador Core 2 duo
> saludos
>
> El día 7 de mayo de 2009 10:16, Ernesto Quiñones <ernestoq(at)gmail(dot)com> escribió:
>> que tal amigos
>> gracias por las respuestas, antes de correr los queryas ejecuto un
>> vacuum full analyze sobre toda la db (proque tengo como 3 de esos que
>> jalan diferentes tablas)
>> estoy generando un explain analyze (demorará en botarme la respuesta)
>> para poder enviarlo y ver que esta pasando con los indices aunque
>> facil es un seq scan por la cantidad de data
>>
>> en un rato les envilo los detalles de lo que me informo el pgsql el explain
>>
>> saludos
>>
>
>
>
> --
> Inscribete en las listas de APESOL
> http://www.apesol.org/listas.php
>
> Visita
> http://www.eqsoft.net
> Manuales, noticias, foros, etc.
> --
> TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá leerlo
>
--
Emanuel Calvo Franco
Sumate al ARPUG !
( www.arpug.com.ar)
ArPUG / AOSUG Member
From | Date | Subject | |
---|---|---|---|
Next Message | Rodriguez Fernando | 2009-05-07 18:07:34 | Re: querys pesados |
Previous Message | Ernesto Quiñones | 2009-05-07 18:03:57 | Re: querys pesados |