Кафка материализованные взгляды TTL - PullRequest
0 голосов
/ 26 августа 2018

Насколько я знаю, Кафка по умолчанию будет хранить записи в темах в течение 7 дней, а затем удалять их.Но как насчет материализованных представлений Кафки, как долго Кафка будет хранить там данные (бесконечное или ограниченное время)?Кроме того, Кафка реплицирует материализованные представления в кластере?

1 Ответ

0 голосов
/ 26 августа 2018

Темы Kafka могут быть настроены как со временем хранения, так и с сжатием журнала.При сжатии журнала самая последняя запись для каждого ключа никогда не будет удалена, в то время как более старая запись с тем же ключом будет собираться мусором через регулярные промежутки времени.См. https://kafka.apache.org/documentation/#compaction

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

Примечание: если вы читаете тему непосредственно как KTable или GlobalKTable (т. Е. builder.table(...)), дополнительная тема журнала изменений не будет создана, но для этой цели будет использована исходная тема.Таким образом, исходный раздел должен быть настроен на сжатие журнала (а не на время хранения).

Вы можете настроить требуемый коэффициент репликации с помощью параметра StreamConfig repliaction.factor.Вы также можете вручную изменить коэффициент репликации в любое время, например, с помощью команды bin/kafka-topics.sh.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...