@rst630

Как добавлять в clickhouse только уникальные primary key?

Делаю выгрузку из mysql в clickhouse при повторной выгрузке хочу что бы вставлялись только строки с уникальными PK, (как insert ignore) но кликхаус похоже так не умеет.

Правильно ли я понимаю что для реализации этого мне нужно перед вставкой проверять наличие PK (where id in(1,2,3...)) и самому отфильтровывать не уникальные данные? Или все же есть у кликхауса другой метод?
  • Вопрос задан
  • 33 просмотра
Пригласить эксперта
Ответы на вопрос 1
WinPooh32
@WinPooh32
Stack Overflow answer searching expert
Если используется MergeTree в качестве движка таблицы, то устранить дубликаты можно удалением через ALTER (блокирует весь кластер), либо только фильтрация во время запроса.

Для симуляции мутабельности есть VersionedCollapsingMergeTree, но тут также есть нюансы - дубликаты удаляются не сразу и все равно требуется фильтрация во время запроса.

Просто для удаления дубликатов можно использовать CollapsingMergeTree, но выбор строки недетрменирован и тоже нужна фильтрация, т.к. удаление происходит асинхронно в фоновом режиме.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
ЧИТАЙ-ГОРОД Москва
от 120 000 до 160 000 ₽
HighTeam Москва
от 200 000 до 250 000 ₽
Чемпион Рязань
от 160 000 ₽
01 дек. 2020, в 23:18
80000 руб./за проект
01 дек. 2020, в 22:41
60000 руб./за проект
01 дек. 2020, в 21:24
500 руб./за проект