时间扫描如何在Azure Stream Analytics翻滚窗口和跳跃窗口中工作?

时间:2016-06-08 10:27:36

标签: azure azure-eventhub azure-stream-analytics azure-blob-storage

我在Azure Cloud中有一个事件中心,它接收我有时间戳值和其他参数的消息。 使用命令

将时间戳与流分析对齐
TIMESTAMP AS [TimeStamp]

这是Stream Analytics查询(输入是事件中心,本例中的输出是blob)

SELECT
    DateAdd(minute, -1, System.Timestamp) as FromTimestamp, System.Timestamp as ToTimestamp, 
    [MachineType], [MachineNumber], [Part], [PartNumber], [ValueKind], AVG(Value) AS AverageValue
INTO
    [blob-avg]
FROM
    [input]
TIMESTAMP BY [TimeStamp]
WHERE [ValueKind]='RPM' OR [ValueKind]='CUR' OR [ValueKind]='POW'
GROUP BY [MachineType], [MachineNumber], [Part], [PartNumber], [ValueKind], SlidingWindow(minute, 1)

我认为邮件的时间戳会被视为比较的时间戳,但是如何扫描? 在Utc时间?让我说,在消息中我有一个时间戳12:00(GMT + 2),UTC现在是10.00 翻滚是否考虑到2小时前到达的数据而不是实际数据? (在时间戳10:00(GMT + 2))(实际上在我看来是这样的)。

如果邮件延迟超过2小时,会附加什么?让我说一个消息到达有一天的延迟,翻滚会被重新调整吗?

1 个答案:

答案 0 :(得分:1)

[Timestamp]列将转换为datetime,如果格式为GMT,则会将其考虑在内,并且可以安全地假设在进行时间相关计算时,所有内容都将转换为UTC。

Azure Stream Analytics不断从源中读取数据。迟到政策+窗口决定如何处理迟到的事件。

请看一下 https://msdn.microsoft.com/en-us/library/azure/mt674682.aspx

https://blogs.msdn.microsoft.com/streamanalytics/2015/05/17/out-of-order-events/

了解有关无序政策的详细信息。

对于您的具体示例,如果邮件的延迟时间超过2小时且您的延迟到达策略是丢弃事件,则事件将被删除。如果是adjust,则时间戳将调整为当前处理时间。