В обычном топике Kafka чтение всеми группами само по себе не удаляет сообщение. Его хранение определяется политикой retention или compaction, независимо от offsets потребителей.
Что происходит с сообщением в Kafka после того, как его прочитали все активные consumer-группы?
В обычном топике Kafka чтение всеми группами само по себе не удаляет сообщение. Его хранение определяется политикой retention или compaction, независимо от offsets потребителей.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В обычном топике Kafka чтение всеми группами само по себе не удаляет сообщение. Его хранение определяется политикой retention или compaction, независимо от offsets потребителей.
При временном или размерном retention старые сегменты могут удаляться даже если отстающая группа ещё не дочитала их. Compaction сохраняет актуальные значения ключей по своим правилам, а не просто удаляет всё прочитанное. Новая группа может перечитать данные, пока они доступны в журнале. Поэтому горизонт хранения выбирают с учётом максимально допустимого лага и восстановления, а не рассчитывают на вечное ожидание самого медленного потребителя.