diff options
author | ilnaz <[email protected]> | 2022-12-11 14:51:19 +0300 |
---|---|---|
committer | ilnaz <[email protected]> | 2022-12-11 14:51:19 +0300 |
commit | bbf0f3f9d2b56853560647675b865b2416767ae9 (patch) | |
tree | 66f32078acfd23cda240b856eb2f9ac2861c0bfa | |
parent | 876ec5cdf9a927c75490dfcee35ae0f225fa189b (diff) |
RETENTION_PERIOD
-rw-r--r-- | ydb/docs/ru/core/concepts/cdc.md | 12 | ||||
-rw-r--r-- | ydb/docs/ru/core/yql/reference/yql-core/syntax/_includes/alter_table.md | 11 |
2 files changed, 23 insertions, 0 deletions
diff --git a/ydb/docs/ru/core/concepts/cdc.md b/ydb/docs/ru/core/concepts/cdc.md index 55e729b448b..3c9e54c3dba 100644 --- a/ydb/docs/ru/core/concepts/cdc.md +++ b/ydb/docs/ru/core/concepts/cdc.md @@ -88,6 +88,18 @@ Change Data Capture (CDC) обеспечивает захват изменени {% endnote %} +## Время хранения записей {#retention-period} + +По умолчанию записи хранятся в потоке изменений в течение 24 часов с момента отправки. В зависимости от сценариев использования время хранения можно уменьшить или увеличить до 30 дней. + +{% note warning %} + +Записи, время хранения которых истекло, удаляются вне зависимости от того, успели их обработать (прочитать) или нет. + +{% endnote %} + +Удаление записей до их обработки клиентом приводит к возникновению пропусков [офсетов](topic.md#offset), то есть офсеты последней прочитанной из партиции записи и самой ранней из доступных будут отличаться более, чем на единицу. + ## Создание и удаление потока изменений {#ddl} Поток изменений может быть добавлен к существующей таблице или удален директивами [ADD CHANGEFEED и DROP CHANGEFEED](../yql/reference/syntax/alter_table.md#changefeed) операции YQL `ALTER TABLE`. При удалении таблицы добавленный к ней поток изменений также будет удален. diff --git a/ydb/docs/ru/core/yql/reference/yql-core/syntax/_includes/alter_table.md b/ydb/docs/ru/core/yql/reference/yql-core/syntax/_includes/alter_table.md index 320f36ce2c7..58e52b9262e 100644 --- a/ydb/docs/ru/core/yql/reference/yql-core/syntax/_includes/alter_table.md +++ b/ydb/docs/ru/core/yql/reference/yql-core/syntax/_includes/alter_table.md @@ -64,6 +64,7 @@ ALTER TABLE `series` DROP INDEX `title_index`; * `NEW_AND_OLD_IMAGES` - комбинация режимов `NEW_IMAGE` и `OLD_IMAGE`. Будут записаны значения всех столбцов _до_ и _в результате_ изменения. * `FORMAT` — формат данных, в котором будут записаны данные. * `JSON` — структура записи приведена на странице [описания changefeed](../../../../concepts/cdc#record-structure). +* `RETENTION_PERIOD` — время хранения записей. Тип значения — `Interval`, значение по умолчанию — 24 часа (`Interval('PT24H')`). Приведенный ниже код добавит поток изменений с именем `updates_feed`, в который будут выгружаться значения изменившихся столбцов таблицы в формате JSON: @@ -74,6 +75,16 @@ ALTER TABLE `series` ADD CHANGEFEED `updates_feed` WITH ( ); ``` +Записи в таком потоке изменений будут храниться в течение 24 часов (значение по умолчанию). Код из следующего примера создаст поток изменений с хранением записей в течение 12 часов: + +```sql +ALTER TABLE `series` ADD CHANGEFEED `updates_feed` WITH ( + FORMAT = 'JSON', + MODE = 'UPDATES', + RETENTION_PERIOD = Interval('PT12H') +); +``` + `DROP CHANGEFEED` — удаляет поток изменений с указанным именем. Приведенный ниже код удалит changefeed с именем `updates_feed`: ```sql |