TGViewer
Женя Янченко Женя Янченко @jane_yanchenko · 5.51K subscribers
Post #240 4.15K
Как долго хранятся сообщения

Ключевая особенность Кафки — возможность хранения сообщений в течение длительного времени.

У топика есть настройка cleanup.policy. Она определяет, как Kafka будет удалять старые данные в партициях топика:

➡️ DELETE — это режим по-умолчанию, при котором данные хранятся или в течение определенного времени (retention.ms — по-умолчанию 7 дней) или до достижения партицией лимита размера в байтах (retention.bytes, по-умолчанию = -1, то есть отключено). Настройки времени хранения или лимита размера применяются к партиции.

➡️ COMPACT — это режим, который позволяет хранить только последние версии сообщений с одинаковым ключом, удаляя устаревшие.

Например, мы пишем в Кафку данные пользователей. Ключ сообщения - userId.
В топике с cleanup.policy = COMPACT:

Приходит userId=41, name="Вася" → хранится.
Приходит userId=41, name="Василий" → старая запись с name="Вася" удаляется, но не мгновенно, а в фоновом режиме. В итоге останется только name="Василий".
Если Вася удалит свой профиль, запишем: userId=41, null → это tombstone (маркер удаления ключа), через заданное время (по-умолчанию 24 часа) эта запись удалится из лога.


COMPACT режим никогда не удаляет последнюю версию ключа, даже если она старая, пока не придёт новая или tombstone (null для этого ключа).

COMPACT режим не подходит там, где нам нужна вся история событий.

➡️ Гибридный режим использует оба подхода: оставляет последние версии ключей, а потом среди этих последних версий удаляет старые сегменты при превышении времени хранения или размера.

#kafka
  • 🔥 37
  • ❤ 17
  • 👍 13
  • ❤‍🔥 2
  • 💯 1
More from @jane_yanchenko
  1. Sep 21, 2026🔗 Подборка постов про Кафку Как обещала на стриме, собрала посты про Кафку в удобное огла…
  2. Sep 21, 2026🎞 Готова запись стрима про Кафку: https://youtu.be/2aRKsD-MWDA Большое спасибо всем, кто…
  3. Sep 16, 2026Сегодня стрим по Кафке в 19:00 Планируем не в формате доклада, а в формате вопрос-ответ, ч…
  4. Sep 16, 2026Post #413
  5. Sep 16, 2026Post #412
  6. Sep 16, 2026Post #411
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →