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

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

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

14 ответов

39 просмотров

Что вы сделали ? Вы сделали 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...

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

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

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

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Привет. Подскажите, как правильно сматчить лист фиксированного размера, чтобы компилятор не говорил мне о неполном паттерне? Допустим что-то такое [x', y'] = sort [x, y]?
Arseny
8
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Карта сайта