Kafka Streams GlobalKTable 主题是否需要与它将加入的 KStream 主题相同数量的分区?
Does Kafka Streams GlobalKTable topic require the same number of partitions as KStream topic which it will be joining with?
我们想在 Kafka 流应用程序中使用 GlobalKTable。输入主题(KTable/KStream)有 N 个分区,一个 GlobalKTable 将用作流应用程序中的字典。
GlobalKTable 的输入主题是否必须与其他输入主题(它们是KTable/KStream的来源)具有相同数量的分区?
据我了解,答案是否定的(没有限制,主题也可能有 M 个分区,其中 N > M),因为 GlobalKTable 在流应用程序的每个实例中都已完全加载,并且共同分区是在 KStream 加入操作期间不需要。但我需要专家的证实!
谢谢!
不,KStream 和 GlobalTable(连接)的主题分区数可以不同。
来自 Kafka Streams 开发人员指南
At a high-level, KStream-GlobalKTable joins are very similar to KStream-KTable joins. However, global tables provide you with much more flexibility at the some expense when compared to partitioned tables:
- They do not require data co-partitioning.
可以在此处找到更多详细信息:
我们想在 Kafka 流应用程序中使用 GlobalKTable。输入主题(KTable/KStream)有 N 个分区,一个 GlobalKTable 将用作流应用程序中的字典。
GlobalKTable 的输入主题是否必须与其他输入主题(它们是KTable/KStream的来源)具有相同数量的分区?
据我了解,答案是否定的(没有限制,主题也可能有 M 个分区,其中 N > M),因为 GlobalKTable 在流应用程序的每个实例中都已完全加载,并且共同分区是在 KStream 加入操作期间不需要。但我需要专家的证实!
谢谢!
不,KStream 和 GlobalTable(连接)的主题分区数可以不同。
来自 Kafka Streams 开发人员指南
At a high-level, KStream-GlobalKTable joins are very similar to KStream-KTable joins. However, global tables provide you with much more flexibility at the some expense when compared to partitioned tables:
- They do not require data co-partitioning.
可以在此处找到更多详细信息: