Как настроить сжатие сообщений Kafka Streams?

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

С другой стороны, используя классический Kafka Producer, сжатие легко достигается путем установки конфигурации «compression.type» в Свойства KafkaProducer.

Тем не менее, похоже, нет документированного примера того, как Kafka Streams сжимает обработанные сообщения.

Что касается этого времени (начало 2019 года), есть ли вообще способ использовать сжатие с Kafka Streams?

Построение конвейеров данных в реальном времени с Apache Kafka: Руководство по Python
Построение конвейеров данных в реальном времени с Apache Kafka: Руководство по Python
Apache Kafka - популярная платформа распределенной потоковой передачи данных, которую можно использовать для построения конвейеров данных в реальном...
1
0
2 343
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете указать параметры для внутреннего производителя в StreamConfig, как показано ниже:

final Properties props = new Properties();
props.put(StreamsConfig.APPLICATION_ID_CONFIG, "your-streams-app-id");
props.put(ProducerConfig.COMPRESSION_TYPE_CONFIG, "lz4");

Выходные темы будут сжаты с использованием алгоритма LZ4.

Дополнительные сведения см. в статье https://docs.confluent.io/current/streams/developer-guide/config-streams.html#kafka-consumers-producer-and-admin-client-configuration-parameters.

Другие вопросы по теме