Управление retention-правилами
Содержание раздела
Retention-правила поддерживаются для логических и снапшот-таблиц. Для каждой таблицы можно настроить несколько правил: по одному на каждый ее датасорс.
Retention-правила могут остужать или удалять исторические данные логических таблиц и только удалять — информацию об удаленных записях снапшот-таблиц. Подробнее о стратегиях обработки см. в разделе Retention-правила.
Retention-правила доступны для СУБД ADB и ADP.
Добавление правил для новой таблицы
Чтобы настроить retention-правила таблицы сразу при ее создании, в запросе CREATE TABLE укажите ключевое слово RETENTION для каждого датасорса таблицы, данные которого требуется охлаждать или удалять.
Добавление правил для существующей таблицы
Чтобы добавить retention-правила для существующей таблицы, выполните ALTER TABLE ADD RETENTION для каждого ее датасорса, данные которого требуется охлаждать или удалять.
Удаление правил
Чтобы удалить retention-правила для таблицы, выполните ALTER TABLE DROP RETENTION для каждого из правил.
При удалении правила, направленного на остужение данных, также удаляются все холодные данные таблицы без возможности их восстановления.
Примеры
Создание таблицы с двумя retention-правилами
Ниже показан пример запроса на создание логической таблицы с двумя retention-правилами, согласно которым исторические данные старше месяца будут перемещаться из adp в adp_archive, а из adp2 — будут удаляться.
CREATE TABLE marketing.clients_all_adp (
id BIGINT NOT NULL,
first_name VARCHAR(256) NOT NULL,
last_name VARCHAR(256) NOT NULL,
patronymic_name VARCHAR(256),
birth_date DATE,
PRIMARY KEY (id)
) DISTRIBUTED BY (id)
DATASOURCE_TYPE ('adp', 'adp2')
RETENTION ('adp', 2678400, 'adp_archive')
RETENTION ('adp2', 2678400)
Добавление retention-правила для существующей таблицы
Ниже показан пример запроса на добавление retention-правила для существующей таблицы, согласно которому исторические данные старше недели будут перемещаться из датасорса adp в датасорс adp_archive, служащий хранилищем холодных данных.
ALTER TABLE marketing.clients_adp
ADD RETENTION ('adp', 604800, 'adp_archive')
Удаление retention-правила
ALTER TABLE marketing.clients_adp
DROP RETENTION 'adp'