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