什么是 CEP
- 复杂事件处理(Complex Event Processing,CEP)
- Flink CEP是在 Flink 中实现的复杂事件处理(CEP)库
- CEP 允许在无休止的事件流中检测事件模式,让我们有机会掌握数据中重要的部分
- 一个或多个由简单事件构成的事件流通过一定的规则匹配,然后输出用户想得到的数据 —— 满足规则的复杂事件
CEP 的特点
- 目标:从有序的简单事件流中发现一些高阶特征
- 输入:一个或多个由简单事件构成的事件流
- 处理:识别简单事件之间的内在联系,多个符合一定规则的简单事件构成复杂事件
- 输出:满足规则的复杂事件
Pattern API
- 处理事件的规则,被叫做“模式”(Pattern)
- Flink CEP 提供了 Pattern API,用于对输入流数据进行复杂事件规则定义,用来提取符合规则的事件序列
// 定义一个Pattern
val pattern=Pattern.begin[Event]("start").where(_.getId==42)
.next("middle").subtype(classOf