| 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: | Whole Thread | Raw Message | 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?
| 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 |