当我们要求的密钥在其中找不到时,Kafka Streams 构建表/流来延迟获取数据的最佳方法是什么(如果有)?
假设有一个带有
A
字段的用户操作流 user id
,目标是通过用户数据(电子邮件、姓名等)来丰富它,并加入 user id
与表/流 B
,为用户提供数据,但如果在 user id
中找不到 B
键 - 我们会获取数据并将其放在那里。目的是将其公开为通常的流/表。
谢谢您!
不确定我是否发现了什么。
听起来您需要实现一个带有附加状态存储的自定义
Processor
。对于每个输入记录,您查找存储,如果找到键,则计算连接结果并将其转发。如果未找到密钥,您将进行查找、更新状态、计算连接结果并将其转发。
有关更多详细信息,请比较文档。 https://kafka.apache.org/38/documentation/streams/developer-guide/processor-api.html