基于 Flink 构建 CEP 引擎的挑战和实践
作者:韩鹏@奇安信 背景及现状 奇安信集团作为一家网络安全公司,专门为政府、企业,教育、金融等机构和组织提供企业级网络安全技术、产品和服务,奇安信的 NGSOC 产品的核心引擎是一个 CEP 引擎,用于实时检测网络攻击,其技术演进过程如下图所示。 2015 年开始使用基于 Esper 的 CEP 方案,但是当时遇到了很多问题,其中最显著的是性能问题,因为 Esper 对于规则条目的支持数量不多,一般情况下超过几十条就会受到严重影响; 2017 年奇安信的技术方案演进到了使用 C++ 实现的 Dolphin 1.0,其在单机上的性能表现大幅度提升; 2018 年奇安信决定将技术方案全面转向基于 Flink 的 Sabre。 奇安信产品具体的应用场景是企业系统的安全检测和数据分析,其自下而上分为四个业务处理流程,分别是数据的采集、解析、处理和展示结果,这其中最核心的是第三层数据处理。该产品的用户主要是安全规则团队,其可以使用规则编辑器来对安全规则进行添加、删除、编辑和查找操作,并可批量启动/停用多个规则,同时可以将处于启动状态的有效规则统一发送给产品。 在数据规模方面,产品解决的不是一个或...




