184 похожих чатов

Добрый день. Подскажите, пожалуйста, как работает вставка из топика через

MV в следующем случае.
Имеется топик с 50 партициями(партиции с ключом) и 1 хост CLickhouse. Ключ сортировки в целевой таблице соответствует по префиксу ключу партициирования в Kafka.
Если создаю kafka engine с количеством consumer-ов 1, как будут формироваться блоки для вставки?
И как будет работать вставка и параметр max_insert_block_size, для каждого из Consumer-ов, если их больше 1?

5 ответов

12 просмотров

ну вообще никак не учитывается, и не будет учитываться ваш ключ партиций. Чего хотелось-то? max_insert_block_size на кафку уже давно не влияет, там др. параметры.

Alexey- Автор вопроса
Denny [Altinity]
ну вообще никак не учитывается, и не будет учитыва...

В партициях кафки по факту отсортированные по order by данные. Думал можно ли это как-то использовать, чтобы количество слияний уменьшить и их облегчить.

Alexey
В партициях кафки по факту отсортированные по orde...

слияния не сортируют данные, кол-во слияний зависит от того как часто флашатся данные из топика. Это настраивается параметрами кафки. То что данные уже отсортированы инсерт видит по самим сортированным данным (не нужны никакие подзказки), и использует это.

Alexey- Автор вопроса
Denny [Altinity]
слияния не сортируют данные, кол-во слияний завис...

Спасибо. Только вот про параметры не понял, в последней доке они есть. Я понял для себя по итогу, что max_insert_block_size, stream_flush_interval_ms влияют на то каков будет размер вставляемого блока в таблицу, а на то как этот блок сформирует consumer можно повлиять через расширенную конфигурацию librdkafka.

Alexey
Спасибо. Только вот про параметры не понял, в посл...

kafka_max_block_size: Number of rows collected by poll(s) for flushing data from Kafka вот тут посмотрите https://github.com/ClickHouse/ClickHouse/pull/11388 доку не обновляли скорее всего

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
DS
8
Карта сайта