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

Еще одно странное поведение (обновили КХ 20.4.3 > 20.12.4) временные таблицы с

engine=Log
созданные и еще не дропнутые с версии 20.4 читаются в несколько тредов (insert-select ~1m rows ~19sec)

а созданная в 20.12 почему-то ломится в 1 тред (и в 2-3 раза дольше обрабатывается)
насильно пытаюсь увеличить (
set max_threads = 6;
set min_insert_block_size_rows=200000;) - не помогает - видимо чего-то не учел?

12 ответов

14 просмотров

Странно это. А просто селект тоже в 1 поток?

Piotr-Liakhavets Автор вопроса
【D】【J】
Странно это. А просто селект тоже в 1 поток?

Когда таблицу log заполняю с min_insert_block_size_rows=200000 То на селекте в формат нулл можно добиться того, чтобы было несколько тредов Но чтобы и на инсерты позитивно повлияло - не заборол пока

Piotr Liakhavets
Когда таблицу log заполняю с min_insert_block_siz...

max_insert_threads можно попробовать увеличить, если еще не делали https://github.com/ClickHouse/ClickHouse/search?q=max_insert_threads

Piotr Liakhavets
Когда таблицу log заполняю с min_insert_block_siz...

Так у вас вставка не параллелится? Я думал селекты. По вставке insert_select куча параметров есть которые надо смотреть.

Piotr-Liakhavets Автор вопроса
Piotr-Liakhavets Автор вопроса
【D】【J】
Так у вас вставка не параллелится? Я думал селекты...

А есть где-то в сконцентрированом виде список? А то разрозненно натыкался на разные, а полной картины не сложил в голове

т.е. разница в том как создается engine=Log , одним блоком или несколькими. Откуда берутся эти engine=Log ? каким запросом?

Piotr-Liakhavets Автор вопроса
Denny [Altinity]
т.е. разница в том как создается engine=Log , одни...

create ttt as prototype_table engine=Log потом шелл zcat file | clickhouse-client -q"insert into ttt format CSV"

Piotr Liakhavets
create ttt as prototype_table engine=Log потом ше...

ну например так --max_insert_block_size=10000 --input_format_parallel_parsing=0 zcat file | clickhouse-client --max_insert_block_size=10000 --input_format_parallel_parsing=0 -q"insert into ttt format CSV"

Piotr-Liakhavets Автор вопроса
Denny [Altinity]
ну например так --max_insert_block_size=10000 --in...

спасибо, пробую на последующий ЕТЛ-ьный запрос к этой таблице насильно какие-то сеттинги надо добавлять? или само должно понять?

Piotr-Liakhavets Автор вопроса
Denny [Altinity]
ну например так --max_insert_block_size=10000 --in...

тредов стадо больше (~6) но к скорости последующей выборки плюсануло не так сильно, как я надеялся [hostname] 2021.01.13 15:01:57.683883 [ 2607564 ] {f1e730ce-c8f9-429c-a8b5-d957fdc1f27f} <Information> executeQuery: Read 1624753 rows, 1.35 GiB in 28.547938887 sec., 56913 rows/sec., 48.38 MiB/sec. [hostname] 2021.01.13 15:01:57.684423 [ 2607564 ] {f1e730ce-c8f9-429c-a8b5-d957fdc1f27f} <Debug> MemoryTracker: Peak memory usage (for query): 3.32 GiB. получается что-то из дефолтных сеттингов решило вести себя иначе Спасибо @den_crane

Piotr Liakhavets
тредов стадо больше (~6) но к скорости последующей...

ну сделайте тикет на гитхабе что регресия перфоманса, приложите статистику, было так, стало так

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
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
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта