From: | "Simon Riggs" <simon(at)2ndquadrant(dot)com> |
---|---|
To: | <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Simple Column reordering |
Date: | 2007-02-22 22:42:34 |
Message-ID: | 1172184155.3874.192.camel@silverbirch.site |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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 GUC
optimize_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
From | Date | Subject | |
---|---|---|---|
Next Message | Jim Nasby | 2007-02-22 22:57:54 | Re: Priorities for users or queries? |
Previous Message | Richard Levitte - VMS Whacker | 2007-02-22 22:19:25 | Re: [Monotone-devel] Re: SCMS question |