Size: a a a

ClickHouse не тормозит

2020 May 28

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
Архитектурно както можно оптимизировать?
Для этого нужно отталкиваться от запросов и от того, что вам нужно.
можно на создавать MAT VIEW и тд
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
например STRING  в UInt  перевести
можно, а еще добавить кодеки
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
партиционирование настроить по другому
У вас довольно частое партицирование и 70*20 = 1400 партиции, что многовато
У вас сколько серверов?
источник

SM

Sergey Mc in ClickHouse не тормозит
7 серверов в кластере
источник

SM

Sergey Mc in ClickHouse не тормозит
я думаю даже более частое партиционирование
источник

SM

Sergey Mc in ClickHouse не тормозит
70 это почему?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
70 это почему?
70 дней данных
ну это прикидка конечно
источник

SM

Sergey Mc in ClickHouse не тормозит
PARTITION BY (toDate(END_TIME), RULEBASE)
источник

SM

Sergey Mc in ClickHouse не тормозит
разве не столько сколько комбинаций?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
PARTITION BY (toDate(END_TIME), RULEBASE)
70 дней, в каждом по 20 уникальных RULEBASE.
источник

SM

Sergey Mc in ClickHouse не тормозит
меня вот этот момент смущает, помоему неудобная схема партиционирования выбрана
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
меня вот этот момент смущает, помоему неудобная схема партиционирования выбрана
Как вставляете данные в таблицу?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
меня вот этот момент смущает, помоему неудобная схема партиционирования выбрана
Ну дневные партиции это необычно, но допустим у вас трлн записей за 70 дней, так что возможно это оправдано.
Но ORDER BY и PARTITION BY сильно зависят от того, какие запросы вам нужны(с какой фильтрацией) и во вторую очередь от того, как компактно уложить можно данные
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Sergey Mc
ну , запросы самые разные, от посчитать сумму по колонке и до невообразимых
а можете показать из кх клиента строку со статистикой когда вы считаете sum по колонке
источник

SM

Sergey Mc in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
а можете показать из кх клиента строку со статистикой когда вы считаете sum по колонке
я бобром пользуюсь к клиенту нет доступа
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Sergey Mc
я бобром пользуюсь к клиенту нет доступа
¯\_(ツ)_/¯
источник

DT

Dmitry Titov in ClickHouse не тормозит
А так в воздух еще можно сказать, что если данные лежат строго по  sharding key, то можно сказать не ходить на те шарды, где нужных данных быть не может.
Натравить кодеки(быстрее данные будут считываться с диска)
возможно для некоторых запросов подойдет SAMPLING

Но без запросов особо не помочь
источник

SM

Sergey Mc in ClickHouse не тормозит
источник

SM

Sergey Mc in ClickHouse не тормозит
Dmitry Titov
А так в воздух еще можно сказать, что если данные лежат строго по  sharding key, то можно сказать не ходить на те шарды, где нужных данных быть не может.
Натравить кодеки(быстрее данные будут считываться с диска)
возможно для некоторых запросов подойдет SAMPLING

Но без запросов особо не помочь
SAMPLING не подойдет, нужны более менее точные расчеты, данные по всему кластеру лежат, можно выделять партиции по суткам например, чтобы обращаться только к одной партиции?
источник

l

lnuynxa in ClickHouse не тормозит
Sergey Mc
SAMPLING не подойдет, нужны более менее точные расчеты, данные по всему кластеру лежат, можно выделять партиции по суткам например, чтобы обращаться только к одной партиции?
если ты будешь писать в WHERE  условие по partition key сработает partition elimination и он пойдет глядеть только нужные партиции
источник