Simple Column reordering - Mailing list pgsql-hackers

From Simon Riggs
Subject Simple Column reordering
Date
Msg-id 1172184155.3874.192.camel@silverbirch.site
Whole thread Raw
Responses Re: Simple Column reordering  ("Andrew Dunstan" <andrew@dunslane.net>)
Re: Simple Column reordering  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
Column storage position is the subject of many long threads in recent
times. Solutions proposed for this have been both fairly complex and
long enough that nothing seems likely to happen for 8.3. If I'm wrong,
then of course this proposal would be superceded.

I propose that at CREATE TABLE time, the column ordering is re-ordered
so that the table columns are packed more efficiently. This would be a
physical re-ordering, so that SELECT * and COPY without explicit column
definitions would differ from the original CREATE TABLE statement.

This would be an optional feature, off by default, controlled by a
USERSET GUCoptimize_column_order = off (default) | on

When the full column ordering proposal is implemented,
optimize_column_ordering would be set to default to on. The feature
would be supported for at least one more release after this to allow bug
analysis.

The proposed ordering would be:
1. All fixed length columns, arranged so that alignment is efficient
2. All variable length columns

All column ordering would stay as close as possible to original order

No changes would be made apart from at CREATE TABLE time.

The ordering would be repeatable, so that the order would not change on
repeated dump/restore of a table with no changes.

--  Simon Riggs              EnterpriseDB   http://www.enterprisedb.com




pgsql-hackers by date:

Previous
From: Richard Levitte - VMS Whacker
Date:
Subject: Re: [Monotone-devel] Re: SCMS question
Next
From: "Simon Riggs"
Date:
Subject: Re: Grouped Index Tuples