From: Kevin Brown <blargity@gmail.com>
To: pgsql-performance@postgresql.org
Subject: Re: How to query and index for customer with lastname and city
Date: Sat, 4 Mar 2006 15:35:17 -0600
Message-ID: <200603041535.17882.blargity@gmail.com> (raw)
In-Reply-To: <9e4684ce0603040623p24f4672bk55a0a303152138aa@mail.gmail.com>
References: <1141466283.6729.17.camel@localhost>
<1141481903.10078.14.camel@localhost>
<9e4684ce0603040623p24f4672bk55a0a303152138aa@mail.gmail.com>
On Saturday 04 March 2006 08:23, hubert depesz lubaczewski wrote:
> On 3/4/06, Joost Kraaijeveld <J.Kraaijeveld@askesis.nl> wrote:
> > > how many record do you have in the customers table?
> >
> > 368915 of which 222465 actually meet the condition.
> >
> > >From what I understand from the mailing list, PostgreSQL prefers a table
> >
> > scan whenever it expects that the number of records in the resultset
> > will be ~ > 10 % of the total number of records in the table. Which
> > explains the table scan for customers, but than again, it does not
> > explain why it uses the index on addresses: it has 369337 addresses of
> > which 158003 meet the condition
>
> bitmap index scan is faster than sequential table scan. that's all. it
> was introduced in 8.1 as far as i remember.
> basically - i doubt if you can get better performace from query when
> the result row-count is that high.
>
> out of curiosity though - why do you need so many rows? it's not
> possible to view them, nor do anything meaningful with 200 thousand
> rows!
>
> depesz
If you're just displaying, use limit and offset to grab one page at a time.
If you're manipulating it would be a good idea to do something in a stored
procedure.
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: blargity@gmail.com
Subject: Re: How to query and index for customer with lastname and city
In-Reply-To: <200603041535.17882.blargity@gmail.com>
* 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