esper之相关概念

本文介绍了Esper中控制模式探测器的创建与终止,逻辑操作符如and、or、not,时间操作符如->和where条件。强调了避免过度使用匹配模式以优化性能,并提到了数据窗口在复杂应用场景中的作用,以及变量在Esper引擎实例中的应用。
摘要由CSDN通过智能技术生成
1.事件流分析

EPL语句从一个或多个事件流中派生和聚合信息,加入或合并事件流,并将一个时间流的结果提供给后续的语句。EPL在select语句和where语句的使用上,和SQL很类似,不过,EPL语句用事件流和views替换了数据库的表格。和SQL中表格相似,views定义了可用于查询和过滤的数据。views可以表示一个事件流上的一个窗口。views也可以排序事件、从事件属性获取统计数据、进行事件分组或者处理唯一的事件属性值。
select avg(price) from StockTickEvent.win:time(30 sec);计算股票事件过去30s的平均价格。
select symbol, avg(price) as averagePrice from StockTickEvent.win:length(100) group by symbol;前100条股票事件的平均值
下面的例子关联了两个事件流。第一个事件流由欺诈告警事件组成,用于保存过去30分钟的事件信息。第二个流则是withdrawal事件,用来保存过去30秒的事件。这两个流通过account number进行关联:
select     fraud.accountNumber as accntNum, 
            fraud.warning as warn, 
            withdraw.amount as amount,    
            MAX( fraud.timestamp, withdraw.timestamp) as timestamp,
             'withdrawlFraud'    as desc    from FraudWarningEvent.win:time(30 min) as fraud,
            WithdrawalEvent.win:time(30 sec)  as withdraw where fraud.accountNumber=withdraw.accountNumber</span>

2.事件模式匹配

Event patterns match when an event or multiple events occur that match the pattern's definition.当符合模式定义的一个或多个事件发生时,就认为事件模式匹配了。
模式也可以是基于时间的。模式匹配是通过状态机实现的。
模式表达式可以由连接了模式操作符的过滤器表达式组成。通过在圆括号中的嵌入表达式,可以实现更深的模式表达式嵌套。
5类操作符:
  • 控制模式探测器的创建和终止:every
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值