чуть-чуть подробнее рассписал их (возможно непонятны кейсы о которых спрашиваю были):
1. Правильно понимаю, что он спроектирован в концепции one-way (или fire-and-forget) доставки? Т.е. отправка ответов не предполагается.
Например, есть sink connector который выполняет операцию создания некоторой сущности в системе, а в ответ получает идентификатор созданной сущности и его с тем же значением ключа корреляции (в заголовке сообщения) перекладывает в отдельный топик с результатами, на который будет подписан отправить запроса на создание этой сущности. Тот получит ответ на свой запрос соотнеся значения ключа корреляции в запросе и ответе на него.
2. Как вообще обстоят дела с транзакциями в случае взаимодействия с транзакционными системами (проще на примере реляционной БД)?
Например, есть некий jdbc source, который выбирает данные из таблички, где есть колонка со статусом обработки. Когда коннектор вычитывает конкретные строки он изменяет статус в этой колонке с Ready на In-processing, но зафиксировать jdbc-транзакцию он по идее должен после непосредственного коммита сообщения в Kafka-брокер. Если сообщение не будет закоммичено в Kafka-брокер (например из-за сбоя сервера с Kafka Connect), то jdbc-транзакция будет откачена (например по таймауту).
@gamussa возможно вы сможете подсказать ответы на эти вопросы и/или куда смотреть где это написано
Смотрите чего подвезли https://developer.confluent.io/learn-kafka/kafka-connect/
спасибо посмотрю, но обычно в подобных курсах (те что 101) не углубляются до подобных деталей
Сюда по твоему вопросу у тебя немного непонимание есть что такое connect и как оно работает on high level
да, возможно так и есть. Насколько разобрался, Kafka Connect - это достаточно простая технология предназначенная для копирования данных в Kafka и обратно с простейшими возможностями преобразования данных. Задавал вопросы чтобы подтвердить (или опровергнуть, если ошибаюсь), что семантика request/reply не поддерживаются by design (это в части первого вопроса), а в части второго вопроса реализовать подобное поведение как я описал на Kafka Connect нельзя by desing тоже.
> достаточно примитивная технология Обидно...
Обсуждают сегодня