@clickhouse_ru

Страница 684 из 723
Stanislav
02.10.2018
09:02:13
зато описаны в исходниках

terry
02.10.2018
09:02:36
зато описаны в исходниках
большое спасибо за помощь

лошара я крч ;)

Google
Stanislav
02.10.2018
09:03:33
это нормально, все начинали...

Evgeny
02.10.2018
09:03:35
Привет! KX на Red Hat, норм? Или лучше не пробовать?
У нас 2 кластера по 15 узлов на CentOS. Нареканий нет

Wolf
02.10.2018
09:04:15
Привет! KX на Red Hat, норм? Или лучше не пробовать?
он мне кажется на любой оси будет ок , у него какой то привязки особой к осям нет

Wolf
02.10.2018
09:05:36
ну у меня убунту там нет селинукс и все работает так что и к селинуксу нет привязки

Konstantin
02.10.2018
09:05:46
подскажите, можно ли как то добиться такого результата ? (последовательность interval_num нужна для каждого id своя по аналогии PARTITION BY) : date, id, interval_num, status, time_min, time_max "2018-10-02", 2, 1, 0,"2018-10-02 00:00:02", "2018-10-02 00:07:01" "2018-10-02", 2, 2, 1,"2018-10-02 00:09:01", "2018-10-02 00:13:02" "2018-10-02", 2, 3, 3,"2018-10-02 00:15:01", "2018-10-02 00:17:01" "2018-10-02", 2, 4, 0,"2018-10-02 00:18:02", "2018-10-02 00:20:01" "2018-10-02", 2, 5, 1,"2018-10-02 00:21:01", "2018-10-02 00:22:01" из таких входных данных: "date","id","status","timestamp" "2018-10-02",2,0,"2018-10-02 00:00:02" "2018-10-02",2,0,"2018-10-02 00:01:01" "2018-10-02",2,0,"2018-10-02 00:02:01" "2018-10-02",2,0,"2018-10-02 00:03:02" "2018-10-02",2,0,"2018-10-02 00:04:01" "2018-10-02",2,0,"2018-10-02 00:05:02" "2018-10-02",2,0,"2018-10-02 00:06:01" "2018-10-02",2,0,"2018-10-02 00:07:01" "2018-10-02",2,1,"2018-10-02 00:09:01" "2018-10-02",2,1,"2018-10-02 00:10:02" "2018-10-02",2,1,"2018-10-02 00:11:01" "2018-10-02",2,1,"2018-10-02 00:12:01" "2018-10-02",2,1,"2018-10-02 00:13:02" "2018-10-02",2,3,"2018-10-02 00:15:01" "2018-10-02",2,3,"2018-10-02 00:16:02" "2018-10-02",2,3,"2018-10-02 00:17:01" "2018-10-02",2,0,"2018-10-02 00:18:02" "2018-10-02",2,0,"2018-10-02 00:19:01" "2018-10-02",2,0,"2018-10-02 00:20:01" "2018-10-02",2,1,"2018-10-02 00:21:01" "2018-10-02",2,1,"2018-10-02 00:22:01"

Mike
02.10.2018
09:06:38
У нас 2 кластера по 15 узлов на CentOS. Нареканий нет
+1, также на центосе. Раньше держали пол-кластера на центос7, пол-кластера на центос-6 и тоже без проблем

Alexey
02.10.2018
09:07:30
У нас лимита и так нет :)
Там issue открытое есть на проблему

Mike
02.10.2018
09:08:34
Да, я читал, только у нас расчеты встали, быстрый фикс нужен, думаем откатиться пока

Dmitry
02.10.2018
09:32:37
у нас зукипер упал с OutOfMemory, после того как его подняли появилась такая ошибка. Можно руками создать ноду в зукипере?
Ни у кого не было таких ошибок в зукипере? Не могу понять причину Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "SyncThread:0" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "NIOServerCxn.Factory:0.0.0.0/0.0.0.0:32181" Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "SessionTracker"

Dmitry
02.10.2018
09:35:25
в качестве эксперимента выставили heap в 4Gb, не помогло(

Google
Artyom
02.10.2018
09:36:01
в качестве эксперимента выставили heap в 4Gb, не помогло(
смотрите дамп,может у вас permgen/metaspace переполнены

ну и настройки гц

Wolf
02.10.2018
09:37:04
Dmitry
02.10.2018
09:38:20
сейчас проверим

Alexey
02.10.2018
10:08:50
Откуда у вас столько данных в зукипере? Ощущение что вы часть реплик выключили и не очистили ЗК от них и копится инфа для реплик в ЗК и из за этого переполнение памяти
У меня такая же проблема, зукипер сильно раздулся. Я действительно выключил несколько серверов, не удалив там таблицы. Зукипер надо вручную чистить в такой ситуации?

Wolf
02.10.2018
10:13:56
Ну либо включить и удалить, либо вручную

Ilia
02.10.2018
10:17:15
Всем привет У нас с @k0st1an сейчас есть следующая ситуация Есть кластер с таблицей в которой 100 млрд. событий и каждый месяц приходит еще 30 млрд. Ранее разбиение на партции происходило только на основе месяца Сейчас возможно задать кастомный ключ партиционирования ( https://clickhouse.yandex/docs/ru/operations/table_engines/custom_partitioning_key/ ) Большая часть запросов у нас на 1-2 дня и 90% запросов попадает в рамки недели Я не очень разбираюсь в деталях организации партиционирования в КХ, поэтому вопросы к сообществу: 1. Влияет ли изменение ключа партиционирования положительно в нашем случае на производительность (потому что сейчас заметна разница при выборке на 20 дней из месяца и всего месяца в сторону кратного прироста производительности на размерах всей месячной партиции) 2. Как выглядит сам переход изменения ключа партиционирования для старых данных? (т.е. неужно ли создавать таблицу новую рядом и туда все перегонять запросом или можно оставить старые партиции с ключом в месяц) 3. Есть ли какая-либо ощутимая деградация производительности//проблемы в случае мелкого партиционирования (к примеру мы выбрали ключ партициогнирования в 1 день и делаем выборку по 90 дням) Спасибо большое!

Alex
02.10.2018
10:22:18
Всем привет У нас с @k0st1an сейчас есть следующая ситуация Есть кластер с таблицей в которой 100 млрд. событий и каждый месяц приходит еще 30 млрд. Ранее разбиение на партции происходило только на основе месяца Сейчас возможно задать кастомный ключ партиционирования ( https://clickhouse.yandex/docs/ru/operations/table_engines/custom_partitioning_key/ ) Большая часть запросов у нас на 1-2 дня и 90% запросов попадает в рамки недели Я не очень разбираюсь в деталях организации партиционирования в КХ, поэтому вопросы к сообществу: 1. Влияет ли изменение ключа партиционирования положительно в нашем случае на производительность (потому что сейчас заметна разница при выборке на 20 дней из месяца и всего месяца в сторону кратного прироста производительности на размерах всей месячной партиции) 2. Как выглядит сам переход изменения ключа партиционирования для старых данных? (т.е. неужно ли создавать таблицу новую рядом и туда все перегонять запросом или можно оставить старые партиции с ключом в месяц) 3. Есть ли какая-либо ощутимая деградация производительности//проблемы в случае мелкого партиционирования (к примеру мы выбрали ключ партициогнирования в 1 день и делаем выборку по 90 дням) Спасибо большое!
Мы как раз сейчас переводим похожую схему хранения - с месяца на дни. 1. Перевод чтения. Создаём таблицу с такой же структурой, но с партицированием по дням. Называем её table_new (старая - называется table_old, например). Считаем, что чтение из Distributed(cluster, schema, table_old), это меняем на Distributed(cluster, schema, table_merge), где table_merge имеет ENGINE Merge(schema, 'table_*')

Там, где пишем в таблицу, меняем просто имя таблицы, куда идёт инсерт

таким образом можно будет не переливать данные

Wolf
02.10.2018
10:23:59
Всем привет У нас с @k0st1an сейчас есть следующая ситуация Есть кластер с таблицей в которой 100 млрд. событий и каждый месяц приходит еще 30 млрд. Ранее разбиение на партции происходило только на основе месяца Сейчас возможно задать кастомный ключ партиционирования ( https://clickhouse.yandex/docs/ru/operations/table_engines/custom_partitioning_key/ ) Большая часть запросов у нас на 1-2 дня и 90% запросов попадает в рамки недели Я не очень разбираюсь в деталях организации партиционирования в КХ, поэтому вопросы к сообществу: 1. Влияет ли изменение ключа партиционирования положительно в нашем случае на производительность (потому что сейчас заметна разница при выборке на 20 дней из месяца и всего месяца в сторону кратного прироста производительности на размерах всей месячной партиции) 2. Как выглядит сам переход изменения ключа партиционирования для старых данных? (т.е. неужно ли создавать таблицу новую рядом и туда все перегонять запросом или можно оставить старые партиции с ключом в месяц) 3. Есть ли какая-либо ощутимая деградация производительности//проблемы в случае мелкого партиционирования (к примеру мы выбрали ключ партициогнирования в 1 день и делаем выборку по 90 дням) Спасибо большое!
а в чем смысл переезда ?

Alex
02.10.2018
10:24:23
а в чем смысл переезда ?
Retention по дням, например :)

Alexey
02.10.2018
10:26:12
Ну либо включить и удалить, либо вручную
спасибо! удалил вручную директории реплик в ЗК, кликхаус понял и почистил логи, круто ?

Ilia
02.10.2018
10:26:19
у нас большая часть запросов на 1-2 дня, а партиция на месяц мне моя логика подсказывает, что в случае партиции на 1 день запрос будет быстрее и меньше нагружать систему если что у нас ключ определен по дню тоже: ENGINE = ReplicatedMergeTree('/clickhouse/tables/{cluster}/{shard}/event', '{replica}', day, (type, group_id), 8192)

Wolf
02.10.2018
10:27:01
а сейчас он медленный ?

Ilia
02.10.2018
10:28:10
а сейчас он медленный ?
это вопрос экономической эффективности если мы ничего не теряем при переезде на меньший ключ партиционирования, но при этом получаем выигрыш, то для нас это будет корректный выбор

Eugene
02.10.2018
10:28:45
Всем привет! Может быть тут уже обсуждали... Есть таблица с движком kafka, есть materalized view, который из нее вычитывает. Обнаруживаю, что во вьюхе встречаются дубликаты. Причем, если вычитать из топика кафки консольным клиентом - там дубликатов нет. Похоже, что кликхаус вычитывает по несколько раз. С чем может быть связано?

Wolf
02.10.2018
10:28:49
ну проверьте просто на пару запросов в тестовой табличке есть ли вообще выигрыщ

Ilia
02.10.2018
10:29:45
вопрос в том, что логика подскзавает, что должен быть выигрыш но, возможно, кто-то в сообществе уже делал подобную работу, поэтому в первую очередь имеет смысл уточнять, чем гонять 10-ки млрд записей

Wolf
02.10.2018
10:31:49
теоретически все будет хуже пожато , а так наверно зависит от данных и запросов

Google
Kirill
02.10.2018
10:32:16
вопрос в том, что логика подскзавает, что должен быть выигрыш но, возможно, кто-то в сообществе уже делал подобную работу, поэтому в первую очередь имеет смысл уточнять, чем гонять 10-ки млрд записей
Логика говорит одно, но попробовать стоит.Еще КХ сжимает/индексирует данные в рамках куска, с меньшими по времени партициями их будет сильно больше, а тут и файликов открыть нужно по более и все такое ;)

Michael
02.10.2018
10:39:28
Добрый день. Подскажите, пожалуйста, что не так с синтаксисом? CREATE TABLE IF NOT EXISTS `dictionary` ( date Date, version UInt64, key String, value UInt32 ) ENGINE = ReplicatedReplacingMergeTree('/clickhouse/tables/{shard}/dictionary', '{replica}') PARTITION BY toYYYYMM(date) ORDER BY (key) SAMPLE BY key SETTINGS ver=version; Выдаёт ошибку ver=version; Expected one of: number, NULL, literal, string literal

Eugene
02.10.2018
10:40:11
vesion же написано)

Michael
02.10.2018
10:40:57
Очепятка, пока сюда копировал, дело не в ней)

Mikhail
02.10.2018
10:50:54
Привет. столкнулся с потерей небольшой доли данных в материализованных вьюшках. Общая конфигурация - запись в Distributed-таблицу, таблица разбита на 4 шарда по две реплики. К основной таблице цепляется 4 вьюшки. Запись в исходную таблицу - 10-15 запросов в минуту, в Distributed-таблицу произвольного сервера. Сверяю данные - получается, что некоторые куски во вьюшках пропадают. Разные в каждой вьюшке и каждом шарде. Увидел в changelog, что это может быть при таймауте ZK - проапдейтил сервера на актуальную версию. Кажется, что проблем стало меньше - но все равно остались. Вот сегодня увидел один такой потерянный блок. @ztlpn кому можно такое направить?

Vsevolod
02.10.2018
11:18:37
хм: Include not found: /etc/clickhouse-server/dist-table.xml -rw-r----- 1 clickhouse clickhouse 664 окт 1 15:55 /etc/clickhouse-server/dist-table.xml

Michal
02.10.2018
11:26:41
вопрос в том, что логика подскзавает, что должен быть выигрыш но, возможно, кто-то в сообществе уже делал подобную работу, поэтому в первую очередь имеет смысл уточнять, чем гонять 10-ки млрд записей
Более компактные (например дневные) партиции на самом деле удобнее (если данных много). Проще всякие операции производить. Значительно меньше данных нужно читать если указываешь "дневной" диапазон данных. Больше шансов что нужные данные не будут вытеснены из кэша. Замеченные минусы: ощутимо дольше стартует / рестартует сервер (первый раз после 5 минут ожидания думал что - всё, я окончательно убил КХ, но ничего, встал). Чуть хуже жмет данные, но не критично. При запросах на широкий диапазон дат есть (незначительная) деградация производительности.

Ну и плюс такой что дневными партициями данными можно довольно легко "жонглировать" (намного проще чем месячными). Например очистить колонку, удалять по дням, "перезалить" целый день, можно даже "перезалить" колонку с помощью DEFAULT выражения (CLEAR COLUMN / OPTIMIZE).

Konstantin
02.10.2018
11:45:00
Michal
02.10.2018
11:50:19
Спасибо за подробности. Есть опыт миграции с месяца на меньшее время? Есть какие-то подводные камни, на что обратить внимание.. будет полезно
Да никаких подводных камней, только если данных много то ждать долго пока скопируются, и место на диске нужно прилично :) Ну разве что: при больших INSERT ... SELECT иногда лучше "подкручивать" размеры блоков.

Ilia
02.10.2018
11:50:44
@mfilimonov, спасибо!

Mikhail
02.10.2018
12:13:14
Привет. столкнулся с потерей небольшой доли данных в материализованных вьюшках. Общая конфигурация - запись в Distributed-таблицу, таблица разбита на 4 шарда по две реплики. К основной таблице цепляется 4 вьюшки. Запись в исходную таблицу - 10-15 запросов в минуту, в Distributed-таблицу произвольного сервера. Сверяю данные - получается, что некоторые куски во вьюшках пропадают. Разные в каждой вьюшке и каждом шарде. Увидел в changelog, что это может быть при таймауте ZK - проапдейтил сервера на актуальную версию. Кажется, что проблем стало меньше - но все равно остались. Вот сегодня увидел один такой потерянный блок. @ztlpn кому можно такое направить?
Вдогонку - практически каждый час вижу в err-логах записи про проблемы с ZK. Можно ли что-то с этим сделать? Попробовал увеличить время сессии с ZK, пока особых результатов не видно. Пример записей в err-логе: <Error> zkutil::EphemeralNodeHolder::~EphemeralNodeHolder(): Code: 999, e.displayText() = ZooKeeperImpl::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace: <Error> zkutil::EphemeralNodeHolder::~EphemeralNodeHolder(): Code: 999, e.displayText() = ZooKeeperImpl::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace: <Warning> SrcViews..inner.ViewName1 (ReplicatedMergeTreeRestartingThread): ZooKeeper session has expired. Switching to a new session. <Error> SrcViews..inner.ViewName1 (StorageReplicatedMergeTree): void DB::StorageReplicatedMergeTree::queueUpdatingTask(): Code: 999, e.displayText() = ZooKeeperImpl::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace: <Error> SrcViews..inner.ViewName2 (StorageReplicatedMergeTree): void DB::StorageReplicatedMergeTree::mutationsUpdatingTask(): Code: 999, e.displayText() = ZooKeeperImp l::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace:

<Error> SrcData.TableName1 (ReplicatedMergeTreeAlterThread): void DB::ReplicatedMergeTreeAlterThread::run(): Code: 999, e.displayText() = ZooKeeperImpl::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace:

Wolf
02.10.2018
12:16:11
обычно это бывает когда мастер в зк теряется , видимо у вас барахлит сам зк из за чего то

Mikhail
02.10.2018
12:22:18
по мониторингу в ZK все ок, кворум есть всегда, сетевых проблем не было.

Alexey
02.10.2018
12:26:02
Вдогонку - практически каждый час вижу в err-логах записи про проблемы с ZK. Можно ли что-то с этим сделать? Попробовал увеличить время сессии с ZK, пока особых результатов не видно. Пример записей в err-логе: <Error> zkutil::EphemeralNodeHolder::~EphemeralNodeHolder(): Code: 999, e.displayText() = ZooKeeperImpl::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace: <Error> zkutil::EphemeralNodeHolder::~EphemeralNodeHolder(): Code: 999, e.displayText() = ZooKeeperImpl::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace: <Warning> SrcViews..inner.ViewName1 (ReplicatedMergeTreeRestartingThread): ZooKeeper session has expired. Switching to a new session. <Error> SrcViews..inner.ViewName1 (StorageReplicatedMergeTree): void DB::StorageReplicatedMergeTree::queueUpdatingTask(): Code: 999, e.displayText() = ZooKeeperImpl::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace: <Error> SrcViews..inner.ViewName2 (StorageReplicatedMergeTree): void DB::StorageReplicatedMergeTree::mutationsUpdatingTask(): Code: 999, e.displayText() = ZooKeeperImp l::Exception: Session expired (Session expired), e.what() = ZooKeeperImpl::Exception, Stack trace:
Такая же хрень была, когда zk жили вместе с кх на одних серваках. Большая нагрузка на диски и сеть, зукиперам было плохо (из мониторинга что помню - высокий latency был). Как отселили на виртуалки, проблем нет.

Mikhail
02.10.2018
12:26:54
нет, zk на отдельных, вообще не загруженных машинках. Правда, в другом ДЦ - но на других сервисах проблем с коннектом не наблюдается.

Такая же хрень была, когда zk жили вместе с кх на одних серваках. Большая нагрузка на диски и сеть, зукиперам было плохо (из мониторинга что помню - высокий latency был). Как отселили на виртуалки, проблем нет.
интересно, а почему ошибка? Вот в тех же логах вижу примерно ожидаемое: <Warning> SrcViews..inner.TTViewDailyAdv (ReplicatedMergeTreeRestartingThread): ZooKeeper session has expired. Switching to a new session.

Google
Wolf
02.10.2018
12:34:34
почекайте логи зукипера , судя по всему они теряют друг друга

Mikhail
02.10.2018
12:35:34
посмотрю.

Alexey
02.10.2018
12:36:54
latency и Outstanding Requests тоже в норме?

Mikhail
02.10.2018
12:39:51
latency и Outstanding Requests тоже в норме?
outstanding requests есть единичные.

Гурам
02.10.2018
12:45:18
Добрый день. Тестирую запросы ALTER ... DELETE и возникает какое-то непонятное поведение БД. Может кто сталкивался. Есть две отдельные реплецируемые таблицы (пусть будет Т1 и Т2 - каждая реплецируется отдельно), к обеем был был выполнен запрос ALTER ... DELETE WHERE ... ON CLUSTER ... оба запроса прошли без ошибок в system.mutations стоит is_done. Через некоторое время выполнен запрос вставки (вставка велась через distributed таблицу) с полями, которые попадают под "WHERE" в предыдущем ALTER DELETE, таблицы остались пустые. После выполнения TRUNCATE TABLE в таблицу Т1 данные записались (но опять же до первого удаления) а для таблицы Т2 TRUNCATE не сработал: Code: 48. DB::Exception: Received from localhost:9000, 127.0.0.1. DB::Exception: Can't proxy this query. Unsupported query type. Удаление этой таблицы и повторное ее созданиее не исправляет данной ошибки, но если повторно создать таблицу с, допустим, еще одним полем, то TRUNCATE отрабатывает без ошибок.

Denis
02.10.2018
12:51:35
Добрый день. Тестирую запросы ALTER ... DELETE и возникает какое-то непонятное поведение БД. Может кто сталкивался. Есть две отдельные реплецируемые таблицы (пусть будет Т1 и Т2 - каждая реплецируется отдельно), к обеем был был выполнен запрос ALTER ... DELETE WHERE ... ON CLUSTER ... оба запроса прошли без ошибок в system.mutations стоит is_done. Через некоторое время выполнен запрос вставки (вставка велась через distributed таблицу) с полями, которые попадают под "WHERE" в предыдущем ALTER DELETE, таблицы остались пустые. После выполнения TRUNCATE TABLE в таблицу Т1 данные записались (но опять же до первого удаления) а для таблицы Т2 TRUNCATE не сработал: Code: 48. DB::Exception: Received from localhost:9000, 127.0.0.1. DB::Exception: Can't proxy this query. Unsupported query type. Удаление этой таблицы и повторное ее созданиее не исправляет данной ошибки, но если повторно создать таблицу с, допустим, еще одним полем, то TRUNCATE отрабатывает без ошибок.
дедупликация, если делаете тесты, выключайте ее. trucate видимо баг, я бы завел ишью, если воспроизводится.

Гурам
02.10.2018
12:54:18
Max
02.10.2018
12:54:52
ребята. а подскажите вопрос

есть 3 реплики

но почему то одна равна сумме двух остальных

тоесть на первой все 22 партишена. на второй 2 и на третьей 20

Wolf
02.10.2018
12:57:54
значит репликация видимо работает в одну сторону , смотрите ошибки в логах

Denis
02.10.2018
13:07:40
"replicated_deduplication_window_seconds" - вы этот параметр имеете ввиду?
да, оно по умолчанию M(SettingUInt64, replicated_deduplication_window_seconds, 7 * 24 * 60 * 60) /** one week */ и получается что один и тот же блок нельзя вставить в тестовой среде, где нет других инсертов. (в зукипере складывается 100 (по умолчанию) хешсумм вставленных блоков.

Гурам
02.10.2018
13:12:39
да, оно по умолчанию M(SettingUInt64, replicated_deduplication_window_seconds, 7 * 24 * 60 * 60) /** one week */ и получается что один и тот же блок нельзя вставить в тестовой среде, где нет других инсертов. (в зукипере складывается 100 (по умолчанию) хешсумм вставленных блоков.
Т.е. нужно будет один блок данных удалить (50к-100к строк) а следом вставить с большим/меньшим кол-вом строк, которые попадают под условие удаления, то они не вставятся пока данный параметр (replicated_deduplication_window_seconds) не будет установлен в 0?

Eugene
02.10.2018
13:13:40
кликхаус читает с at least once гарантией
настройками не корректируется? Действительно, дубликаты замечены в моменты нестабильной работы

Google
Kirill
02.10.2018
13:15:30
на уровне кода это не реализовано

смотри, чтобы иметь exactly once, кликхаус должен вместе с данными сохранять offset

и читать не из того что закоммичено в kafka, а смотреть в себя что есть и начинать чтение строго со своего offset

в коде на это даже намека нет ?

у меня собственно такая же проблема. честно говоря не знаю как и данные сохранить и offset в другой таблице прикопать. транзакций то нет.

а операции MAX MIN по колонке эффективно работают?

Denis
02.10.2018
13:27:52
Т.е. нужно будет один блок данных удалить (50к-100к строк) а следом вставить с большим/меньшим кол-вом строк, которые попадают под условие удаления, то они не вставятся пока данный параметр (replicated_deduplication_window_seconds) не будет установлен в 0?
вставляем в таблицу 500 строк, хешсумма от этого блока записывается в зукипер. после этого можно делать что угодно: * ничего * удалить alter delete * дропнуть таблицу и снова создать * транкейтнуть дедупликация не позволить вставить блок с такой же хешсуммой, если между инсертами было меньше ста любых других инсертов и прошло меньше недели.

Denis
02.10.2018
13:32:51
Wolf
02.10.2018
13:36:48
а операции MAX MIN по колонке эффективно работают?
тут проще самому сделать небольшую надстройку и будет работать на наносекунды.

terry
02.10.2018
13:49:47
Connecting to 104.248.44.235:9440 as user USER. Code: 32. DB::Exception: Attempt to read after eof

пичаль беда

Kirill
02.10.2018
13:53:21
в коде на это даже намека нет ?
Это сложно, например если у нас нескольких партиций читают разные сервера

Kirill
02.10.2018
13:59:14
1 партицию читать должен 1 consumer

Kirill
02.10.2018
14:01:33
1 партицию читать должен 1 consumer
Например: 10 партиций, читают с 5 серверов - все ОК. 1 упал - ребалансировка и все поехало если не наворачивать сложную логику в сервере КХ. А так упал и упал

Tatiana
02.10.2018
14:52:10
Спасибо за инфу.
Вообще список блоков для дедупликации хранится тут select * from system.zookeeper where path='<путь к таблице в ZooKeeper>/blocks/' Truncate этот список чистит, и удаление партиции кажется тоже

Страница 684 из 723