我正在从表示依赖实体的RestfulAPI读取数据 . 例如来自/学生我得到学生对象和/老师我得到教师对象 . 学生与教师对象相关联(学生有教师ID) . 问题是我从Kafka /学生到学生话题,从/从教师到教师话题,但是当我尝试与Kafka Streams一起加入他们时,有时学生的事件在他们的老师活动到来之前到来,因此我没有收到学生和老师的联合记录(由于早到的学生) . 使用窗口不是最佳选择,因为我希望始终获得学生更新 .
-
我的问题是 - 如何同步事件,以便我能够解决依赖对象 .
-
目前我正在手动轮询API服务并将结果生成给Kafka - 有没有办法以简单的方式使用Kafka Connect代替Rest API作为源?
1 回答
以下方法应该有所帮助:
为教师主题创建一个流,因为传入的记录将是稳定的 .
要处理传入的学生流,请为学生创建
KTable
.在教师和学生之间进行非窗口加入 .
KTable
是更改日志流,因此所有传入记录都将被视为插入或更新 .你可以参考this documentation .