From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Yasset Perez Riverol <yasset(dot)perez(at)biocomp(dot)cigb(dot)edu(dot)cu> |
Cc: | Silvio Quadri <silvioq(at)gmail(dot)com>, postgres <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Performance y Postgresql.conf |
Date: | 2008-02-12 15:29:35 |
Message-ID: | 20080212152935.GK14683@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Yasset Perez Riverol escribió:
> On Tuesday 12 February 2008 9:43:26 am Alvaro Herrera wrote:
> > Como te decía, si una cantidad aproximada es suficiente para tus
> > propósitos, se puede obtener muy rápido.
> De que forma puedo obtener ese estimado que dices tan rapido...
Por ej.
http://archives.postgresql.org/pgsql-sql/2005-08/msg00046.php
alvherre=# select count_estimate('select * from yasset');
count_estimate
----------------
5000060
(1 row)
alvherre=# explain analyze select count_estimate('select * from yasset');
QUERY PLAN
------------------------------------------------------------------------------------
Result (cost=0.00..0.01 rows=1 width=0) (actual time=0.446..0.448 rows=1 loops=1)
Total runtime: 0.498 ms
(2 rows)
Obviamente se puede hacer una funcion que reciba solamente el nombre de
la tabla. Pero esto es mas flexible: puedes ponerle un WHERE a la
consulta y funciona bien:
alvherre=# select count_estimate('select * from yasset where a > 4000000');
count_estimate
----------------
1052469
(1 row)
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
From | Date | Subject | |
---|---|---|---|
Next Message | Rodriguez Fernando | 2008-02-12 16:13:05 | Re: Performance y Postgresql.conf |
Previous Message | Silvio Quadri | 2008-02-12 15:11:29 | Re: Performance y Postgresql.conf |