流计算 Oceanus 简介
流计算 Oceanus 是大数据产品生态体系的实时化分析利器,是基于 Apache Flink 构建的具备一站开发、无缝连接、亚秒延时、低廉成本、安全稳定等特点的企业级实时大数据分析平台。流计算 Oceanus 以实现企业数据价值最大化为目标,加速企业实时化数字化的建设进程。
Flink CEP[1] 是在 Flink 上层实现的复杂事件处理库。本文将为您详细介绍如何使用 Flink CEP 实现对复杂事件的处理。 示例程序使用 DataStream API 读取 Kafka 中股票的数据,找到股价的低点,完成了复杂事件的处理,最后将结果输出到 Kafka 的另一个 Topic 中去。
总结
- 使用
DataStream
中的 CEP 时,必须实现 POJO 类的equals()
和hashCode()
方法。 因为 Flink CEP 会根据 POJO 类的equals()
和hashCode()
方法进行对象的比较和匹配事件。 - 使用
Table SQL
中的 CEP,请参考 模式检测[6]。 - 打包时无需打包 flink 核心依赖,流计算 Oceanus 平台已提供。
阅读参考
[1] Flink CEP(复杂事件处理): https://nightlies.apache.org/flink/flink-docs-release-1.13/zh/docs/libs/cep/
[2] Oceanus 控制台:https://console.cloud.tencent.com/oceanus/overview
[3] 创建独享集群:https://cloud.tencent.com/document/product/849/48298
[4] CKafka 控制台:https://console.cloud.tencent.com/ckafka/index?rid=1
[5] CKafka 收发消息:https://cloud.tencent.com/document/product/597/54834
[6] 模式检测:https://nightlies.apache.org/flink/flink-docs-release-1.13/zh/docs/dev/table/sql/queries/match_recognize/