Настройка retention-правил
Содержание раздела
Для логической таблицы можно настроить retention-правила, в соответствии с которыми система будет периодически переносить или удалять неактуальные версии данных таблицы по истечении срока хранения таких данных.
Retention-правила доступны для СУБД ADB и ADP.
Добавление правил для новой таблицы
Чтобы добавить retention-правила для новой логической таблицы, в запросе CREATE TABLE укажите для каждого правила ключевое слово RETENTION
с необходимыми параметрами.
Для каждого датасорса, в котором планируется размещать данные таблицы, можно настроить свое retention-правило.
Добавление правил для существующей таблицы
Чтобы добавить retention-правила для существующей логической таблицы, выполните ALTER TABLE ADD RETENTION для каждого из правил.
Удаление правил
Чтобы удалить retention-правила для логической таблицы, выполните ALTER TABLE DROP RETENTION для каждого из правил.
При удалении retention-правила, направленного на остужение данных, система удаляет все холодные данные логической таблицы из датасорса-приемника. Данные удаляются окончательно.
Примеры
Создание таблицы с двумя retention-правилами
Ниже показан пример запроса на создание логической таблицы с двумя retention-правилами, согласно которым неактуальные версии данных старше месяца будут перемещаться из adp1
в 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 ('adp1', 'adp2')
RETENTION ('adp1', 2678400, 'adp_archive')
RETENTION ('adp2', 2678400)
Добавление retention-правила для существующей таблицы
Ниже показан пример запроса на добавление retention-правила для существующей таблицы, согласно которому неактуальные версии данных старше недели будут перемещаться из датасорса adp1
в датасорс adp_archive
, служащий хранилищем холодных данных.
ALTER TABLE marketing.clients_adp1
ADD RETENTION ('adp1', 604800, 'adp_archive')
Удаление retention-правила
ALTER TABLE marketing.clients_adp1
DROP RETENTION 'adp1'