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

Господа, добрый день. подскажите, пожалуйста, по такой ситуации. Есть желание для

тестов сервиса поднимать локально небольшой кластер из двух нод, накатывать миграции. Столкнулся с тем что миграции идут медленно (около 20 секунд). Таблиц и мат вьюшек в сумме не больше двадцати.
Я пробросил внутрь контейнеров рам диск в /var/lib/clickhouse, но ситуацию это не улучшило.

Ранее подобная схема работала для постгреса (на одном инстансе). Хочется провернуть и с кликхаусом.

Может ли быть проблема в zookeeper или чисто в clickhouse ?
Есть ли вариант ускорить миграции?

конфиг https://pastebin.com/3Rm55SZZ

12 ответов

18 просмотров

это не ускорить через "один инстанс" что конкретно медленно идет? замеряли?

что такое миграции? пример дайте

Alexey- Автор вопроса
Slach [altinity]
это не ускорить через "один инстанс" что конкретно...

-------------------------------------------------------------- ALTER TABLE db.site_state_sum_by_hour on cluster default ADD COLUMN decontaminating UInt64 clickhouse-0-0 | 2022.06.10 12:17:52.249863 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Processing tasks clickhouse-0-0 | 2022.06.10 12:17:52.252776 [ 66 ] {f90bc782-c0f5-4ef0-918f-31cdf8007526} <Debug> executeQuery: Query pipeline: clickhouse-0-0 | DDLQueryStatusInputStream clickhouse-0-0 | clickhouse-0-0 | 2022.06.10 12:17:52.255504 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Processing task query-0000000058 (ALTER TABLE db.site_state_sum_by_hour ON CLUSTER default ADD COLUMN `decontaminating` UInt64 ) clickhouse-0-0 | 2022.06.10 12:17:52.258491 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Executing query: ALTER TABLE db.site_state_sum_by_hour ADD COLUMN `decontaminating` UInt64 clickhouse-0-0 | 2022.06.10 12:17:52.296857 [ 55 ] {} <Debug> db.site_state_sum_by_hour (ReplicatedMergeTreeQueue): Pulling 1 entries to queue: log-0000000001 - log-0000000001 clickhouse-0-0 | 2022.06.10 12:17:52.300565 [ 55 ] {} <Debug> db.site_state_sum_by_hour (ReplicatedMergeTreeQueue): Pulled 1 entries to queue. clickhouse-0-0 | 2022.06.10 12:17:52.304074 [ 94 ] {} <Information> db.site_state_sum_by_hour: Metadata changed in ZooKeeper. Applying changes locally. clickhouse-0-0 | 2022.06.10 12:17:52.307642 [ 94 ] {} <Information> db.site_state_sum_by_hour: Applied changes to the metadata of the table. Current metadata version: 2 clickhouse-0-0 | 2022.06.10 12:17:53.024009 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Task query-0000000058 has already been executed by leader replica (clickhouse%2D0%2D1:9000) of the same shard. clickhouse-0-0 | 2022.06.10 12:17:53.027875 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Waiting a watch clickhouse-0-0 | 2022.06.10 12:17:53.153106 [ 66 ] {f90bc782-c0f5-4ef0-918f-31cdf8007526} <Information> executeQuery: Read 2 rows, 116.00 B in 0.916 sec., 2 rows/sec., 126.63 B/sec. clickhouse-0-0 | 2022.06.10 12:17:53.154185 [ 66 ] {f90bc782-c0f5-4ef0-918f-31cdf8007526} <Debug> MemoryTracker: Peak memory usage (for query): 53.27 KiB. clickhouse-0-0 | 2022.06.10 12:17:53.154832 [ 66 ] {} <Debug> MemoryTracker: Peak memory usage (for query): 53.27 KiB. clickhouse-0-0 | 2022.06.10 12:17:53.154960 [ 66 ] {} <Information> TCPHandler: Processed in 0.919 sec. clickhouse-0-0 | 2022.06.10 12:17:53.158337 [ 66 ] {} <Information> TCPHandler: Done processing connection. clickhouse-0-0 | 2022.06.10 12:17:53.162922 [ 67 ] {} <Debug> TCPHandler: Connected Golang SQLDriver version 1.1.0, revision: 54213, database: db, user: default. clickhouse-0-0 | 2022.06.10 12:17:53.165778 [ 67 ] {9207c04f-6eca-4f01-b886-930e728f1ea6} <Debug> executeQuery: (from 172.23.0.1:58638) ALTER TABLE db.dis_site_state_sum_by_hour on cluster default ADD COLUMN decontaminating UInt64 clickhouse-0-0 | 2022.06.10 12:17:53.179244 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Processing tasks clickhouse-0-0 | 2022.06.10 12:17:53.183481 [ 67 ] {9207c04f-6eca-4f01-b886-930e728f1ea6} <Debug> executeQuery: Query pipeline: clickhouse-0-0 | DDLQueryStatusInputStream clickhouse-0-0 | clickhouse-0-0 | 2022.06.10 12:17:53.184920 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Processing task query-0000000059 (ALTER TABLE db.dis_site_state_sum_by_hour ON CLUSTER default ADD COLUMN `decontaminating` UInt64 ) clickhouse-0-0 | 2022.06.10 12:17:53.186911 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Executing query: ALTER TABLE db.dis_site_state_sum_by_hour ADD COLUMN `decontaminating` UInt64 clickhouse-0-0 | 2022.06.10 12:17:53.187041 [ 53 ] {8a6967d7-ef7f-4194-bacf-34cd4addfef1} <Debug> executeQuery: (from 0.0.0.0:0, user: ) /* ddl_entry=query-0000000059 */ ALTER TABLE db.dis_site_state_sum_by_hour ADD COLUMN `decontaminating` UInt64

Alexey- Автор вопроса
Slach [altinity]
это не ускорить через "один инстанс" что конкретно...

clickhouse-0-0 | 2022.06.10 12:17:53.190273 [ 53 ] {8a6967d7-ef7f-4194-bacf-34cd4addfef1} <Debug> DDLWorker: Executed query: ALTER TABLE db.dis_site_state_sum_by_hour ADD COLUMN `decontaminating` UInt64 clickhouse-0-0 | 2022.06.10 12:17:53.193780 [ 53 ] {8a6967d7-ef7f-4194-bacf-34cd4addfef1} <Debug> DDLWorker: Waiting a watch clickhouse-0-0 | 2022.06.10 12:17:53.296803 [ 67 ] {9207c04f-6eca-4f01-b886-930e728f1ea6} <Information> executeQuery: Read 2 rows, 116.00 B in 0.131 sec., 15 rows/sec., 888.05 B/sec. clickhouse-0-0 | 2022.06.10 12:17:53.297774 [ 67 ] {9207c04f-6eca-4f01-b886-930e728f1ea6} <Debug> MemoryTracker: Peak memory usage (for query): 26.55 KiB. clickhouse-0-0 | 2022.06.10 12:17:53.298826 [ 67 ] {} <Debug> MemoryTracker: Peak memory usage (for query): 26.55 KiB. clickhouse-0-0 | 2022.06.10 12:17:53.298935 [ 67 ] {} <Information> TCPHandler: Processed in 0.133 sec. clickhouse-0-0 | 2022.06.10 12:17:53.300495 [ 67 ] {} <Information> TCPHandler: Done processing connection. clickhouse-0-0 | 2022.06.10 12:17:53.303949 [ 66 ] {} <Debug> TCPHandler: Connected Golang SQLDriver version 1.1.0, revision: 54213, database: db, user: default. я пытался проанализировать что именно идет долго, но вот лог добвления поля в таблицу. я не понимаю что уходит целая секунда.

Alexey
--------------------------------------------------...

это ON CLUSTER и DDL Worker секунда уходит скорее всего на общение с zookeeper clickhouse-0-0 | 2022.06.10 12:17:53.024009 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Task query-0000000058 has already been executed by leader replica (clickhouse%2D0%2D1:9000) of the same shard. clickhouse-0-0 | 2022.06.10 12:17:53.027875 [ 53 ] {30396df0-c5e7-4787-a2db-8394f703ce60} <Debug> DDLWorker: Waiting a watch попробуйте миграции только на одном контейнере запускать

Alexey- Автор вопроса
Slach [altinity]
это ON CLUSTER и DDL Worker секунда уходит скорее...

в один контейнер положить два инстанса кликхауса и зукипер?

Alexey
в один контейнер положить два инстанса кликхауса и...

зачем? нет, ALTER TABLE только в одном контейнере запускайте а не на всех

Alexey- Автор вопроса
Slach [altinity]
зачем? нет, ALTER TABLE только в одном контейнере...

попробовал, логично, что при запуске без on cluster запрос отработал за 0.006sec против 0.015sec c on cluster. Но все равно 0.015 это не секунда. Как я понимаю, я упираюсь в зукипер и надо копать в сторону его производительности?

Alexey
попробовал, логично, что при запуске без on cluste...

я что-то не понял когда 1 секунда превратилась в 0.015 для ON CLUSTER? там же по логам у вас 0.7 секунды вообще.... ну можно и в zookeeper RAM диск пробросить попробовать. но не уверен что сильно ускорит кстати если соберете docker-compose такой с ramdisk то опубликуйте если не трудно? сделаете доброе дело

Alexey- Автор вопроса
Slach [altinity]
я что-то не понял когда 1 секунда превратилась в 0...

по логам у меня было начало в 2022.06.10 12:17:52.249863, окончание - 2022.06.10 12:17:53.298826. то есть примерно секунда. если все таки соберу, то буду иметь в виду и выложу. но пока я все руками делал, тем более на макоси, которая не поддерживает tmpfs. а публиковать куда?)

Alexey
по логам у меня было начало в 2022.06.10 12:17:52....

gist.github.com достаточно =) и тут ссылку разместить...

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

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

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