Re: Converting MySQL tinyint to PostgreSQL

From: Dawid Kuroczko <qnex42(at)gmail(dot)com>
To: "Jim C(dot) Nasby" <decibel(at)decibel(dot)org>
Cc: Lincoln Yeoh <lyeoh(at)pop(dot)jaring(dot)my>, Ron Mayer <rm_pg(at)cheapcomplexdevices(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Converting MySQL tinyint to PostgreSQL
Date: 2005-07-21 14:23:14
Message-ID: 758d5e7f050721072357646781@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 7/19/05, Jim C. Nasby <decibel(at)decibel(dot)org> wrote:
> > CREATE TABLE sample1 (
> > a boolean,
> > b int,
> > c boolean
> > );
> >
> > ...it will take more storage than:
> >
> > CREATE TABLE sample2 (
> > b int,
> > a boolean,
> > c boolean
> > );
> >
> Actually, I believe that's the case with just about every database,

I tried making alternating int and boolean fields (8 columns total), and
the loss due to padding was around 30%.

Out of curiosity I repeated the test using MySQL 4.1 MyISAM (alternating
int and tinyint fields versus ints fist, then tinyints) -- the resulting files
had the same size. So, for this case, MySQL MyISAM either reorders
data or stores data without padding.

Regards,
Dawid

> though of course each one has different alignment constraints. The point
> is that I don't know of any database that will silently re-order fields
> under the covers to optimize storage.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Martijn van Oosterhout 2005-07-21 14:28:05 Re: Wishlist?
Previous Message Tom Lane 2005-07-21 14:17:40 Re: Wishlist?