ну и Distributed при ошибке повторяет insert до успеха, т.е. до бесконечности, и таким образом я видел как пользователи умудряются наплодить бесконечное кол-во дубликатов. Ну и трата CPU тоже.
вопрос. можно ли заставить таблицу-кафка писать на шард и реплику одинаковые данные из одной партиции кафка? что бы не было как сейчас пишем в шард и реплику а потом данные синзронизируются между двух серверов.
например, из партиции кафка 0 пишем в шарди реплику 0-0 0-1. из партции 1 пишем в 1-0 и 1-1. при таком варианте записи не страшен падение узла, его можно спокойно душить и автоматом заливать из реплики
тогда не будет ситуации потери данных, по причине отставания синхронизации (при аварии). сейчас из парции кафка 0 пишем в 0-0, из партиции 1 пишем в 0-1, из 2 в 1-0 из 3 в 1-1 и все реплицируется фоном
например, из партиции кафка 0 пишем в шарди реплику 0-0 0-1. из партции 1 пишем в 1-0 и 1-1. при таком варианте записи не страшен падение узла, его можно спокойно душить и автоматом заливать из реплики
кафка таблица вообще тут ни при чем. Она пишет в MV, MV кладет видимо в ReplicatedMergeTree у вас. ReplicatedMergeTree пишет в кеш линукса. В ядре Линукс можно подкрутить максимальное время которое грязные страницы хранятся ТОЛЬКО в памяти.