@rst630

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

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

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

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

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

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

Войти через центр авторизации
Похожие вопросы
NEOLAB Омск
от 100 000 до 150 000 ₽
deeplay Новосибирск
от 120 000 ₽
ЧИТАЙ-ГОРОД Москва
от 120 000 до 160 000 ₽
19 янв. 2021, в 19:21
20000 руб./за проект
19 янв. 2021, в 19:18
160000 руб./за проект
19 янв. 2021, в 18:59
40000 руб./за проект