В чем разница между журналом коммитов и топиком в Apache Kafka?

Какова разница между Журналом коммитов и Топиком в Apache Kafka? Что такое Журнал коммитов и в чем заключается функция Топика? Некоторые источники описывают Топик как виртуальное хранилище сообщений, в то время как журнал коммитов используется для хранения истории сообщений. Можете прояснить различия между этими двумя концепциями?
  • 13 августа 2024 г. 9:13
Ответы на вопрос 2
Журнал коммитов (commit log) в Apache Kafka представляет собой упорядоченную последовательность записей о том, какие данные были записаны или изменены в топике. Этот журнал используется для подтверждения записи данных и обеспечения целостности сообщений. Журнал коммитов помогает восстановить состояние топика в случае сбоя или потери данных.

Топик в Apache Kafka – это логическое разделение данных, представленное как категория сообщений. Каждый топик содержит упорядоченный набор сообщений, которые могут быть считаны и записаны соответствующими производителями и потребителями. Топик является основной абстракцией для организации данных в Kafka и позволяет группировать сообщения по связанным темам.

Таким образом, основное различие между журналом коммитов и топиком заключается в их функциях и предназначении. Журнал коммитов используется для обеспечения целостности данных и восстановления состояния топика, в то время как топик служит для упорядоченного хранения и передачи сообщений определенной тематики.
Ну собственно в топике хранятся данные, которые оттуда забираешь. 
А в логе в течение некоторого retention периода хранятся метаданные данных. Можно посмотреть историю, или просто список сообщений. Вдобавок логи в целом меньше самих данных и хранятся целиком на каждом сервере, что позволяет быстрые операции со списком.

Можно официальную документацию, раздел topics and logs
https://kafka.apache.org/08/documentation.html#int...
Похожие вопросы