摘要

针对现有复杂事件匹配处理方法存在匹配代价高的问题,提出了一种在有序事件列表上选择最佳匹配顺序进行递归遍历的复杂事件匹配方法 OptiSeq。将事件实例按照查询模式中不同事件类型缓存到有序事件列表中,并通过事件列表中事件实例的数量选择最优的查询匹配起点及查询匹配顺序,之后在有序列表上对不同约束分别进行递归校验,最终输出完全满足查询模式的所有复杂事件结果。该方法克服了使用自动机模型固定状态转换的弊端,也避免了使用树型模型批处理操作漏解的问题,并且合理优化了匹配顺序,进一步提高查询匹配效率。在模拟数据集和真实数据集上进行了实验测试与分析,与当前流行的SASE、Siddhi两种复杂事件处理方法进行比较。实验表明,所提出的方法能够在保证匹配正确性的同时,有效地减少匹配过程中的冗余计算,提高整体匹配效率。