这感觉很明显,但我还是在问,因为我在文档中找不到明确的确认:
Flink 1.12 中可用的Flink Table API upsert kafka 连接器的语义与 Kafka 压缩主题的语义非常匹配:将流解释为变更日志并将NULL
值用作墓碑来标记删除。
所以我的假设是可以使用它来消费和生产压缩主题,并且它可能正是为此而制作的,尽管假设它的内容确实是一个变更日志,它应该也适用于非压缩主题。但是我很惊讶在文档的那部分中没有找到对压缩主题的任何引用。
有人可以确认或证实这个假设吗?
这感觉很明显,但我还是在问,因为我在文档中找不到明确的确认:
Flink 1.12 中可用的Flink Table API upsert kafka 连接器的语义与 Kafka 压缩主题的语义非常匹配:将流解释为变更日志并将NULL
值用作墓碑来标记删除。
所以我的假设是可以使用它来消费和生产压缩主题,并且它可能正是为此而制作的,尽管假设它的内容确实是一个变更日志,它应该也适用于非压缩主题。但是我很惊讶在文档的那部分中没有找到对压缩主题的任何引用。
有人可以确认或证实这个假设吗?
是的,它是为压缩主题而设计的。根据FLIP-149:
一般来说,upsert-kafka源码的底层topic一定要compact的。此外,底层主题必须在同一个分区中具有相同键的所有数据,否则结果将是错误的。