Подскажите, обновился до 20.8, меняю в конфиге logger level на trace, конфиг меняется (в preprocessed все правильно), но по факту в логах нет трейсов, как будто перестало на лету подхватываться
Отличное ТЗ, берете и делаете. Из коробки у Кафки есть мироринг из одного кластера в другой,но на практике работает плохо. Самое простое это написать что нужно самим. Там все ровно как написано выше: читаете, пишите куда вам там надо и все. Между eu и us лучше вычитывать пачку, сжимать и отправлять, вот и все
Есть еще у кафки confluent и они умеют between-continent kafka
Подскажите, обновился до 20.8, меняю в конфиге logger level на trace, конфиг меняется (в preprocessed все правильно), но по факту в логах нет трейсов, как будто перестало на лету подхватываться
Logger давно уже меняется только с перезагрузкой. с 19.16 что-ли
если NULL "almost always negatively affects performance" как правильно хранить пустую дату?
в моем случае дата удаления продукта, но в таблице есть и не удаленные
UPD: а вроде даты nullable по умолчанию, все ок
select * from tmp.datetest where empty_date = '0000-00-00';
Конечно нет. Date не nullable. jdbc показвал дату 0000-00-00 как null, потому что такой даты нет в java. Но в кх тоже убрали дату 0000-00-00. Теперь это 1970-01-01
Конечно нет. Date не nullable. jdbc показвал дату 0000-00-00 как null, потому что такой даты нет в java. Но в кх тоже убрали дату 0000-00-00. Теперь это 1970-01-01
нормально использовать 1970-01-01 как NULL? фильтровать по нему? или отдельную колонку завести есть/нет
Короче говоря, с кафкой я не работал вообще, вероятно это из коробки работает, а я чушь спрашиваю.
из коробки наврятли, мне недавно для похожей задачи попадались несколько решений: https://github.com/klarna/brucke — решение на экзотическом стеке, но в самом дорогом финтехе европы долгое время работает решение от confluent с характерными сложными конфигами в java стиле https://github.com/Lispython/kafka-replicator — решение на rust
Да, примерно так и представляю. Напрямую в заокеанскую очередь писать не планирую.
Никогда ничего подобного не делал на таких расстояниях, посему туплю и присматриваюсь к вариантам.
Например, не очень понимаю, как именно работает та самая cross-region репликация в нужном мне виде. Мне не нужно две копии очередей в US и EU. Мне нужно куда-то записать в US, чтобы оно потом перекинуло с гарантиями в EU и оттуда кликхаус это прочел. Также мне нужно, чтобы из EU я тоже писал в EU (и чтобы это не летело в US), и кликхаус оттуда прочел.
надо немного уточнять про гарантии, но звучит как раз как сценарий сипользования mirror-maker https://kafka.apache.org/documentation/#basic_ops_mirror_maker (т.е. условно он вам подойдет если у вас нет задачи точного попадания заданного сообщения в заданную партицию + нет проблем с переупорядочиванием и дублированием событий, ибо они могут вычитыватся не в том порядке в котором поступали и могут возникать дубли )
из коробки наврятли, мне недавно для похожей задачи попадались несколько решений: https://github.com/klarna/brucke — решение на экзотическом стеке, но в самом дорогом финтехе европы долгое время работает решение от confluent с характерными сложными конфигами в java стиле https://github.com/Lispython/kafka-replicator — решение на rust