pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: André Volpato <andre.volpato@ecomtecnologia.com.br>
To: pgsql-performance@postgresql.org
Subject: Re: Postgres not using array
Date: Thu, 21 Aug 2008 11:51:38 -0300
Message-ID: <48AD80FA.30100@ecomtecnologia.com.br> (raw)
In-Reply-To: <23465.1219328880@sss.pgh.pa.us>
References: <48AC8292.5000708@ecomtecnologia.com.br>
	<48AD735D.6040403@ecomtecnologia.com.br>
	<23465.1219328880@sss.pgh.pa.us>

Tom Lane escreveu:
> =?ISO-8859-1?Q?Andr=E9_Volpato?= <andre.volpato@ecomtecnologia.com.br> writes:
>   
>> Explain output:
>>  HashAggregate  (cost=19826.23..19826.96 rows=73 width=160) (actual 
>> time=11826.754..11826.754 rows=0 loops=1)
>>    ->  Subquery Scan b2  (cost=19167.71..19817.21 rows=722 width=160) 
>> (actual time=11826.752..11826.752 rows=0 loops=1)
>>          Filter: (bds_internacoes(200805, 200806, (b2.cod)::text, 
>> 'qtdI'::text, 'P'::bpchar) >= 1::numeric)
>>          ->  Limit  (cost=19167.71..19248.89 rows=2165 width=48) (actual 
>> time=415.157..621.043 rows=28923 loops=1)
>>     
>
> So I guess the question is "what is the bds_internacoes function, and
> why is it so slow?"	

This function is quite fast:
 Aggregate  (cost=5.17..5.18 rows=1 width=12) (actual time=0.286..0.287 
rows=1 loops=1)
   ->  Index Scan using iinternacoes4 on internacoes  (cost=0.01..5.16 
rows=1 width=12) (actual time=0.273..0.273 rows=0 loops=1)
         Index Cond: ((((ano * 100) + mes) >= 200801) AND (((ano * 100) 
+ mes) <= 200806) AND ((cod_benef)::text = '0005375200'::text))
         Filter: (tipo_internacao = 'P'::bpchar)
 Total runtime: 0.343 ms


The problem is that its fired up against 29K rows, wich takes the
total runtime about 10s.

We are guessing that a dual core 3.0GHz will beat up a quad core 2.2,
at least in this environmnent with less than 4 concurrent queryes.

-- 

[]´s, ACV





view thread (12+ messages)  latest in thread

Message-ID: <48AD80FA.30100@ecomtecnologia.com.br>
Permalink:  ../48AD80FA.30100@ecomtecnologia.com.br/
Also on:    postgresql.org/message-id/48AD80FA.30100@ecomtecnologia.com.br

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: andre.volpato@ecomtecnologia.com.br
  Subject: Re: Postgres not using array
  In-Reply-To: <48AD80FA.30100@ecomtecnologia.com.br>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox