в следующем сценарии: есть таблица событий (достаточно большая и часто пополняемая) с order by (AdvertisementId, EventTime). Хочется с минимальными напряжениями уметь получить все такие AdvertisementId, для которых есть события за последние Н дней (абсолютной строгости по времени не требуется). Идея, которая пришла первой - это сделать MV с ReplacingMergeTree(EventTime) с order by (AdvertisementId) и TTL в Н дней на строках. Тогда запрос вида select uniqExact(AdvertisementId) вернет все айдишники, которые не успели умереть по TTL и вроде все здорово. Вопрос: не намудрили ли мы с такой схемой?
TTL чистит строки не сразу
Обсуждают сегодня