What are “compressed” table structures?
In ordinary table structures space is allocated for data rows according to the maximum width of the row. With compressed table structures Ingres applies a compression algorithm in order to reduce the amount of space required. The advantage is a reduction in storage requirements; the disadvantages are twofold: Firstly there is a small performance penalty whenever a row is stored or retrieved, as it has to be compressed or uncompressed. Secondly when a row in a compressed table is updated, it is unlikely to remain the same size as the old row. If it is bigger then it won’t fit in the hole left by the old row, and so it is added somewhere else in the table. Thus an UPDATE is effectively turned into a DELETE followed by an INSERT, and a hole, ie unused space, is left in the table. Eventually these holes occupy more and more of the table until a MODIFY is required to reclaim the space. For these reasons compressed structures are not recommended for tables that are updated heavily. For other