Milen, On 4/20/06 12:45 PM, "Milen Kulev" <makulev@xxxxxxx> wrote: > I (still) haven't tried Bizgres, but what do you mean with "The current > drawback to bitmap index is that it isn't very > maintainable under insert/update, although it is safe for those operations"? Yes. > Do you mean that INSERT/UPDATE operations against bitmap indexes are > imperformant ? > If yes, to what extend ? Insert/Update (but not delete) operations will often invalidate a bitmap index in our current implementation because we have not implemented a maintenance method for them when insertions re-use TIDs. We are in the planning stages for an update that will fix this. > Or you mean that bitmap index corruption is possible when issueing DML > againts BMP indexes? We check for the case of an insertion that causes a re-used TID and issue an error that indicates the index should be removed before the operation is retried. This isn't particularly useful for cases where inserts occur frequently, so the current use-case if for tables where DML should be done in batches after removing the index, then the index re-applied. > I am asking this question because Oracle needed 3 years to solve its BMP index > problems (BMP index corruption/ space > usage explosion when several processes are performing DML operations ). We will be much faster than that! Concurrency will be less than ideal with our maintenance approach initially, but there shouldn't be a corruption problem. > Is Bizgres implementation suffering from this kind child deseases ? Sneeze, cough. - Luke > > > -----Original Message----- > From: pgsql-performance-owner@xxxxxxxxxxxxxx > [mailto:pgsql-performance-owner@xxxxxxxxxxxxxx] On Behalf Of Luke Lonergan > Sent: Thursday, April 20, 2006 5:03 PM > To: jim@xxxxxxxxxxxxxx; Simon Dale; pgsql-performance@xxxxxxxxxxxxxx > Subject: Re: [PERFORM] Quick Performance Poll > > > Jim, > > On 4/20/06 7:40 AM, "Jim Buttafuoco" <jim@xxxxxxxxxxxxxx> wrote: > >> First of all this is NOT a single table and yes I am using >> partitioning and the constaint exclusion stuff. the largest set of >> tables is over 2T. I have not had to rebuild the biggest database >> yet, but for a smaller one ~1T the restore takes about 12 hours >> including many indexes on both large and small tables > > You would probably benefit greatly from the new on-disk bitmap index feature > in Bizgres Open Source. It's 8.1 plus the > sort speed improvement and on-disk bitmap index. > > Index creation and sizes for the binary version are in the table below (from a > performance report on bizgres network. > The version in CVS tip on pgfoundry is much faster on index creation as well. > > The current drawback to bitmap index is that it isn't very maintainable under > insert/update, although it is safe for > those operations. For now, you have to drop index, do inserts/updates, > rebuild index. > > We'll have a version that is maintained for insert/update next. > > - Luke > > # Indexed Columns Create Time (seconds) Space Used (MBs) > BITMAP BTREE BITMAP BTREE > 1 L_SHIPMODE 454.8 2217.1 58 1804 > 2 L_QUANTITY 547.2 937.8 117 1804 > 3 L_LINENUMBER 374.5 412.4 59 1285 > 4 L_SHIPMODE, L_QUANTITY 948.7 2933.4 176 2845 > 5 O_ORDERSTATUS 83.5 241.3 5 321 > 6 O_ORDERPRIORITY 108.5 679.1 11 580 > 7 C_MKTSEGMENT 10.9 51.3 1 45 > 8 C_NATIONKEY 8.3 9.3 2 32 > > > > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match > > >