#apache-kafka #apache-kafka-streams
#apache-kafka #apache-kafka-streams
Вопрос:
Я пишу приложение kafka stream, которое будет выполнять преобразование без состояния по нескольким темам и передавать данные в другую тему. Топология будет 1: 1, т.Е. Несколько пар ввода -> вывода с отображением один к одному для каждой пары.
Если я масштабирую это и у меня будет несколько экземпляров этого приложения, что означает, что для одной и той же пары тем в разных экземплярах будет несколько потребителей и производителей, как потоки kafka будут поддерживать упорядочение данных? (или он не поддерживает порядок?)
Технически мне нужно поддерживать порядок данных, поскольку это события журнала, и мне нужно, чтобы они были правильно упорядочены, а не не по порядку в конечном озере данных.
Комментарии:
1. Сколько разделов имеют темы? Вы не можете гарантировать упорядочение более чем в одном разделе или в нескольких темах
2. Можем ли мы гарантировать упорядочение внутри раздела… несколько производителей и один раздел для каждого производителя. Мне не нужен порядок для всех производителей, но для сообщений от одного производителя при потреблении, преобразовании и повторном создании в потоке kafka должен сохраняться порядок @OneCricketeer
3. Это должно быть хорошо, если вы установите
max.in.flight.requests.per.connection=1