Size: a a a

ClickHouse не тормозит

2021 February 09

D

Dj in ClickHouse не тормозит
Илья Максимов
Интересный случай произошёл, опишу, ибо вдруг кто по истории чата будет искать. Была частая проблема при вставках аля
DB::Exception: Memory limit (total) exceeded: would use 56.60 GiB (attempt to allocate chunk of 67108896 bytes), maximum: 56.59 GiB

Складывалось полное впечатление, что кх (внезапно) перестало хватать памяти, хотя ничего не обновлялось и не выкатывалось. Смотрю в htop - занято всего 20Гб, по приборам в графане тоже самое. Смотрю MemoryTracking - поднимается до 50+ Гб и потом падает. В итоге поставил в два раза больше использование памяти и всё пошло как по маслу. Отчего такое аномальное поведение началось - для меня неизвестно. Версия кх 21.1.2.15
<max_server_memory_usage_to_ram_ratio>2</max_server_memory_usage_to_ram_ratio>
может на вставляемых таблицах навешан МВ?
либо слишком большой кусок вставляете... КХ сортирует их в памяти, т.е. он должен влезать.  https://t.me/clickhouse_ru/199500
в очень новой версии есть флажок чтобы сортировать на клиенте
https://t.me/clickhouse_ru/201922
источник

D

Dj in ClickHouse не тормозит
Alexey Sokolov
Про FORMAT Null не знал, спасибо. Сейчас попробую.

Правильно понимаю, что в таком случае фактор клиента должен исключаться?
да
источник

D

Dj in ClickHouse не тормозит
Alexey Sokolov
Ругается синтаксической ошибкой, КХ 20.8.3.18. :/
Этот формат недавно завезли?
он давно там
источник

DF

Dmitriy Fedosov in ClickHouse не тормозит
Slach
host_regexp смотрите в настройках default profile
Его нужно как-то заменить?
источник

D

Dj in ClickHouse не тормозит
Alexey Sokolov
Ругается синтаксической ошибкой, КХ 20.8.3.18. :/
Этот формат недавно завезли?
case sensitive: Format Null
источник

AS

Alexey Sokolov in ClickHouse не тормозит
Dj
case sensitive: Format Null
Не хочет. Остальные форматы принимает.

Syntax error: failed at position 536 ('FORMAT') (line 21, col 13): FORMAT TabSeparatedWithNamesAndTypes;. Expected SETTINGS (version 20.8.3.18 (official build))
источник

ИМ

Илья Максимов... in ClickHouse не тормозит
Dj
может на вставляемых таблицах навешан МВ?
либо слишком большой кусок вставляете... КХ сортирует их в памяти, т.е. он должен влезать.  https://t.me/clickhouse_ru/199500
в очень новой версии есть флажок чтобы сортировать на клиенте
https://t.me/clickhouse_ru/201922
На вставляемую таблицу действительно навешаны MV, но уже достаточно давно и никогда с этим проблем не возникало. А вот по поводу клиента спасибо за подсказу, потому что сам вставщик clickhouse-client уже давно не обновлялся (аж 20.1.3.7). Быть может дело в клиенте
источник

S

Slach in ClickHouse не тормозит
Dmitriy Fedosov
<host_regexp>(chi-simple-01-[^.]+\d+-\d+|clickhouse\-simple-01)\.crm-test\.svc\.cluster\.local$</host_regexp>
когда вы конектитесь к
Connected to clickhouse-simple-01.crm-test (172.20.144.86) port 8123

clickhouse при наличии host_regexp
будет делать DNS  запрос c типом PTR на ваш source ip
c которого будет идти коннект

и это видимо будет какой то другой hostname не попадающий под ваш host-regpexp
судя по всему вы конектитесь не в под а в сервис ? или точно по имени именно ПОДа?
источник

D

Dj in ClickHouse не тормозит
Илья Максимов
На вставляемую таблицу действительно навешаны MV, но уже достаточно давно и никогда с этим проблем не возникало. А вот по поводу клиента спасибо за подсказу, потому что сам вставщик clickhouse-client уже давно не обновлялся (аж 20.1.3.7). Быть может дело в клиенте
нет, дело не в клиенте одного обновления клиента не хватит думаю, просто у вас не хватает памяти, придется вставлять кусками меньше...  либо убить пару МВ
источник

DF

Dmitriy Fedosov in ClickHouse не тормозит
Slach
когда вы конектитесь к
Connected to clickhouse-simple-01.crm-test (172.20.144.86) port 8123

clickhouse при наличии host_regexp
будет делать DNS  запрос c типом PTR на ваш source ip
c которого будет идти коннект

и это видимо будет какой то другой hostname не попадающий под ваш host-regpexp
судя по всему вы конектитесь не в под а в сервис ? или точно по имени именно ПОДа?
Если бы имя было не корректным то выдало ошибку хоста, поэтому скорее всего подключаюсь я к самому поду, возможно конечно я и ошибаюсь
источник

S

Slach in ClickHouse не тормозит
Dmitriy Fedosov
*   Trying 172.20.144.86...
* TCP_NODELAY set
* Connected to clickhouse-simple-01.crm-test (172.20.144.86) port 8123 (#0)
> POST / HTTP/1.1
> Host: clickhouse-simple-01.crm-test:8123
> User-Agent: curl/7.58.0
> Accept: */*
> Content-Length: 8
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 8 out of 8 bytes
< HTTP/1.1 500 Internal Server Error
< Date: Tue, 09 Feb 2021 10:32:14 GMT
< Connection: Keep-Alive
< Content-Type: text/plain; charset=UTF-8
< X-ClickHouse-Server-Display-Name: chi-simple-01-cluster-0-0-0.chi-simple-01-cluster-0-0.crm-test.svc.dev.cluster.local
< Transfer-Encoding: chunked
< X-ClickHouse-Exception-Code: 516
<
Code: 516, e.displayText() = DB::Exception: default: Authentication failed: password is incorrect or there is no user with such name (version 20.12.4.5 (official build))
* Connection #0 to host clickhouse-simple-01.crm-test left intact
судя по названию хостов, у вас все таки менеджмент clickhouse идет через clickhouse-operator

который установлен через самописный helm chart
источник

D

Dj in ClickHouse не тормозит
Alexey Sokolov
Не хочет. Остальные форматы принимает.

Syntax error: failed at position 536 ('FORMAT') (line 21, col 13): FORMAT TabSeparatedWithNamesAndTypes;. Expected SETTINGS (version 20.8.3.18 (official build))
select * from system.parts Format Null;

SELECT *
FROM system.parts
FORMAT Null

Ok.

0 rows in set. Elapsed: 0.241 sec. Processed 5.38 thousand rows, 2.82 MB (22.39 thousand rows/s., 11.72 MB/s.)
источник

S

Slach in ClickHouse не тормозит
Dmitriy Fedosov
Если бы имя было не корректным то выдало ошибку хоста, поэтому скорее всего подключаюсь я к самому поду, возможно конечно я и ошибаюсь
нет. имя некорректное и авторизация валится с ошибкой авторизации
источник

ИМ

Илья Максимов... in ClickHouse не тормозит
Dj
нет, дело не в клиенте одного обновления клиента не хватит думаю, просто у вас не хватает памяти, придется вставлять кусками меньше...  либо убить пару МВ
А, в этом плане. Мейби, попробую действительно сделать батч поменьше
источник

AS

Alexey Sokolov in ClickHouse не тормозит
Dj
select * from system.parts Format Null;

SELECT *
FROM system.parts
FORMAT Null

Ok.

0 rows in set. Elapsed: 0.241 sec. Processed 5.38 thousand rows, 2.82 MB (22.39 thousand rows/s., 11.72 MB/s.)
Видимо, дело в клиенте (DBeaver). :(

Оба запроса ругаются такой же синтаксической ошибкой.
источник

D

Dj in ClickHouse не тормозит
Alexey Sokolov
Видимо, дело в клиенте (DBeaver). :(

Оба запроса ругаются такой же синтаксической ошибкой.
dbeaver И не должен работать. проверять надо родным клиентом
источник

AK

Anton Khokhrin in ClickHouse не тормозит
Timur Sabirov
create materialized view schema1.agg_id engine=AggregatingMergeTree() order by id populate as select id, idto from schema1.id_all group by id, idto
У вас AggregaringMergeTree с order by id.
Он не склеивает записи с разными idto?
источник

TS

Timur Sabirov in ClickHouse не тормозит
похоже на то
источник

TS

Timur Sabirov in ClickHouse не тормозит
сделал обычный create table as select group by
источник

AK

Anton Khokhrin in ClickHouse не тормозит
Timur Sabirov
похоже на то
По описанию движка звучит логично
источник