Takahiro,

> PostgreSQL can treat variable-length data flexibly, but therefore
> it consumes more spaces if we store short data. Headers of
> variable-length types use 4 bytes regardless of the data length.
>
> My idea is to change the header itself to variable-length.
> In order to reduce the size of short data, I wrote a patch to encode
> lengths into the first several bits of structure. Also, the alignments
> of the types were changed to 'char' from 'int'.
>
> I know my patch is still insufficient, for example, the types cannot
> be TOASTed. But I guess this compression works well for short text.

Hmmm.  Seems like these would be different data types from the standard ones 
we deal with.  I can see the value for data warehousing, for example.   

Wouldn't this require creating, for example, a SHORTTEXT type?  Or were you 
planning this to handle VARCHAR(6) and the like?   If so, how would we deal 
with users who change the length via ALTER TABLE?

-- 
Josh Berkus
Aglio Database Solutions
San Francisco

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to