создан следующим образом:
CREATE
DICTIONARY offers_dictionary
(
program_id Int64 default 0,
offer_id Int64 default 0,
program_name String default '',
offer_name String default '',
offer_key String default '',
currency String default ''
)
PRIMARY KEY offer_id
SOURCE(
CLICKHOUSE(
HOST 'localhost'
PORT 9000
TABLE offers
DB 'cpa'
USER 'default'
PASSWORD 'password'
invalidate_query 'SELECT max(update_time) as update_time FROM offers'
)
)
LIFETIME(30)
LAYOUT(HASHED());
Таблица внутри этого же инстанса кликхауса, ддл такой:
create table cpa.offers
(
program_id Int64,
offer_id Int64,
program_name String,
offer_name String,
offer_key String,
currency String,
update_time DateTime default now()
);
engine = MergeTree()
ORDER BY program_id
SETTINGS index_granularity = 8192;
обновление содержимого происходит корректно, посредством alter table cpa.offers delete where offer_id = id и последующего инсёрта
данных в таблице мало (не больше тысячи записей).
В чем может быть проблема?
если сделать detach dictionary, а затем создать заново - наполнение данными происходит правильно
Версия клика 20.8.3.18
так нет LIFETIME([MIN val1] MAX val2) https://clickhouse.tech/docs/en/sql-reference/statements/create/dictionary/
Обсуждают сегодня