Byte Sizes - Mailing list pgsql-general

From Pierre-Frédéric Caillaud
Subject Byte Sizes
Date
Msg-id opsd18wll2cq72hf@musicbox
Whole thread Raw
In response to Re: [JDBC] ERROR: canceling query due to user request  (Paul Thomas <paul@tmsl.demon.co.uk>)
List pgsql-general
    Hello,

* On the size of arrays :

    I did not find any info in the Docs on this.
    How many bytes does an array take on disk ?

    My bet would be 4 bytes for number of dimensions, 4 per dimension for the
length, and then the storage requirements of whatever's in the array.

    If the array contains fixed size elements like integers, it'd be 4 bytes
per element.
    However if it contains variable length elements like text, is there a
pointer table ? Or are the elements packed together ?

    Is there any advantage in using a smallint[] over an integer[] ?

    Does a smallint[] with 2 elements really take 12 bytes ?

* On Alignment :

    The docs say fields are aligned on 4-bytes boundaries.
    Does this mean that several consecutive smallint fields will take 4 bytes
each ?
    What about seleral consecutive "char" fields ?

    I ask this because I'll have a lot of columns with small values to store
in a table, and would like it to be small and to fit in the cache.


    Thanks for any info.


pgsql-general by date:

Previous
From: Georgi Chorbadzhiyski
Date:
Subject: 8.0.0beta2: Ownership of implicit sequences after dump/restore
Next
From: Vic Cekvenich
Date:
Subject: Text Search vs MYSQL vs Lucene