На каждом брокере разделы делятся на сегментные журналы.По умолчанию сегмент будет хранить 1 ГБ данных (log.segment.bytes) данных.Кроме того, новый сегмент журнала развертывается по умолчанию каждые 7 дней (log.roll.hours)
Каждый брокер планирует поток очистки, который отвечает за периодическую проверку того, какие сегменты имеют право на удаление.По умолчанию чистящий поток будет запускать проверку каждые 5 минут (это можно настроить с помощью конфигурации брокера: log.retention.check.interval.ms)
Сегмент можно удалить, если последнее сообщение вжурнал старше, чем настроенный срок хранения.Кроме того, журнал активного сегмента (тот, в который в данный момент пишет брокер) не может быть удален
Чтобы иметь возможность удалить журнал сегмента как можно скорее, вы должны сконфигурировать журнал в корреляциис вами срок хранения.Например, если период хранения настроен на 24 часа, это может быть хорошим идентификатором для настроенного log.roll.hours на 1 час.
Обратите внимание, что удаление сегмента на самом деле может происходить в разное время у каждого брокера, так какПотоки очистителя запланированы вместе.
Проверка конфигурации конкретной темы с помощью kafka-configs
script:
Пример: ./bin/kafka-configs --describe --zookeeper localhost:2181 --entity-type topics --entity-name __consumer_offsets