Size: a a a

ClickHouse не тормозит

2020 May 28

DT

Dmitry Titov in ClickHouse не тормозит
Tony Larin
да, но немного не то. Хочется именно гео словари мультиязычные с иерархией чтобы хранить гео инфу одним числом :(

пойду костылись пытаться
Мне кажется я где то читал об этом, но не смог найти
источник

S

Shazo in ClickHouse не тормозит
Tony Larin
да, но немного не то. Хочется именно гео словари мультиязычные с иерархией чтобы хранить гео инфу одним числом :(

пойду костылись пытаться
не уверен тчо вас понял, но мб это?
https://clickhouse.tech/docs/ru/sql-reference/functions/ym-dict-functions/
источник

S

Shazo in ClickHouse не тормозит
А это и было в issue, извиняюсь.
источник

SM

Sergey Mc in ClickHouse не тормозит
Добрый день!

Подскажите с чего начать оптимизировать. Есть таблица ~1трлн записей 37 полей.

Работает крайне медленно.

Из того что вижу много полей имеет тип STRING там где можно обойтись   UInt16 UInt32,
Партиционирование сделано по 2ум колонкам типа DATETIME+STRING
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
Добрый день!

Подскажите с чего начать оптимизировать. Есть таблица ~1трлн записей 37 полей.

Работает крайне медленно.

Из того что вижу много полей имеет тип STRING там где можно обойтись   UInt16 UInt32,
Партиционирование сделано по 2ум колонкам типа DATETIME+STRING
DATETIME + string?
а можно DDL?
хотябы PARTITION BY и ORDER BY
источник

SM

Sergey Mc in ClickHouse не тормозит
Dmitry Titov
DATETIME + string?
а можно DDL?
хотябы PARTITION BY и ORDER BY
CREATE TABLE DPI.FLOW (
 START_TIME DateTime,
 END_TIME DateTime,
 RULEBASE String,
...
 SESSION_DURATION UInt32,
 INDEX IMSI_idx IMSI TYPE minmax GRANULARITY 64
) ENGINE = MergeTree() PARTITION BY (toDate(END_TIME), RULEBASE)
ORDER BY
 RADIUS_ID SETTINGS index_granularity = 8192
источник

DT

Dmitry Titov in ClickHouse не тормозит
GRANULARITY 64 = 64*8192 => у вас хранятся один minmax на 524тыс записи
источник

DT

Dmitry Titov in ClickHouse не тормозит
RULEBASE сколько уникальных?
источник

DT

Dmitry Titov in ClickHouse не тормозит
И можно примерные запросы(точнее какие условия в WHERE)
источник

SM

Sergey Mc in ClickHouse не тормозит
Dmitry Titov
RULEBASE сколько уникальных?
парудесятков думаю,  COUNT минут на 10 сейчас уйдет считать
источник

DT

Dmitry Titov in ClickHouse не тормозит
Sergey Mc
парудесятков думаю,  COUNT минут на 10 сейчас уйдет считать
у вас в день те 20 партиций создается?
а 1трлн за какое время?
источник

SM

Sergey Mc in ClickHouse не тормозит
за 70 дней
источник

DT

Dmitry Titov in ClickHouse не тормозит
Dmitry Titov
И можно примерные запросы(точнее какие условия в WHERE)
а какие запросы?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Dmitry Titov
GRANULARITY 64 = 64*8192 => у вас хранятся один minmax на 524тыс записи
они в большинстве случаев делают только хуже
источник

SM

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

SM

Sergey Mc in ClickHouse не тормозит
агрегация по периодам, по другим колонкам
источник

DT

Dmitry Titov in ClickHouse не тормозит
ну, просто если нельзя выделить какие то основные условия в WHERE, то будет ожидаемый full scan и долго и больно
источник

SM

Sergey Mc in ClickHouse не тормозит
Архитектурно както можно оптимизировать?
источник

SM

Sergey Mc in ClickHouse не тормозит
например STRING  в UInt  перевести
источник

SM

Sergey Mc in ClickHouse не тормозит
партиционирование настроить по другому
источник