Topic — именованный поток сообщений Kafka, partition — упорядоченная часть этого потока, offset — позиция записи внутри конкретной партиции. Глобального offset у всего topic нет.
Что такое topic, partition и offset в Kafka?
Topic — именованный поток сообщений Kafka, partition — упорядоченная часть этого потока, offset — позиция записи внутри конкретной партиции. Глобального offset у всего topic нет.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Topic — именованный поток сообщений Kafka, partition — упорядоченная часть этого потока, offset — позиция записи внутри конкретной партиции. Глобального offset у всего topic нет.
Продюсер выбирает партицию, часто по ключу, чтобы связанные события попадали в один порядок. Масштабирование чтения достигается распределением партиций между участниками consumer group.
Порядок гарантируется в пределах партиции, а не между всеми сообщениями topic. Committed offset показывает позицию возобновления группы и обычно указывает на следующую запись для чтения. Фиксация до обработки может потерять работу, после обработки допускает повтор, поэтому важна идемпотентность потребителя.