Не сохраняйте тему Кафка - PullRequest
       14

Не сохраняйте тему Кафка

0 голосов
/ 04 октября 2018

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

В настоящее время единственным «исправлением», которое я вижу, было установить довольно слабую политику хранения.

Дело в том, что я хотел бы сохранить журналы и постоянную информацию для некоторых других тем, которые находятся на сервере, которые, вероятно,для меня важнее.

Какие у меня есть варианты?

В идеале я хотел бы отказаться от журналов и сохраненных сообщений по темам.

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Настройки хранения могут быть установлены отдельно для каждой темы.Вы можете сделать это либо во время создания, либо изменить конфигурацию темы после ее создания.Вы можете найти полный список конфигов тем на веб-сайте Kafka .

Для тем, которые не нуждаются в хранении данных, установите ограничения хранения, которые будут часто удалять данные.

С другой стороны, для тем, в которых необходимо хранить данные, установите пределы хранения, которые будут хранить данные в течение более длительного периода времени.

Например, для настройки конфигурации темы при создании темы (время хранения =24 часа):

kafka-topics.sh --zookeeper <ZK> --create --topic --partitions 1 --replication-factor 1 --config retention.ms=86400000

Чтобы обновить существующую тему:

kafka-configs.sh --zookeeper <ZK> --entity-type topics --entity-name <TOPIC> --alter --add-config retention.ms=86400000
0 голосов
/ 04 октября 2018

Вы можете установить политики хранения для каждой темы, да.

Вот пример использования kafka-topics:

kafka-topics.sh --zookeeper localhost:2181 \
                --alter \
                --topic MyTopic \
                --config retention.ms=1000
...