Kafka позволяет на лету увеличивать количество партиций топика, при этом не изменяя общую схему работы или какие-либо настройки консьюмеров.
Apache Kafka – это распределённая и легко масштабируемая система обмена сообщениями с высокой пропускной способностью, которая может в реальном времени обрабатывать любые объемы данных.
- При увеличении количества партиций в топике, все события, которые уже находятся в Kafka, останутся в той же партиции где и были.
- Для продюсеров требуется либо указание указание конкретной партиции для записи, либо указание автоматического распределение партиций, тогда Kafka асиметрично распределит события.
- При этом новые события будут распределятся по новым партициям.
В результате, если потребители не справляются с нагрузкой, мы получим лаг на текущей партиции, что в результате может привести к потере событий, если события не успеют обработаться за время ротации, указанный в параметре log.retention ( Минимальный возраст файла журнала, который может быть удален по причине возраста или объема)