Используя Kafka Streams, мы не смогли определить конфигурацию, необходимую для сжатия сообщений, записываемых в тему приемника, после их обработки.
С другой стороны, используя классический Kafka Producer, сжатие легко достигается путем установки конфигурации «compression.type» в Свойства KafkaProducer.
Тем не менее, похоже, нет документированного примера того, как Kafka Streams сжимает обработанные сообщения.
Что касается этого времени (начало 2019 года), есть ли вообще способ использовать сжатие с Kafka Streams?

Вы можете указать параметры для внутреннего производителя в 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.