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

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

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

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

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

3 ответов

11 просмотров

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

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

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

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

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

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

А чем вам питонисты не угодили?😂
.
79
Dim Dim, [02.07.2024 11:07] DB 0x62 Dim Dim, [02.07.2024 11:07] DB 0x66 Dim Dim, [02.07.2024 11:07] кто пояснит что это?
Dim Dim
14
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
11
Кстати, я тут еще с одной темой столкнулся, вот учу я C++, на таком то ресурсе, а остальные постоянно советуют практиковаться, что то писать, проекты, но как писать если вот т...
aaswq1
7
Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Ребят, кто сталкивался с тем, что Electron.js не разворачивает билд React.js-приложения? Голый body в чёрном цвете, как и должно быть, но остального - нет. Билд работает исп...
..
6
Ещё такой вопрос. Мне необходимо хранить пароль пользователя локально. Для этого планирую использовать ini файл. Это для автозаполнения полей логин и пароль при авторизации. Е...
Евгений
19
Anyone knows how to build this widget in Flutter? I have all the assets for round stations and the road, but how can I make the my widget animate between these stations? And h...
Mohammad Zamani
9
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Карта сайта