【问题标题】:Esper - Array Representation of query resultsEsper - 查询结果的数组表示
【发布时间】:2017-12-21 05:32:39
【问题描述】:

假设我有 CallPOPDWH 事件。该事件有 4 列。类型列、名称列、检测时间戳列和属性列。 Esper 产生以下 3 个元组:

[Event, CallPOPDWH, 1456938481000, {call_start_date=7355448481000, calling_number=+3859121JMOYL, call_direction=I}]  
[Event, CallPOPDWH, 1456938481000, {call_start_date=5464538486000, calling_number=+3859121JMOYL, call_direction=I}]
[Event, CallPOPDWH, 1456938481000, {call_start_date=1456345351000, calling_number=+3859121JMOYL, call_direction=I}]

我想执行一个查询,该查询将收集呼叫号码和检测时间戳相同的所有不同 call_start_date 值。

例如:

[Event, NewEvent, 1456938481000, {call_start_date=[7355448481000, 5464538486000, 1456345351000], calling_number=+3859121JMOYL, call_direction=I}] 

我已经阅读了 Esper 的文档,虽然它说您可以创建一个模式来表示 newEvent,您可以在其中将属性声明为数组,但我还没有找到一个可行的示例。

我不知道我需要什么样的查询。我需要模式查询还是带有特定属性子查询的选择查询?任何建议都将不胜感激。

【问题讨论】:

    标签: sql arrays complex-event-processing esper


    【解决方案1】:
    select window(call_start_date).distinctOf() from CallPOPDWH#keepall group by calling_number, detectionTimestamp
    

    一些笔记

    • 用于记住所有值的#keepall 可以是时间窗口或其他
    • 添加“每隔 X 秒输出一次”,例如当不需要连续输出时

    【讨论】:

    • 非常感谢!我必须修改一下查询以使结果与我想要的完全匹配,但我了解基本概念!
    猜你喜欢
    • 1970-01-01
    • 2018-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多