Skip site navigation (1) Skip section navigation (2)

Single Index Tuple Chain (SITC) method

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Cc: Greg Stark <gsstark(at)mit(dot)edu>, PFC <lists(at)peufeu(dot)com>
Subject: Single Index Tuple Chain (SITC) method
Date: 2006-06-28 18:16:29
Message-ID: 200606281816.k5SIGTR14682@momjian.us (view raw or flat)
Thread:
Lists: pgsql-hackers
bruce wrote:
> Greg Stark wrote:
> > 
> > Bruce Momjian <bruce(at)momjian(dot)us> writes:
> > 
> > > PFC wrote:
> > > > 
> > > > > My idea is that if an UPDATE places the new tuple on the same page as
> > > > > the old tuple, it will not create new index entries for any indexes
> > > > > where the key doesn't change.
> > > > 
> > > > 	Basically the idea behind preventing index bloat by updates is to have  
> > > > one index tuple point to several actual tuples having the same value.
> > > > 	
> > > 
> > > The idea is not to avoid index bloat, but to allow heap reuse, and having
> > > one index entry for multiple versions of an UPDATEd row is merely an
> > > implementation detail.
> > 
> > It sort of sounds like you're describing a whole new index type that stores
> > only the page, not the precise record of any tuple it indexes. If your table
> 
> Background, indexes point to page item pointers, not to actual offsets
> in the page.  This is how vacuum can move around tuples without modifying the
> indexes.  The index points to a page item pointer that is a chain of
> tuples with the same indexed columns.

Here is an overview of the SITC method:

	http://momjian.us/cgi-bin/pgsitc

Anyone want to start coding?

-- 
  Bruce Momjian   bruce(at)momjian(dot)us
  EnterpriseDB    http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

Responses

pgsql-hackers by date

Next:From: Tom LaneDate: 2006-06-28 22:19:20
Subject: Re: Single Index Tuple Chain (SITC) method
Previous:From: Jim C. NasbyDate: 2006-06-28 18:12:17
Subject: Re: Fixed length datatypes. WAS [GENERAL] UUID's as

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group