Raw size

From: Ioannis Theoharis <theohari(at)ics(dot)forth(dot)gr>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Raw size
Date: 2005-03-10 18:07:13
Message-ID: Pine.GSO.4.58.0503101956100.17880@ourania.ics.forth.gr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

i have a table:

create table triples(
att0 varchar(1000),
att1 int4,
att2 varchar(20),
att3 varchar(1000)
)

My table has 990 raws.

The (possibly wrong) way, with wich i compute the size of the table is:
att0: 1000 * 1 Byte + 4 = 1004 Bytes
att2: 20 * 1 Byte + 4 = 24 Bytes
att3: 1000 * 1 Byte + 4 = 1004

2032 Bytes + 40 (for oid) = 2072 Bytes

990 * 2072 = 2,051,280 Bytes

BUT after clustering triples according to an index on att1:

select relname, relpages from pg_class ;
relname | relpages
---------------------------------+----------
triples | 142 (8KB/buffer)

142 * 8 * 1024 = 1,163,264 Bytes

Is there any compression or what?

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bort, Paul 2005-03-10 18:09:11 Re: We are not following the spec for HAVING without GR
Previous Message Tom Lane 2005-03-10 17:44:50 Re: [HACKERS] We are not following the spec for HAVING without GROUP BY