значениями uniqMerge (около 100) для 20 тысяч строк все работало очень быстро, около 100ms. Но теперь у того же количества строк значение uniqMerge около 2000 (вместо 100), и аналогичный запрос работает в 20 раз медленнее. Я использую это поле в HAVING uniqMerge(columnName) > N, где N всегда меньше 10 (а почти всегда равен 3). То есть, uniqMerge мержит все эти 2000 значений, хотя мне хватило бы и информации, что там больше 3 уникальных значений. Нет ли способа, не считая медленный uniqMerge , узнать, что их там точно больше трех? Что-то типа uniqUpTo(3), только для uniqState? (`uniqMergeUpTo...`)
использовать uniqUpToState/uniqUpToMerge не пробовали?
есть менее точные, но более быстрые uniqCombine / uniqHLL12 но у вас проблема скорее скорее в дименшинах, у вас тупо строк слишком много в Materialized View видимо
Обсуждают сегодня