复杂事件处理(CEP)——事件模式,规则及约束
2018-04-07 14:19
423 查看
从大量执行中的事件里找出感兴趣的事件集合的能力是观察和控制事件驱动系统的基础。我们需要能够描述我们感兴趣事件的模式并能快速发现匹配这类模式的事件集合。
1.事件模式事件模式是一个模板,用来匹配期望找出的特定事件的集合。它准确的描述了事件和事件之间的因果依赖,时间关系、数据参数和上下文。一些事件模式的例子如下:
a.客户C上个月的所有订单;
b.常客上个月所有的订单
第一个模式匹配来自一个特定客户C发生在一个月内的所有订单事件。要确定一个订单是否匹配该模式,必须检查订单,判断客户是不是C而且满足时间约束。这是一个内容敏感模式。
第二个模式类似于第一个模式,只是不是检查订单中的数据判断其客户是否为C,而是需要检查客户的上下文——例如,通过查询数据库以确定一个客户是不是常客。这是个上下文敏感模式,其上下文则是匹配操作发生时事件状态的一部分。
2.事件模式规则事件模式规则是当事件模式被匹配时指定执行某一动作的反应式规则。一个事件规则定义了一种因果关系,模式匹配时触发的事件触发规则执行动作产生的事件。
一个反应式规则由两部分组成:
1)触发器:一个事件模式。
2)动作:当触发器被匹配时所产生的事件。
因果含义是指只要一个事件模式被一个事件偏序集所触发,那么被产生的事件就是由触发该模式的事件集合所引起的。这个事件集合就是新事件的因果祖先。
3.事件约束一个约束表示系统中被观察到的事件的一个必须满足的情况。约束不仅可以用来指定目标系统的行为,而且可以用来指定其用户怎样使用它。
本质上,一个约束检查其模式的事件从不发生于系统中。它是一个看门狗。这些约束不强制行为发生或者保证行为不发生,它们只是简单的检查行为。
1.事件模式事件模式是一个模板,用来匹配期望找出的特定事件的集合。它准确的描述了事件和事件之间的因果依赖,时间关系、数据参数和上下文。一些事件模式的例子如下:
a.客户C上个月的所有订单;
b.常客上个月所有的订单
第一个模式匹配来自一个特定客户C发生在一个月内的所有订单事件。要确定一个订单是否匹配该模式,必须检查订单,判断客户是不是C而且满足时间约束。这是一个内容敏感模式。
第二个模式类似于第一个模式,只是不是检查订单中的数据判断其客户是否为C,而是需要检查客户的上下文——例如,通过查询数据库以确定一个客户是不是常客。这是个上下文敏感模式,其上下文则是匹配操作发生时事件状态的一部分。
2.事件模式规则事件模式规则是当事件模式被匹配时指定执行某一动作的反应式规则。一个事件规则定义了一种因果关系,模式匹配时触发的事件触发规则执行动作产生的事件。
一个反应式规则由两部分组成:
1)触发器:一个事件模式。
2)动作:当触发器被匹配时所产生的事件。
因果含义是指只要一个事件模式被一个事件偏序集所触发,那么被产生的事件就是由触发该模式的事件集合所引起的。这个事件集合就是新事件的因果祖先。
3.事件约束一个约束表示系统中被观察到的事件的一个必须满足的情况。约束不仅可以用来指定目标系统的行为,而且可以用来指定其用户怎样使用它。
本质上,一个约束检查其模式的事件从不发生于系统中。它是一个看门狗。这些约束不强制行为发生或者保证行为不发生,它们只是简单的检查行为。
相关文章推荐
- MOQL-复杂事件处理(CEP)
- 大量日志数据复杂事件处理技术(Complex Event Processing 简称CEP)
- 事件流处理(Esp) 复杂事件处理(CEP)
- 复杂事件处理两种技术实现手段的对比,规则语言 VS 持续查询语言
- 中国CEP(复杂事件处理)发展的春天
- 复杂事件处理(CEP)——事件、时序以及因果关系
- Notes for CEP & Esper Learning(1)——初识复杂事件处理
- cep复杂事件处理
- CEP学习笔记 --- Complex Event Processing复杂事件处理
- 复杂事件处理(CEP)的理解(上)
- 高性能复杂事件处理---模式匹配
- 复杂事件处理和规则引擎的关系
- 复杂事件处理(CEP)的理解(下)
- Java设计模式_观察者模式&事件处理机制
- 基于文件数据库的规则引擎处理海量高复杂度数据(一,业务背景)
- SODBASE CEP事件驱动应用----进行告警处理流程管理
- Adapter模式在J2SE事件处理中的应用
- 基于文件数据库的规则引擎处理海量高复杂度数据(二,解决方案)
- Adapter模式在J2SE事件处理中的应用
- 两种高效的事件处理模型:Reactor模式和Proactor模式