>
> 990 * 2072 = 2,051,280 Bytes
>
> BUT after clustering triples according to an index on att1:
>
<snip>
>
> 142 * 8 * 1024 = 1,163,264 Bytes
>
>
> Is there any compression or what?
>
varchar means 'character varying'. What varies is the length. So a
varchar(1000) with 'foo' in it only takes a few bytes ('foo' plus length
info) instead of 1000 bytes.
If you really want a fixed-length field, nchar or char should do what you
want.