我有2个问题:
1)翻滚窗口如何工作?
因此,假设我有连续发生的事件,我会做Tumbling(hour,1)
然后Stream Analytics将等待1小时并将它们分组并给我1条记录
,或者一旦事件发生,它将给我记录最近1小时的分组数据? >
2)在我的情况下,我连续付款,我需要当天的所有金额的总和,每次交易到来时它应该给我SUM。
所以假设下面是我的交易数据
因此我们可以在图片中看到
答案 0 :(得分:0)
对于问题1,SA将等待1个小时,然后分组并给您一条记录作为输出。
Windowing Functions (Azure Stream Analytics)
每个窗口操作在窗口末尾输出事件。 Azure Stream Analytics的窗口在窗口开始时间打开,并在窗口结束时间关闭。例如,如果您有一个从12:00 AM到12:05 AM的5分钟窗口,则所有时间戳大于12:00 AM且最大时间戳为12:05 AM的事件都将包含在此窗口中。窗口的输出将是一个单一事件,该事件基于使用与窗口结束时间相等的时间戳记的聚合函数。
对于问题2,我相信您可以使用“跳跃窗口”并定义最近1天(86400秒)的持续时间,如下所示:
SELECT Amount, SUM(Amount) as TotalTransactions
FROM <YourSAInput> TIMESTAMP BY TransactionDate
GROUP BY Amount, HoppingWindow(seconds, 86400, 1)
Hopping Window (Azure Stream Analytics)
跳跃窗口规范由三个参数组成: timeunit , windowsize (每个窗口持续多长时间)和 hopsize (由每个窗口相对于上一个窗口向前移动了多少。
希望这会有所帮助。