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

Всем привет. У меня вопрос по rps в КХ. Есть

кластер, 4 ноды, 2 шарда по 2 ноды в каждом. Работает на оч хорошем железе, запас по ресурсам есть большой.
Запросы аналитические, написаны хорошо и работают быстро, в среднем 20-30мс на запрос. Рейт запросов - высокий, порядка 400rps на каждую ноду (тк данные пишутся и читаются через destributed таблицу, бизнесовых rps - порядка 100 на ноду и 400 на кластер, соотв-но). Проблема в том, что по мере роста rps, скорость запросов - деградирует драматически. Те увеличение rps в 2 раза - дает деградацию запросов в 5 раз, до 100-150ms. Увеличение рейта в 4 - 5 раз, деградирует запросы в более 10-15 раз. При этом, самое интересное, что сервера не перегружены ни по сpu, памяти, ни по IO, латенси от дисков не более 1-2мс, очередей нет. Отдельные сервера с Зукипером также не нагружены.
Вопрос в следующем - настолько высокий rps - типичное ли использование КХ и стоит думать продолжать копать в сторону оптимизации кластера через параметры, или архитектурно КХ плохо подходит под такой паттерн нагрузки и стоит думать в сторону снижения rps ? Версия 19.6

8 ответов

20 просмотров

Ну как минимум я бы рекомендовал переехать на более новый КХ. А в целом он не совсем подходит для высоких RPS. Была статья от ребят с altinity они там тестировали производительность, но достаточно условно, так как там выполнялся запрос SELECT 1.

Jamal-Sale Автор вопроса
Vladyslav Sakun
Ну как минимум я бы рекомендовал переехать на боле...

принял. Спасибо большое! Я также думал об обновленнии

в 19.16 на самом деле возможно у вас запросы выстраиваются в очередь, потому что в КХ есть параметр 100 запросов одновременно, все что больше ставить в очередь до 500мс. в новых версиях 500мс поменяли на 0 это неестественный RPS для OLAP, естественный RPS это 5 ну 10. удивительно что КХ работает с таким RPS, но в принципе можно и больше Почему/для чего у вас такой RPS ?

Jamal-Sale Автор вопроса
Denny [Altinity]
в 19.16 на самом деле возможно у вас запросы выстр...

да, у нас выкручен этот параметр в 200. и даже пробовали 500. Но особого эффекта на скорость запросов нет. Я также говорю нашей разработке что нужно снижать rps, менять бизнес логику. Просто хотел еще услашать подверждение, опытных специалистов. Спасибо

Jamal Sale
да, у нас выкручен этот параметр в 200. и даже про...

а чем вы ходите в КХ? каким API ? на каждый запрос свой коннект?

Jamal-Sale Автор вопроса
Denny [Altinity]
а чем вы ходите в КХ? каким API ? на каждый запрос...

через chproxy (который также не нагружен). Приложения на java

Jamal Sale
через chproxy (который также не нагружен). Приложе...

померяйте используя clickhouse-benchmark -c 100 потом попробуйте без chproxy попробуйте через пул коннектов в джава

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта