我目前正在研究一种机制来提取CEP查询的中间状态,以便我可以使用此信息在稍后的某个时间点恢复查询状态(例如,在节点故障之后)。
提取中间状态适用于基于窗口的(例如,timeBatch查询)或基于聚合的查询(例如,sum),因为我可以创建自定义窗口/聚合函数并提取中间状态(例如,窗口中的当前事件或当前总和)。
即使对于序列/模式查询,我也可以看到提取中间状态对于恢复目的是多么有用。例如,如果我有一个模式查询,我在哪里寻找A - > B - > C,到目前为止,A - > B已被识别,我可以尝试提取此子模式作为查询快照的一部分。之后,在恢复时,我只需要搜索类型C的事件以满足模式。
到目前为止,我还没有找到一种可行的方法来提取这些信息。有没有人对我如何解决这个问题有任何想法?谢谢!