我们只有一个名为migrationstatus的主题,假设我们进行了分区,因此给定MigrationCandidateNumber的所有实例和事件始终以同一主题和分区结尾。
以下活动于2019年10月12日上午10:00到达
{
"MigrationCandidateNumber": 54545451,
"MigrationStatus":"Final Bill Produced"
}
以下活动于14-10-2019 08:00 AM到达
{
"MigrationCandidateNumber": 54545451,
"MigrationStatus":"Product Ready"
}
以下活动于17-10-2019 12:00 AM到达>>
{ "MigrationCandidateNumber": 54545451, "MigrationStatus":"Registration Complete" }
问题陈述:
一旦处理完所有这三个事件,我们就需要将下面的事件产生到migrationstatus-out
主题上,如下所示:{ "MigrationCandidateNumber": **54545451**, "MigrationStatus":"**Ready for extract 2**" }
宽的时间窗口是有意的,因为前三个事件可能相隔几天。
没有外部数据库的最佳方式?
解决方案尝试:
我知道这是一个广泛的问题,主要与解决问题的方法有关,而不是与技术问题有关,但是我找不到更好的论坛来发布此内容。
我们有一个名为migrationstatus的主题,假设我们已分区,因此给定MigrationCandidateNumber的所有实例和事件始终以同一主题和分区结尾。后续事件...
我已经解决了这个问题,并在github中共享了代码。请点击链接获取解决方案。