Как я могу использовать TTL на столе clickhouse? - PullRequest
2 голосов
/ 27 апреля 2019

Читая документацию, я обнаружил, что функция TTL очень полезна для меня.Однако я не могу создать действительный SQL, чтобы задействовать его.

Как мне это сделать:

CREATE TABLE t1 (
  name String, 
  date DateTime default now(),
  number UInt64 default 0 TTL date + INTERVAL 1 DAY 
) Engine MergeTree() ORDER BY name;

, который выдает ошибку следующим образом:

Syntax error: failed at position 92 (line 4, col 27):
...[copy of my code here]
Expected one of: NOT, LIKE, AND, OR, IN, BETWEEN, COMMENT, CODEC, token, IS, NOT LIKE, NOT IN, GLOBAL IN, GLOBAL NOT IN, ClosingRoundBracket, Comma, QuestionMark

Iтакже пытался задействовать TTL для всей таблицы:

CREATE TABLE t1 (
  name String, 
  date DateTime default now(),
  number UInt64 default 0  
) Engine MergeTree() ORDER BY name TTL date + INTERVAL 1 DAY;

, что также приводит к ошибке.

Насколько я вижу, я делаю все в соответствии с документацией(https://clickhouse.yandex/docs/en/operations/table_engines/mergetree/#table_engine-mergetree-creating-a-table),, но я все еще не могу использовать эту функцию.

Я использую версию сервера 19.5.3 54417.

Пожалуйста, предоставьте любые примеры или мысли о том, какиспользуйте функцию TTL!

1 Ответ

3 голосов
/ 27 апреля 2019

TTL для таблиц и столбцов пока нет, они будут доступны в 19.6.x.Документация отражает состояние «мастера», а не последний выпуск.Это, безусловно, сбивает с толку.Чтобы увидеть конкретный выпуск, вы можете обратиться к документации для конкретной основной версии, например: https://clickhouse.yandex/docs/v19.5/en/operations/table_engines/mergetree/

...