From: Josh Berkus <josh@agliodbs.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Gavin Sherry <swm@linuxworld.com.au>
Cc: Jie Zhang <jzhang@greenplum.com>
Cc: pgsql-hackers@postgresql.org, Luke Lonergan <LLonergan@greenplum.com>
Subject: Re: On-disk bitmap index patch
Date: Tue, 25 Jul 2006 11:38:36 -0700
Message-ID: <44C6652C.1020203@agliodbs.com> (raw)
In-Reply-To: <28750.1153700718@sss.pgh.pa.us>
References: <C0E1CD9D.8DC0%jzhang@greenplum.com>
<Pine.LNX.4.58.0607240720180.19004@linuxworld.com.au>
<28525.1153698215@sss.pgh.pa.us>
<Pine.LNX.4.58.0607240952250.19854@linuxworld.com.au>
<28750.1153700718@sss.pgh.pa.us>
Tom,
> (I'm also wondering whether this
> doesn't overlap the use-case for GIN.)
It does not. GIN is strictly for multi-value fields. I can think of
applications where either GIN or Bitmaps would be an option, but for the
majority, they wouldn't.
One particular compelling situation for on-disk bitmaps is for terabyte
tables where a btree index would not fit into memory. Index
performance for an index which is 10x or more the size of RAM really
sucks ... I can come up with some test results if you doubt that.
Also note that "low cardinality" is relative. For a 1 billion row
table, a column with 10,000 values is "low-cardinality", having around
100,000 rows per value ... but that's still 0.01% of the table per
value, making index use still applicable.
--Josh
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-hackers@postgresql.org
Cc: josh@agliodbs.com, tgl@sss.pgh.pa.us, swm@linuxworld.com.au, jzhang@greenplum.com, LLonergan@greenplum.com
Subject: Re: On-disk bitmap index patch
In-Reply-To: <44C6652C.1020203@agliodbs.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