RE: Does Oracle store values in indices? - Mailing list pgsql-hackers

From Mikheev, Vadim
Subject RE: Does Oracle store values in indices?
Date
Msg-id 8F4C99C66D04D4118F580090272A7A234D32B1@sectorbase1.sectorbase.com
Whole thread Raw
In response to Does Oracle store values in indices?  (Denis Perchine <dyp@perchine.com>)
Responses Re: Does Oracle store values in indices?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
> > > But how Oracle handles this?
> >
> > Oracle doesn't have non-overwriting storage manager but uses
> > rollback segments to maintain MVCC. Rollback segments are used
> > to restore valid version of entire index/table page.
> 
> Are there any plans to have something like this? I mean 
> overwriting storage manager.

Well, I have plans to reimplement storage manager to allow space
re-use without vacuum but without switching to overwriting, at least
in near future - achievements/drawbacks are still questionable.

We could add transaction data to index tuples but this would increase
their size by ~ 16bytes. To estimate how this would affect performance
for mostly statical tables one can run tests with schema below:

create table i1 (i int, k int, l char(16));
create index i_i1 on i1 (i);
create table i2 (i int, k int, l char(16));
create index i_i2 on i2 (i, k, l);

Now fill tables with same data and run queries using only "I" in where
clause.

Vadim


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: pg_shadow.usecatupd attribute
Next
From: Tom Lane
Date:
Subject: Re: [PATCHES] binary operators on integers