Сжатие кафки, как ограничить его перечисленными темами?Как использовать свойство compress.topics, используя клиентские продукты API? - PullRequest
0 голосов
/ 13 ноября 2018

Я включил сжатие сообщений kafka из API-интерфейса клиента, например:

configProperties.put (ProducerConfig.COMPRESSION_TYPE_CONFIG, "gzip")

Это работает хорошо, однако, если мы хотим ограничить вышеупомянутое сжатие некоторыми перечисленными темами, мы заметили способ:

configProperties.put («сжатые темы», «тема А, тема В»)

по этой ссылке: https://cwiki.apache.org/confluence/display/KAFKA/Compression. Но это не работает, означает, что в моем тестовом примере я включил сжатие, и я не перечислил мою тему в аргументах compress.topics. все еще сжатие было применено. пожалуйста, помогите.

1 Ответ

0 голосов
/ 13 ноября 2018

Сжатие обрабатывается несколькими параметрами в Кафке:

  • На посредниках compression.type настраивает значение по умолчанию для всего кластера. Это позволяет значения gzip, snappy, lz4, uncompressed или producer. Первые три говорят сами за себя, это просто разные методы сжатия (рекомендуется snappy / lz4), uncompressed говорит само за себя, и по умолчанию producer, который в основном просто использует любое сжатие (или нет). ) производитель решил использовать. В этом случае Кафка просто видит сообщения как байтовые массивы и не пытается их декодировать.
  • На уровне темы в брокере вы также можете указать те же конфигурации, что и выше: gzip, snappy, lz4, uncompresssed или producer. Они точно такие же, но действуют как переопределяет специально для выбранной вами темы.
  • На стороне производителя, в коде, вы также можете установить compression.type, и возможные значения: gzip, snappy, lz4 и none, где последний является значением по умолчанию.

Вы должны смотреть на недавнюю документацию для Kakfa. Вы не указываете, какую версию Kafka вы используете, но, учитывая недавнюю версию, я бы посмотрел эти документы:

https://kafka.apache.org/20/documentation.html

В них нет упоминания о compression.topics в качестве опции конфигурации. Итак, как упоминалось @ cricket_007, это устаревшая / устаревшая вики-страница, которую вы не должны использовать.

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