表的 COMPRESSED 选项

当数据加载到表或表分片中时,使用 CREATE TABLE 语句的 COMPRESSED 选项启用自动压缩大量数据行。

在使用 COMPRESSED 选项创建表之后,数据库服务器自动创建压缩自动并压缩 2000 行之后的数据行或更多加载到表中或分片中数据。 如果数据通过轻量级追加加载,则前 2000 行和所有连续的行都会被压缩。如果数据通过其它方式加载,则压缩前 2000 行之后的所有连续的行。要压缩初始的 2000 行,请运行带有 table compress 或 fragment compress 参数的SQL 管理 API task() 或 admin() 函数。

COMPRESSED 选项只对行中的数据启用。 COMPRESSED 选项不会启用 dbspace 或索引中的简单大对象的自动压缩。(您可以使用 CREATE INDEX 语句的 COMPRESSED 关键字创建一个压缩的 B-tree 索引。)

以下示例创建了一个设置为可以自动压缩的表:
CREATE TABLE cust5 (  ...) COMPRESSED;
以下示例还创建了一个名为 t 的表,并定义其第一个和后续 extent 大小设置为自动压缩:
CREATE TABLE t(c int, d int) EXTENT SIZE 32 NEXT SIZE 32 COMPRESSED;

要禁用自动压缩新行中数据,请在表上运行带有 table uncompress 参数的 SQL 管理 API task() 或 admin() 函数。您可以使用 fragment uncompress 和 fragment compress 参数控制表分片的压缩。