apache-kafka-streams - 我可以在 Kafka 中压缩 KafkaStream 使用的中间主题(状态存储)吗
问题描述
使用有状态处理器时,状态也可以存储在 kafka 中。
例如,名称如下的主题:
-repartition-x
和-changelog-x
我可以压缩这些主题,例如使用 gzip,KafkaStream 仍然可以使用它们吗?
解决方案
正如 Mathias 所指出的,您可以通过compression.type
在内部主题配置中设置主题配置来压缩消息。见https://kafka.apache.org/10/javadoc/org/apache/kafka/streams/state/StoreBuilder.html#withLoggingEnabled-java.util.Map-
或者,您也可以实现一个自定义 Serde 来进行压缩。
更喜欢前者,因为它只会在 Kafka 主题中被压缩,而不是在状态存储中。这避免了处理过程中不必要的压缩/解压缩。
推荐阅读
- javascript - onclick 显示和隐藏不同文本时遇到问题
- html - 为什么 React 输入元素嵌套在组件中时会失去焦点?
- asp.net - Azure Key Vault Connected Service 到 ASP.NET 4.7.1:CompilationLock 异常
- mysql - Spring - 如何连接到数据库mysql
- typescript - Typescript 编译器使用泛型推断类型
- python - 如何从 Pandas 的数百列中删除丢失的内容?
- setuptools - 在 cli 程序中访问已安装的非 python 文件?
- javascript - 如何在启动时将持久会话初始化为护照/会话文件存储?
- cmake - Cmake 在 Windows 上找不到 wxWidgets
- c++ - 程序似乎正在接受文件输入但不打印信息