【问题标题】:Produce output from empty window从空窗口产生输出
【发布时间】:2015-10-23 14:18:22
【问题描述】:

当窗口为空时,是否可以使用“按窗口分组”表达式从流分析查询中生成输出?

例如,在this 示例中,查询:

SELECT System.Timestamp as WindowEnd, SwitchNum, COUNT(*) as CallCount FROM CallStream TIMESTAMP BY CallRecTime GROUP BY TUMBLINGWINDOW(s, 5), SwitchNum

产生输出:

  • 2015-04-15T22:10:40.000Z 英国 1
  • 2015-04-15T22:10:40.000Z 美国 1
  • 2015-04-15T22:10:45.000Z 中国 1
  • 2015-04-15T22:10:45.000Z 德国 1
  • 2015-04-15T22:10:45.000Z 英国 3
  • 2015-04-15T22:10:45.000Z 美国 1
  • 2015-04-15T22:10:50.000Z 澳大利亚 2
  • ...

是否有可能让它产生类似的东西:

  • 2015-04-15T22:10:40.000Z 中国 0
  • 2015-04-15T22:10:40.000Z 德国 0
  • 2015-04-15T22:10:40.000Z 英国 1
  • 2015-04-15T22:10:40.000Z 美国 1
  • 2015-04-15T22:10:40.000Z 澳大利亚 0
  • 2015-04-15T22:10:45.000Z 中国 1
  • 2015-04-15T22:10:45.000Z 德国 1
  • 2015-04-15T22:10:45.000Z 英国 3
  • 2015-04-15T22:10:45.000Z 美国 1
  • 2015-04-15T22:10:45.000Z 澳大利亚 0
  • ...

?

目标是使用跳跃窗口检测过去 x 秒内是否没有事件。

【问题讨论】:

    标签: azure azure-stream-analytics


    【解决方案1】:

    使用带有 SwitchNum 值查找表的 LEFT JOIN,如果窗口中没有值,则将产生 NULL 结果。

    这篇博文有更详细的解释:http://blogs.msdn.com/b/streamanalytics/archive/2014/12/09/how-to-query-for-all-events-and-no-event-scenarios.aspx

    【讨论】:

    • 看起来可以,但是参考数据必须在左侧,这在流分析中显然是不允许的。
    • @pfouto 该博客描述了如何(在某种程度上)将参考数据放在连接的左侧:blogs.msdn.com/b/paolos/archive/2015/12/17/…
    • 死链接 :-( 谁能找到替代方案?
    猜你喜欢
    • 2017-11-20
    • 2017-07-25
    • 1970-01-01
    • 2021-06-17
    • 2014-11-24
    • 1970-01-01
    • 2015-03-22
    • 2017-10-30
    • 1970-01-01
    相关资源
    最近更新 更多