Tumblingvenster (Azure Stream Analytics)

Tumblingvensters zijn een reeks niet-overlappende en aaneengesloten tijdsintervallen van vaste duur. In het volgende diagram ziet u een stroom met een reeks gebeurtenissen en hoe deze worden toegewezen aan tumblingvensters van 10 seconden.

Stream Analytics tumblingvenster 5 minuten

Syntaxis

{TUMBLINGWINDOW | TUMBLING} ( timeunit  , windowsize, [offsetsize] )  
{TUMBLINGWINDOW | TUMBLING} ( Duration( timeunit  , windowsize ), [Offset(timeunit  , offsetsize)] )  
  

Notitie

Het tumblingvenster kan op de bovenstaande twee manieren worden gebruikt. Om consistentie met het hoppingvenster mogelijk te maken, kan de functie Duur ook worden gebruikt met alle typen vensters om de venstergrootte op te geven. De duur van het venster moet een positieve floatconstante zijn.

Argumenten

tijdeenheid

Is de tijdseenheid voor de venstergrootte. De volgende tabel bevat alle geldige tijdeenheidargumenten.

Tijdeenheid Afkortingen
day dd, d
uur hh
minuut mi, n
seconde ss, s
Milliseconde ms
microseconde Mcs

windowsize

Een groot geheel getal dat de grootte van het venster aangeeft. De windows-grootte is statisch en kan niet dynamisch worden gewijzigd tijdens runtime.

De maximale grootte van het venster is 7 dagen.

offsetgrootte

Standaard zijn tumblingvensters inclusief aan het einde van het venster en exclusief in het begin. Het venster 12:00 – 13:00 uur bevat gebeurtenissen die precies om 13:00 uur hebben plaatsgevonden, maar bevat geen gebeurtenissen die om 12:00 uur hebben plaatsgevonden (deze gebeurtenissen maken deel uit van het venster van 11:00 tot 12:00 uur).

De parameter Offset kan worden gebruikt om dit gedrag te wijzigen en de gebeurtenissen in het begin van het venster op te nemen en de gebeurtenissen uit te sluiten die uiteindelijk zijn opgetreden.

Voorbeelden

SELECT System.Timestamp() AS WindowEnd, TollId, COUNT(*)  
FROM Input TIMESTAMP BY EntryTime  
GROUP BY TollId, TumblingWindow(Duration(hour, 1), Offset(millisecond, -1))
SELECT 'reset' AS command
INTO
    alert
FROM
    temperature TIMESTAMP BY timeCreated
GROUP BY TumblingWindow(second,15)
HAVING Avg(machine.temperature) > 25

Tijdoverwegingen

Elke vensterbewerking voert een gebeurtenis uit aan het einde van het venster. De vensters van Azure Stream Analytics worden geopend op de begintijd van het venster en gesloten op de eindtijd van het venster. Als u bijvoorbeeld een tijdsvenster van 5 minuten hebt van 00:00 tot 12:05 uur, worden alle gebeurtenissen met een tijdstempel groter dan 12:00 uur en tot en met tijdstempel 12:05 in dit venster opgenomen. De uitvoer van het venster is één gebeurtenis op basis van de statistische functie die wordt gebruikt met een tijdstempel die gelijk is aan de eindtijd van het venster. De tijdstempel van de uitvoergebeurtenis van het venster kan worden geprojecteerd in de SELECT-instructie met behulp van de eigenschap System.Timestamp() met behulp van een alias.

Zie ook

Hoppingvenster
Sliding window
Windowing