Size: a a a

ClickHouse не тормозит

2020 July 05

TG

Tagir Gumerov in ClickHouse не тормозит
Maxim Bogdanov
Подскажите, а при создании первичного ключа, есть ли принципиальная разница между ORDER BY (CounterID, CreatedAt) и ORDER BY (CreatedAt, CounterID)?
1. скобки ставить не надо - индекс сломается, мб уже добавили фикс про прокидывание столбцов из tuple
2. да, есть, ключами являются все префиксы ключа сортировки, поэтому двойной ключ будет работать в обоих случаях, а ключи из одного столбца либо тот, либо другой
3. также советуют ставить столбцы (выражения от них) в порядке увеличения кардинальности
источник

TG

Tagir Gumerov in ClickHouse не тормозит
*про скобки я имел в виду в select
источник

M

Maxim Bogdanov in ClickHouse не тормозит
Tagir Gumerov
1. скобки ставить не надо - индекс сломается, мб уже добавили фикс про прокидывание столбцов из tuple
2. да, есть, ключами являются все префиксы ключа сортировки, поэтому двойной ключ будет работать в обоих случаях, а ключи из одного столбца либо тот, либо другой
3. также советуют ставить столбцы (выражения от них) в порядке увеличения кардинальности
Спасибо. Скобки тк это из CREATE TABLE. В целом 3 пункт наверно самый весомый 🙂
источник

TG

Tagir Gumerov in ClickHouse не тормозит
самый весомый 2, если вы конечно не во всех запросах используете фильтрацию по обоим столбцам
3 зависит от специфики, просто совет общего толка
источник

M

Maxim Bogdanov in ClickHouse не тормозит
Tagir Gumerov
самый весомый 2, если вы конечно не во всех запросах используете фильтрацию по обоим столбцам
3 зависит от специфики, просто совет общего толка
Да, в 99% запросов фильтрация будет включать эти два поля, либо первое поле.
источник

TG

Tagir Gumerov in ClickHouse не тормозит
Maxim Bogdanov
Да, в 99% запросов фильтрация будет включать эти два поля, либо первое поле.
первое поле это какое?
его и ставьте первым в ключ сортировки, иначе эти запросы будут делать fullscan (зависит еще от партиционирования)
источник

M

Maxim Bogdanov in ClickHouse не тормозит
Tagir Gumerov
первое поле это какое?
его и ставьте первым в ключ сортировки, иначе эти запросы будут делать fullscan (зависит еще от партиционирования)
Первое — CounterID как раз. Его первым и поставлю.
источник

TG

Tagir Gumerov in ClickHouse не тормозит
👍
источник
2020 July 06

ИМ

Илья Максимов... in ClickHouse не тормозит
Привет! Кто какие best practise знает по централизованному хранению и просмотру логов селектов к кликхаусу? Чтобы раз в недельку на почту статистику мог скидывать в разрезе пользователей, какие были долгие, какие быстрые запросы, какие вообще не выполнились и тд?
источник

AK

Alex Krash in ClickHouse не тормозит
Илья Максимов
Привет! Кто какие best practise знает по централизованному хранению и просмотру логов селектов к кликхаусу? Чтобы раз в недельку на почту статистику мог скидывать в разрезе пользователей, какие были долгие, какие быстрые запросы, какие вообще не выполнились и тд?
Есть табличка system.query_log. Выборки из неё - на откуп вашей фантазии и потребностям :)
источник

ИМ

Илья Максимов... in ClickHouse не тормозит
Alex Krash
Есть табличка system.query_log. Выборки из неё - на откуп вашей фантазии и потребностям :)
Есть такая, но в сыром виде она плюс минус бесполезна, а сервис пилить (велосипед изобретать) не хочется. Кластер то большой, чтобы руками на каждую ноду ходить забирать slow log
источник

M

Munir in ClickHouse не тормозит
Всем привет. Может уже было... Clickhouse-client в режиме мультикоманд в версии 20.1 работает просто прекрасно. Вставляю кучу скриптов через буфер - все ок. Клиент 20.3 не отделяет команды (которые через буфер вставляются) друг от друга. Это фича какая-то новая, про которую не знаю или специально закрыли?
источник

AK

Alex Krash in ClickHouse не тормозит
Илья Максимов
Есть такая, но в сыром виде она плюс минус бесполезна, а сервис пилить (велосипед изобретать) не хочется. Кластер то большой, чтобы руками на каждую ноду ходить забирать slow log
Сделайте Distributed таблицу, и селектите
источник

ИМ

Илья Максимов... in ClickHouse не тормозит
Alex Krash
Сделайте Distributed таблицу, и селектите
Приятная мелочь, но задачу не решает
источник

PL

Paul Loyd in ClickHouse не тормозит
Илья Максимов
Есть такая, но в сыром виде она плюс минус бесполезна, а сервис пилить (велосипед изобретать) не хочется. Кластер то большой, чтобы руками на каждую ноду ходить забирать slow log
А не надо сервис отдельный. Можно просто из графаны или забикса алертинг настроить и какие угодно метрики.
источник

ИМ

Илья Максимов... in ClickHouse не тормозит
Paul Loyd
А не надо сервис отдельный. Можно просто из графаны или забикса алертинг настроить и какие угодно метрики.
Мне прельщает подход sentry, который собирает ексепшны с приложений и раз в неделю репорт делает. Ну и тут речь не о мониторинге, а об персентилях выполнений запросов разных людей. К кому раз в какой то интервал нужно идти и помогать оптимизировать запросы, чтобы выполнялись быстрее, памяти кушало меньше.. Чтобы появилась прозрачная статистика для всех лиц использующих базу
источник

ИМ

Илья Максимов... in ClickHouse не тормозит
а датадог кто нибудь прикручивал к кх?
источник

YV

Yuri Velgosha in ClickHouse не тормозит
Илья Максимов
а датадог кто нибудь прикручивал к кх?
Хм, смотрю там метрик просто хренова туча собирается, кажется, если уж сильно нужно, то можно и датадогом обойтись. Вопрос в цене, как всегда :)
источник

Д

Дмитрий in ClickHouse не тормозит
всем доброго времени суток. Подскажите, пожалуйста, возможно ли и, если возможно, то как это реализуется, с помощью constraint-ов задать ограничение на уникальность значений в столбце в таблице clickhouse?
источник

Д

Дмитрий in ClickHouse не тормозит
движок mergetree()
источник