Я внес изменения в файл server.properties в Kafka 0.8.1.1, т.е. добавил log.cleaner.enable=true
, а также включил cleanup.policy=compact
при создании темы. Теперь, когда я тестирую его, я отправил следующие сообщения в тему со следующими (Key, Message).
- Смещение: 1 - (123, abc);
- Смещение: 2 - (234, деф);
- Смещение: 3 - (345, ghi);
- Смещение: 4 - (123, изменено)
Теперь я отправил 4-е сообщение той же клавишей, что и предыдущий ввод, но изменил сообщение. Здесь должно появиться уплотнение бревен. А с помощью инструмента Kafka я могу увидеть все 4 смещения в теме. Как я могу узнать, работает ли сжатие журнала или нет? Если предыдущее сообщение было удалено, или сжатие журнала работает нормально, поскольку новое сообщение было отправлено. Связано ли это с конфигурациями log.retention.hours
, topic.log.retention.hours
или log.retention.size
? Какова роль этих конфигов в уплотнении логов. P.S. - Я внимательно просмотрел документацию Apache, но все еще не ясно.
segment
(Тема- ›Раздел-› Сегмент), уплотнение не произойдет. Предположим, что segment.ms = 100 и вы напишете ‹segement.bytes=1GB
в течение первых 100 мс вашего теста, тогда у вас будет только 1 сегмент, и ваши данные не будут сжаты. Либо убедитесь, что вы выполняете запись в один и тот же раздел в течение более длительного периода, чемsegment.ms
, либо установите дляsegment.bytes
более низкое значение, чтобы не все ваши данные помещались в один сегмент. 23.02.2018