Настройки топика определяют поведение хранения, репликации и очистки данных.
Репликация
| Настройка |
Описание |
Пример |
replication.factor |
Количество реплик для каждой партиции |
replication.factor=3 |
min.insync.replicas |
Минимальное количество синхронизированных реплик |
min.insync.replicas=2 |
Хранение данных
| Настройка |
Описание |
Пример |
retention.ms |
Время хранения сообщений в миллисекундах |
retention.ms=604800000 (7 дней) |
retention.bytes |
Максимальный объём данных, после чего старые сообщения удаляются |
retention.bytes=10737418240 (10 GB) |
segment.bytes |
Размер сегмента логов топика |
segment.bytes=1073741824 (1 GB) |
Политики очистки
| Настройка |
Описание |
Значения |
cleanup.policy |
Как Kafka обрабатывает старые сообщения |
delete, compact |
Партиции
| Настройка |
Описание |
Пример |
num.partitions |
Количество партиций в топике |
num.partitions=3 |
На собеседовании: часто спрашивают про связку replication.factor + min.insync.replicas + acks=all. Это базовая конфигурация для надёжной доставки: например, при replication.factor=3 и min.insync.replicas=2 система переживёт падение одного брокера без потери данных.