Size: a a a

ClickHouse не тормозит

2020 September 09

PL

Pavel Larkin in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
а, я понял, словари вообще не завелись.

из-за разных конфигов в 20 и 19

вам надо словари из основной папки конфигов передвинуть куда угодно, например в папку dict и в конфиг указать что словари в dict
<dictionaries_config>dict/*.xml</dictionaries_config>
Попробовал, но ошибка не ушла
Мог ли измениться сам формат описания словарей?
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Pavel Larkin
Попробовал, но ошибка не ушла
Мог ли измениться сам формат описания словарей?
увидеть бы лог, да конфиги, все стало бы очевидно
временно смувайте .sql куда-нибудь чтобы КХ запустился и можно было увидеть есть словари или нет.
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Buddy Glass
Добрый день, уважаемое сообщество!

Ребята, пожалуйста помогите разобраться с проблемой.
Дано: Есть несколько больших таблиц ReplicatedMergeTree, в которые с помощью МВ переливаются данные из таблиц с Kafka движком.
и есть ещё одна таблица - t4 c движком MergeTree. В t4 начинаем перекачивать данные через jdbc коннектор батчами по 100 000 строк. Через некоторое время в логах КХ появляются сообщения вида:
<Error> DynamicQueryHandler: Code: 241, e.displayText() = DB::Exception: Memory limit (total) exceeded: would use 27.61 GiB (attempt to allocate chunk of 4197660 bytes)

После чего почти сразу в лог прилетают сообщения вида:
<Error> void DB::StorageKafka::threadFunc(): Code: 242, e.displayText() = DB::Exception: Table is in readonly mode, Stack trace (when copying this message, always include the lines below)

Опытным путём мы выяснили, что блочится не та таблица, в которую льются данные - t4, а самые большие по объёму таблицы ReplicatedMergeTree, в которые данные довольно не спешно переливаются из таблиц с Kafka движком.

Разблокировать таблицы получается только перезагрузкой clickhouse.

Почему таблицы переходят в readonly mode? И что можно сделать, чтобы этого избежать?
вы бы хоть версию КХ сказали. Скорее всего это давно решенная проблема с аккаунтигом использованной памяти
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Владимир Голубев
Я "обожаю" когда мне прилетают уведомления от замьюченных каналов, ещё и никак не связанные с тематикой канала.
могу удалить вас из чата, недорого
источник

ВГ

Владимир Голубев... in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
могу удалить вас из чата, недорого
Удалиться из чата я и сам могу. Но каждый раз когда возникает нужда - искать его, добавлять а потом опять удаляться - неудобно.
источник

BG

Buddy Glass in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
вы бы хоть версию КХ сказали. Скорее всего это давно решенная проблема с аккаунтигом использованной памяти
Да, извините, действительно надо  было с версии начинать
ClickHouse server version 20.4.4 revision 54434
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Екатерина
правильно ли я понимаю:
Layer - id группы машин? Есть ли ограничение на глубину вложенности?

То есть layer в макросе, по сути, просто некий номер, по которому таблица репликации определяет все машины,
по которым она должны реплицировать свои данные.
Получается, если хотелось бы иметь какую-то таблицу, которую следует реплицировать по всем кластерам, их шардам,
их репликам, то это получилось бы трехуровневое шардирование, типо того:
<macros>
   <layer>1</layer>
   <layer>2</layer>
   <shard>1</shard>
   <replica>1</replica>
</macros>

ENGINE = ReplicatedMergeTree('/clickhouse/tables/{layer}_{layer}_{shard}/DB1.Tab1', '{replica}')

но трехуровневое не предусмотрено или это сработает? или сработает, елси захардкодить слой:

ENGINE = ReplicatedMergeTree('/clickhouse/tables/1-2-{shard}/DB1.Tab1', '{replica}')
layer нужен яндексу, потому что там большой кластер 400+ машин , вам это не нужно, забудьте.

Если вы хотите разреплицировать таблицу на все ноды в вашем кластере, то просто опустите {shard} в zk пути таблицы при создании таблицы
источник

Е

Екатерина in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
layer нужен яндексу, потому что там большой кластер 400+ машин , вам это не нужно, забудьте.

Если вы хотите разреплицировать таблицу на все ноды в вашем кластере, то просто опустите {shard} в zk пути таблицы при создании таблицы
спасибо
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Владимир Голубев
Удалиться из чата я и сам могу. Но каждый раз когда возникает нужда - искать его, добавлять а потом опять удаляться - неудобно.
ну прекратите ныть тогда, у меня 20 других чатов также пищят когда пинят что-нибудь. Поищите тут в чате, есть решения как замьютить в клиенте.
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Евгений Гаврилов
Добрый день. Подскажите как можно без downtime или с минимальным downtime переместить данные с одного диска на другой
rsync diff несколько раз, останавливаете КХ, снова rsync -- финальный, меняете конфиг (или перемонтируете /var/lib/clickhouse)
запускаете
источник

ВГ

Владимир Голубев... in ClickHouse не тормозит
А у меня в двадцати других чатах не пинят то, что никому не нужно. И да, решение есть, я этот вопрос в прошлый раз и поднимал - но только для telegramX. В декстопном\веб - нет варианта, кроме как вырубать все уведомления вообще.
источник

DT

Dmitry Titov in ClickHouse не тормозит
Владимир Голубев
А у меня в двадцати других чатах не пинят то, что никому не нужно. И да, решение есть, я этот вопрос в прошлый раз и поднимал - но только для telegramX. В декстопном\веб - нет варианта, кроме как вырубать все уведомления вообще.
можно отключить нотификацию на пины для всех
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Buddy Glass
Да, извините, действительно надо  было с версии начинать
ClickHouse server version 20.4.4 revision 54434
источник

BG

Buddy Glass in ClickHouse не тормозит
Спасибо!!! Сейчас же попробую обновиться
источник

AS

Alexander Selivanov in ClickHouse не тормозит
привет, скажите плз, как проще всего перегнать данные из пг в кх? там 150 млн записей и таблицы не одинаковые, в КХ суперширокие, собранные из нескольких таблиц в пг
источник

DK

Danil Kuznetsov in ClickHouse не тормозит
pg_dump и заливка через clickhouse-client?
источник

AS

Alexander Selivanov in ClickHouse не тормозит
сейчас я делаю запрос в пг, получаю csv и его импортирую черещ clickhouse-client да. но блин запрос идет по 30 минут в пг)
источник

AS

Alexander Selivanov in ClickHouse не тормозит
и это для 5 млн записей только
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Alexander Selivanov
сейчас я делаю запрос в пг, получаю csv и его импортирую черещ clickhouse-client да. но блин запрос идет по 30 минут в пг)
а сколько записей в таблицах которые приджойнить справа надо ? КХ джойнит и делает это очень быстро (для HashJoin), но правая таблица должна помещаться в память
источник

AS

Alexander Selivanov in ClickHouse не тормозит
мы сделали так что в КХ у нас нет джойнов для запросов вообще, всю необходимую инфу мы вытаскиваем еще на уровне ПГ.
источник