Хорошая ли практика сделать почасовые партиции? и каким выражением правильно задать их?
Пойдет PARTITION BY toStartOfHour(ts)
спасибо, на это и смотрел. листал историю чата, и часто упоминают, что в ЗК будет проблема при часовых партициях. в чем будет проблема? и будет ли она при хранении 3-х дней, потом удаление партици и заново.
сколько данных миллиадр строк в день?
в ZK проблема не в том что партиции почасовые а в том что партов может быть СЛИШКОМ много для синхронизации когда делают почасовые партиции а данные вставляют каждый раз "за последний день" и соответсвенно новые куски данных появляются в слишком большом кол-ве партиций... ZK не любит когда кол-во транзакций очень большое... но это крайние кейсы редко встречаемые
в зависимости от того сколько у вас данных и как вы их вставляете, проблем c ZK у вас быть не должно
На самом деле с zookeeper и часовые партиции видимо проблема в этом https://github.com/ClickHouse/ClickHouse/issues/3322
от 30 до 100млн в сутки
Наверное тогда не стоит мучатся с часовыми PARTITION BY toDate(ts) ORDER BY (toStartOfHour(ts),...)
IMHO тогда особого смысла делать почасовые партиции нет если дата есть в ORDER BY тогда оно равномерно по mrk файлам засечки сделает, и спокойно их фильтровать будет
подневные партиции+в ключе сортировки на 1 месте?
Да, ну точнее даже вопрос, вы как фильтруете по дате в запросе?
да, дата есть в ключе сортировки
да, будет фильтр по датам
Обсуждают сегодня