You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Kafka Streams无共同Key分组的实现与多分区优化问询

Kafka Streams跨ID关联分组的多分区适配方案

场景背景

之前用Spring Kafka Streams做分组聚合一直很顺畅,但现在遇到一个特殊关联规则的场景:消息通过id1和id2两个字段关联,只要任意一个字段与另一条消息的id1或id2匹配(包括id1与id1、id1与id2、id2与id2、id2与id1相等),就视为同组。

输入示例

{ 
  "id1": 1222,
  "id2": 1333
},
{
  "id1": 1666,
  "id2": 1777
},
{
  "id1": 1222,
  "id2": 1444
},
{
  "id1": 1555,
  "id2": 1444
},
{
  "id1": 1888,
  "id2": 1666
}

期望输出

{
  "id1": [1666, 1888],
  "id2": [1777, 1666]
},
{
  "id1": [1222, 1222, 1555],
  "id2": [1333, 1444, 1444]
}

当前困境

当Kafka分区数大于1(生产环境通常至少3个)时,无法保证关联的ID进入同一分区,导致流分组功能完全失效。目前考虑测试单线程应用的吞吐量,但希望找到更优方案,能维持多分区配置同时解决分组问题。

内容的提问来源于stack exchange,提问作者user1799107

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 01:52:12