Что произойдет с потребительскими смещениями при добавлении нового раздела? Он остается прежним?
Что происходит с потребительскими смещениями, если в тему Kafka добавляются новые разделы?
Ответы (2)
Да, остается прежним.
Смещение сохраняется для каждого раздела отдельно, поэтому смещение вашего нового раздела будет начинаться с 0 и не повлияет на другие смещения.
Предполагая, что вы говорите о потребителях / группах потребителей высокого уровня, смещения потребителей остаются неизменными, поскольку смещения специфичны для разделов. Таким образом, потребитель начнет потреблять из нового раздела в начале или в конце или в момент времени t в зависимости от настроенного начального смещения. Например, если потребитель уже израсходовал до смещения 100000 в разделе 1 и 120000 в разделе 2, при добавлении третьего раздела потребитель обнаружит новый раздел через некоторый период посредством опроса и сбросит только смещение для этого нового раздела.
При изменении набора разделов в теме важно помнить о горячих точках. Если вы добавите в тему новый раздел, исторические сообщения будут по-прежнему распространяться по старым разделам, поэтому, если вы используете базовое циклическое / хэш-разбиение, данные в старых разделах останутся значительно больше, чем данные в новых. разделы до тех пор, пока все разделы не станут достаточно большими для удаления старых сегментов старых разделов.