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

Всем привет. Экспериментирую с вставкой из Kafka (Kafka -> MaterializedView

-> MergeTree , по доке ).
Мне хочется, что бы данные поэнергичнее становились доступны для селектов. Так вот, не пойму, в какой момент данные мержатся в основную таблицу.
На Kafka таблице указал kafka_max_block_size = 20000; stream_flush_interval_ms - по умолчанию (7500).
Правильно ли я понимаю, что логика такая:
Консумер ждёт 7,5 секунд. Если это время прошло, либо до этого момента уже пришло 20000 сообщений (не записей) из кафки, то он отправляет эти данные на мерж. При этом если CH видит, что он ещё не перемержил предыдущую порцию, то CH сначала перемерживает между собой то, что нужно вставить, а уже потом перемерживает с основной таблицей. Так?
И ещё вопросы: Если я уменьшу max_insert_block_size, то у меня поэнергичнее будет мержиться в основную таблицу? Т.е. max_insert_block_size независим от потабличной kafka_max_block_size?
Где есть перечисление настроек, которые можно задавать потаблично (а то про kafka_max_block_size можно только в багтрекере прочитать, а не на clickhouse.yandex ).
Если я настрою: Kafka -> MaterializedView -> Distributed -> MergeTree , то у меня увеличится скорость появления данных в основной таблице?
И вообще, может где-то можно почитать про выделение железа под желательную нагрузку на CH?

1 ответов

24 просмотра

Kafka engine читает kafka_max_block_size пока не прочитает все нужное кол-во. Перекладывает их в свой буфер, в момент перекладывания проверяет stream_flush_interval_ms и max_insert_block_size и либо флашит его в таблицу либо нет.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта