Re: Best way to "add" columns

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Martijn van Oosterhout <kleptog(at)cupid(dot)suninternet(dot)com>, Marten Feldtmann <marten(at)feki(dot)toppoint(dot)de>, Jesse Scott <jscott(at)bmi(dot)net>, pgsql-general(at)postgresql(dot)org
Subject: Re: Best way to "add" columns
Date: 2000-05-16 14:46:13
Message-ID: 200005161446.KAA07441@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> Martijn van Oosterhout <kleptog(at)cupid(dot)suninternet(dot)com> writes:
> > Marten Feldtmann wrote:
> >> The varable lengths columns should be at the end of the row, therefore
> >> it does not seem to be good to add an integer column after a varchar
> >> column.
>
> > 1. Is this true? Should variable length column really be at the end
> > of a row?
>
> There is some microscopic performance advantage if you put fixed-width
> columns before variable-width columns: columns that are at a fixed
> offset in the table records don't require scanning through earlier
> columns to access. But I'd be surprised if you could actually measure
> any difference, unless perhaps on tables with hundreds of columns.
>
> > 2. If so, surly postgres can reorder tham internally so that on disk
> > they are in the optimal format.
>
> There are notes in the source code indicating that the original
> Berkeley Postgres crew thought about this and decided it wasn't
> worth the trouble.

Yes, agreed. Can anyone measure the difference. It would show up
accessing columns past the variable length column.

--
Bruce Momjian | http://www.op.net/~candle
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Ross J. Reedstrom 2000-05-16 14:55:10 Re: Performance
Previous Message Thomas Lockhart 2000-05-16 14:23:32 Re: [PORTS] RPMS for 7.0 final.