CFS добавляет в Shardman сжатие на уровне страницы. Сжатие можно включить только для отдельных табличных пространств. Для сжатия табличного пространства нужно включить параметр сжатия при создании этого табличного пространства. Например:
CREATE TABLESPACE data LOCATION '/mnt/data-{rgid}' WITH (global, compression='zlib');Теперь в этом табличном пространстве можно создавать таблицы и индексы или перемещать в него существующие таблицы или индексы.
CREATE TABLE pgbench_branches (
bid integer NOT NULL PRIMARY KEY USING INDEX TABLESPACE data,
bbalance integer,
filler character(88)
)
WITH (distributed_by = 'bid') TABLESPACE data;Функция cfs_compression_ratio() возвращает фактическое значение степени сжатия для всех сегментов сжатого отношения. Однако для секционированных и сторонних таблиц она возвращает значение типа NaN, поэтому работает только для локальных секций сегментированной таблицы.
Полную документацию CFS можно найти здесь.