Esper 对象表示和处理的一般信息

问题描述 投票:0回答:1

我正在与 Esper 合作,但我不清楚一些事情。谁能帮我解释一下吗?

  1. 事件何时会从流中删除?

  2. 事件何时会从窗口中删除?

  3. 是否可以为每个重复执行运行时查询,例如“从某个窗口删除,其中 key1=value1” 60秒?我有时会遇到并发修改异常。

  4. 有什么好的平装本学习Esper的教材吗?

需要澄清。尝试查看在线文档,但它非常模糊。

esper
1个回答
0
投票

流在逻辑上是一个管道,仅传输事件。当应用程序将新事件发送到 Esper 运行时时,运行时会确定哪些语句(和分区)应该看到该事件。例如,如果没有任何语句需要查看该事件,则意味着运行时不维护对该事件的引用,并且 JVM 垃圾收集可以立即垃圾收集该事件。

窗口,例如时间窗口,指示运行时将事件保存在内存中。运行时将事件完全按照窗口在 EPL 中声明的窗口定义的方式保留在内存中。对于 1 分钟的时间窗口,运行时将事件在时间窗口中保留一分钟。如果语句中没有窗口,则运行时不会保留任何事件。除了时间窗口之外,还有一个概念定义了分析数据的时间,那就是 EPL 上下文。我只是使用时间窗口作为例子。

您可以使用准备好的即发即弃查询,这样就没有编译步骤,并且准备好的即发即弃查询已经加载。您可以检查查询计划以查看使用了哪个索引(如果有)。根据使用的索引和命名窗口或表的大小,执行速度可能会很快。如果您看到任何异常,您必须确保使用最新版本,并在 Github 问题中详细报告该异常。

提供文档(PDF、HTML)和在线材料以及 JavaDoc。 EsperTech 主办了在线培训,网址为 https://www.eventseriesanalysis.org/。据我所知,没有纸质教科书。

© www.soinside.com 2019 - 2024. All rights reserved.