您的位置:首页 > 其它

CEP 概念

2021-03-16 22:29 47 查看

5.5.1 CEP是什么

CEP是流式处理的核心技术。

不管是单独的应用系统,还是数据仓库,都是先将数据存储到数据库/数据仓库,然后再处理或查询。而CEP与常见的Message Queue系统类似,都将数据看作数据流,在连续数据的快速移动过程中进行分析处理。这样的方式不需要很大的数据加载,完全可以在内存中进行,从而能够快速产生结果,如图5.29所示。

业务事件可能很复杂,在各种不同的数据流中源源不断地产生各种类型的事件。不仅需要对这些业务事件进行复杂的计算,如过滤、关联、聚合等,同时还需要考虑这些业务事件出现的时间序列,最终才能产生有意义的事件,或触发业务流程。注意,这些计算的规则可能还会经常变化。

这类问题通常通过基于规则的推理机(规则引擎)来实现,如图5.30所示。

图5.29

图5.30

5.5.2 CEP的架构

CEP的架构如图5.31所示。

图5.31

CEP在逻辑上应该包括:

  • 事件发生器通过应用系统、文件系统、数据库、互联网、人工及传感器产生事件。

  • 事件处理器模式的匹配、验证和改进、路由、转换及编排。

  • 事件消费者与事件发生器类似,也可以是应用系统、文件系统、数据库、互联网、人工界面等。

CEP将数据看作一种数据流,基于规则引擎对业务过程中持续产生的各种事件进行复杂的处理,能够实现对连续数据的快速分析处理。CEP可以应用在多种业务场景,如风险分析、程序化交易等。如果说BI实现了商业智能,那么CEP则实现了“持续智能(Continuous Intelligence)”。

5.5.3 Esper

Esper是一个开源的CEP实现。Esper是纯Java开源复杂事件和事件流引擎,可以监测事件流,并在特定事件发生时触发某些动作。Esper引擎是为了满足事件进行分析并做出反应等应用需求而产生的。这些应用需求实时或者接近实时地处理事件(或消息)。这类应用具有高吞吐量、低响应时延和复杂的计算等特点。

Esper引擎的典型应用有:

  • 业务处理管理和自动化(处理监控、业务活动监控、异常报告、经营智能化等)。

  • 财务(算法交易、欺诈检查、风险管理)。

  • 网络及应用程序监控[***检测、SLA(Service Level Agreement)监控]。

  • 传感器网络应用(RFID读取、生产线调度和控制、空中交通)。

  • Esper支持类SQL语句EPL(Event Process Language)。

本文选自《大数据架构详解:从数据获取到深度学习》5.5.1/5.5.2节。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: