问题标签 [esper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 格式化 Esper 查询时出错
我正在使用(或尝试使用)Esper 来检索特定类的对象,其中一种方法返回特定值。这是我现在设置的声明。
我知道其他一切正常,因为当我执行以下操作时,一切正常,除了缺少过滤。
该语句专门针对“test.getObject()”抛出。
谢谢!
esper - Esper:在触发事件到达后的时间内找到最早的事件
我的事件流通常包含一个打开事件,然后是一个关闭事件。让我们相应地称它们为O
and C
。但是,有两个细节:
O
可能后跟一个或多个O
之前C
到达C
可能完全丢失(见下文)
假设C
应该不迟于一段时间T
后到达O
。否则,C
视为缺失。当 aC
最终到达时,所有比它O
更早到达的 open s都被认为是孤儿并且没有兴趣。T
C
我希望 esper 触发每一对O
后跟C
,其中最早O
不远T
从C
被选中。任何O
介于两者之间以及之前选择的 sO
都将被跳过。
例如,
O1 O2 O3 ... C
应该选择(O1,C)
如果datediff(O1, C) < T
(O2,C)
如果以上为假,则应选择datediff(O2, C) < T
等等
A 在处理这个问题时发了脾气。看来我的心智与esper不兼容。您的帮助非常感激。
wso2 - CEP 如何检测和报告流中的重复项?
有没有办法检测和报告流中的重复项?
示例:包含用户名和 IP 地址元组的用户登录数据流。目标是在最后 10 秒内检测来自不同 IP 的同一用户的登录。
我已经查看了 siddhi (wso2) 和 esper 查询语言,但我不知道如何实现这一点。
pojo - Esper EPL 查询类似于 SQL 中的 select 语句
我是 ESPER 的新手。我正在检查类似 SQL 的查询。这是我的场景。我需要处理一个最喜欢的用例。将有一个推荐引擎,它会在每 12 小时内向用户推荐一些 URL。如果用户通过将 URL 标记为收藏或不对其进行操作,则事件将转到 ESPER。
- 如果用户将某个 URL 标记为收藏,则 CEP 应该告诉推荐引擎不要再次发送相同的 URL。
- 如果用户在推荐 n 次后没有标记 URL(用户不感兴趣),那么 CEP 也会告诉推荐引擎不要再次发送相同的 URL。
请建议我如何进行。我正在考虑将最喜欢的事件用作 POJO。
complex-event-processing - 不同主机上的 Esper 发布者和订阅者
是否有任何示例代码可以让一个主机发布事件,另一台主机通过 Esper 框架接收事件(侦听器或订阅者)。我注意到 Esper 提供了不同的适配器(socket、JMS 和 HTTP),但找不到相应的示例代码。谢谢
pattern-matching - Esper:后跟带有聚合标准的模式
我有包含已连接用户数的 UsersCount 事件流。当前,当用户数量在特定时间范围内下降一定百分比时会触发查询:
现在我需要改进查询以检查用户是否重新连接,即 DisconnectedPercent 达到某个负阈值,例如:
现在我实现的解决方案需要两条语句和一个额外的流。声明一是:
注册监听器的第二个语句是:
有没有办法编写单个语句来检测这种模式?是否可以像上面那样选择有意义的值?
java - 在 Esper 4.8 中发送计时器事件
我有一个 csv 文件作为输入适配器,我想每秒从 csv 文件发送事件。例如,我有 A1、A2、A3、B1、B2 和 B3。我想在第一秒发送 A1、A2 和 A3,在第二秒发送 B1、B2 和 B3。在此参考http://esper.codehaus.org/esperio-4.0.0/doc/reference/en/html_single/index.html#csv-timer中有关于发送计时器事件的说明。这是否意味着根据 csv 文件中设置的时间戳发送事件?如果属实,如何使用?我已阅读此参考资料,但我不明白如何使用它。如果引用不能用于每秒发送事件,是否有另一种方法来设置事件以便每秒发送一次?
java - 选择组中的最后一个事件
我们有一个连接到其他几个系统并将事件推送到流中的应用程序。每个连接器还将在其状态更改时发送状态消息。我想要一个 esper 查询,它向我显示为每个连接器发送的最后状态,即使该状态是不久前发送的。我们的 bean 看起来像这样
我尝试了以下 esper 查询,但它似乎只返回每个名称的第一条状态消息。
我是 esper 的新手。我对正常的时间窗口查询还不错,但是长时间保留最后一个事件让我很困惑。只有几十个连接器,它们的状态可能几个小时都不会改变,但我们仍然希望看到最后发送的状态。
complex-event-processing - 使用 Esper 触发分层规则
我们有一个事件流,每个事件都具有以下属性:
此外,我们还有一组分层或嵌套规则,我们想用 EPL 和 Esper 建模。当且仅当其所有父规则都已被激活(所有这些规则都发生匹配实例)时,才应应用每个规则。例如:
我们要检索与此规则层次结构的每个级别对应的所有事件实例。例如,考虑以下事件:
我们希望我们的规则层次结构报告此实例以及与层次结构的每个级别对应的所有事件的 id。例如,需要类似于以下报告的内容:
我们如何在 Esper EPL 中实现这一点(检索与所有规则匹配的事件的 id)?
esper - 在 StreamInsight 窗口中添加或删除事件
有没有办法在 StreamInsight 中保留所有事件并根据需要添加或删除事件?在 Esper 中,有一个名为 keepall() 的方法可以应用于窗口。此方法保留所有传入事件,您可以对在窗口中插入事件或删除它们有不同的查询。
我尝试在 StreamInsight 中使用Hopping
、和Snaphot
,但它们都没有上述功能。Tumbling
Count Window
谢谢。