[Bizgres-general] A bitmap index access method is available in bizgres CVS tip

Mark Kirkwood markir at paradise.net.nz
Tue Dec 20 03:37:49 GMT 2005


Luke Lonergan wrote:
> The sizes of the bitmap index is still about 10x larger than Oracle's
> though, partially because we are using 32-bit runs for the RLE (actually
> HRL) part instead of 8-bit runs, but that's not all of it.
> 
> We have done some testing to prove out this implementation for very fast
> results compared to Postgres B-Tree (Bizgres) and we got comparable
> performance to "another commercial database vendor's" implementation.  In
> all cases, this bitmap index implementation was faster on query access and
> definitely on build-time.
> 
> I¹ve attached a gzipped doc file (was PDF, but it was too large for mailing
> list) of Ayush¹s test results.  In there, you see successive versions of the
> patch, the December results include the new ³no-TID storage² approach and
> show the fast results relative to the prior TID-storage approach.
> 

Thanks Luke, very interesting.

I notice all the tests in the doc used character values - whereas my 
example uses integers. (I will modify the test to include (var)chars and 
let you know).

I didn't post results for creation time, but here they are (compared 
bizgres to *itself* this time). I've included the resulting index sizes too:


Creation times (10000000 rows):

btree :
   val0  133 s, 160M    # 10 distinct
   val1  132 s, 160M    # 10 distinct
   val2  154 s, 160M    # 100 distinct

bitmap:
   val0  178 s, 150M    # 10 distinct
   val1  150 s, 150M    # 10 distinct
   val2  224 s, 550M    # 100 distinct

So creation takes *longer* in the bitmap case - perhaps the integer data 
is the reason (let's see what happens when I try characters).

regards

Mark



More information about the Bizgres-general mailing list