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

Подскажите пожалуйста, кто-нибудь использует ClickHouse с большим (50+) количеством таблиц,

в которые идет активная запись в каждый? При этом ещё и на HDD. Я сделал такой нехитрый запрос:

select count()
from system.parts_columns
where modification_time >= now() - 60

И он показал 9097 созданных файлов за 60 секунд — в среднем это по 150 файлов в секунду, и для HDD это уже довольно плохо. Мы используем буферные таблицы с интервалом флаша в 15 секунд, и где-то так на практике и получается, если смотреть на active партици. Однако у нас получается много мелких мержей, и, кажется, что они весьма плохо влияют на производительность. Что с этим делать, я лично не очень понимаю (кроме очевидного варианта с увеличением интервала флаша, но это не далеко идеальный вариант).

3 ответов

19 просмотров

У нас так, но мы пачки формируем извне в отдельном софте. И вставляем пачки по условию: или раз в минуту или по достижнию МАХ_ПАЧКА.

Сгруппируйте по таблице селект, у вас поди таблицы есть в которых партиционировано по полю с кучей значений и insert разбивается на много кусков.

Yuran- Автор вопроса

Если кому интересно, чем это закончилось — кажется, я более-менее правильно всё посчитал, сколько файлов создается, и их создавалось действительно слишком много, поэтому я увеличил интервал сброса буферов по умолчанию до 60 секунд (с 15 секунд) и серверу сразу полегчало, утилизация дисков теперь находится на уровне 7-8%, а также уменьшился объем записи на диск с ~10 мб/сек до ~3 мб/сек за счёт того, что больше не идет много мелких мержей, которые тоже доставляли проблемы до этого. Не могу сказать, что мне это решение прямо очень нравится, но всё равно это лучше, чем ничего. Спасибо за участие (хотя по сути все советы и сводились к тому, чтобы делать флаши в таблицу пореже :))

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

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

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