【发布时间】:2020-02-04 07:55:44
【问题描述】:
我有一个事件流,我需要与 ktable / changelog 主题进行匹配,但匹配是通过对 ktable 条目的属性进行模式匹配来完成的。所以我不能基于一个键加入流,因为我还不知道哪个匹配。
示例:
ktable X:
{
[abc]: {id: 'abc', prop: 'some pattern'},
[efg]: {id: 'efg', prop: 'another pattern'}
}
流 A:
{ id: 'xyz', match: 'some pattern'}
所以stream A应该转发{match: 'abc'}
所以我基本上需要遍历 ktable 条目并通过对该属性的模式匹配找到匹配的条目。
基于 ktable 创建全局状态存储,然后从处理器 API 访问它并遍历条目是否可行?
我还可以将 ktable 的所有条目聚合到 1 个集合中,然后加入“假”键?但这似乎也相当 hacky。
或者我只是强迫一些不是真正流的东西,而只是使用普通的消费者 API 将其放入 redis 缓存中,这也有点尴尬,因为我宁愿让它得到 RocksDB 的支持。
编辑:我想这有点与this question有关
【问题讨论】:
标签: apache-kafka apache-kafka-streams