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

Сделал материзованное view на AggregatingMergeTree но чето медленно оно кверится.

вообще по памяти валится. В чем может быть проблема?

14 ответов

45 просмотров

Что вы сделали ? Вы сделали MV на таблицу с движком AggregatingMergeTree ? Какой запрос медленно выполняется ? Какие агрегатные функции используете

William Ko- Автор вопроса
Константин
Что вы сделали ? Вы сделали MV на таблицу с движко...

1 да. MV на таблицу с движком SimpleAggregateFunction 2 медленно выполняются селекты с группировкой типо таких как на скрине 3 в основном max, один раз min, один раз groupUniqArrayArraySimpleState и один раз anyLastSimpleState

William Ko
screenshot 1 да. MV на таблицу с движком SimpleAggregateFunct...

Лучше покажите как создана AggregatingMergeTree и запрос текстом целиком. Если в запросе есть uniq то быстро не будет

William Ko- Автор вопроса
Konstantin Ilchenko
Лучше покажите как создана AggregatingMergeTree и ...

запрос создания таблицы или запрос создания вью. uniq есть. но он не критичен. щас без него попробую еще

William Ko
запрос создания таблицы или запрос создания вью. u...

Таблицы, у вас же вью вставляет в AggregatingMergeTree таблицу

William Ko- Автор вопроса
Konstantin Ilchenko
Таблицы, у вас же вью вставляет в AggregatingMerge...

CREATE TABLE db_name.table_name ( run_id_u String, run_start_time SimpleAggregateFunction(min, DateTime64(3)), run_last_timestemp SimpleAggregateFunction(max, DateTime64(3)), order_type SimpleAggregateFunction(max, LowCardinality(String)), some_id SimpleAggregateFunction(max, UInt16), data_source SimpleAggregateFunction(max, LowCardinality(String)), report_type SimpleAggregateFunction(max, LowCardinality(String)), account_id SimpleAggregateFunction(max, LowCardinality(String)), table_name SimpleAggregateFunction(max, LowCardinality(String)), date_from SimpleAggregateFunction(max, Date), date_to SimpleAggregateFunction(max, Date), some_column SimpleAggregateFunction(max, LowCardinality(String)), order_id SimpleAggregateFunction(max, UInt32), run_events_count SimpleAggregateFunction(max, UInt16), event_types_array SimpleAggregateFunction(groupUniqArrayArray, Array(String)), has_extract_message SimpleAggregateFunction(max, UInt8), message SimpleAggregateFunction(max, String), exception_text SimpleAggregateFunction(max, String), message_type_with_error SimpleAggregateFunction(anyLast, LowCardinality(String)), error_log_message_id SimpleAggregateFunction(anyLast, String), request_id SimpleAggregateFunction(max, UInt32), _trace_id SimpleAggregateFunction(max, String), job_id SimpleAggregateFunction(max, Nullable(UInt32)), INDEX run_last_timestemp_idx run_last_timestemp TYPE minmax GRANULARITY 5, INDEX job_date_from_idx date_from TYPE minmax GRANULARITY 5, INDEX job_date_to_idx date_to TYPE minmax GRANULARITY 5, INDEX run_id_universal_idx run_id_universal TYPE bloom_filter GRANULARITY 5, INDEX table_name_idx table_name TYPE bloom_filter GRANULARITY 5 ) ENGINE = AggregatingMergeTree PARTITION BY toYYYYMM(run_start_time) ORDER BY (agency_id, data_source, report_type, account_id, order_id, table_name, run_id_u, run_last_timestemp) SETTINGS index_granularity = 8192

William Ko
CREATE TABLE db_name.table_name ( run_id_u St...

А без индексов не пробовали? Сколько строк в партиции? Возможно только медленнее делают запросы. Как выглядит сам селект?

William Ko- Автор вопроса
Konstantin Ilchenko
А без индексов не пробовали? Сколько строк в парти...

щас сделаем без индексов. но не похоже что это что-то поменяет селект на котором уже падает вот так. даже фильт по дате не спасает

William Ko
щас сделаем без индексов. но не похоже что это что...

А зачем maxSimpleState в селект, достаточно же просто max?

William Ko- Автор вопроса
William Ko
ну пробовал может как-то повлияет

Так а сколько записей и какой лимит по памяти? Надо было с этого начать наверное)

William Ko- Автор вопроса
Konstantin Ilchenko
Так а сколько записей и какой лимит по памяти? Над...

в исходной таблице 120 млн строк. 24гб. в аггерированной 30 млн

William Ko
в исходной таблице 120 млн строк. 24гб. в аггериро...

вроде не много, max_bytes_before_external_group_by = ‘12G’ - так же проходит?

William Ko- Автор вопроса
Konstantin Ilchenko
вроде не много, max_bytes_before_external_group_by...

чуть чуть бодрее стало, но больше колонок уже падает

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

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

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