Delen via


Schuifvenster

✅ Azure Stream Analytics ✅ Fabric Eventstream

Wanneer u een schuifvenster gebruikt, wordt het systeem gevraagd om alle mogelijke vensters van een bepaalde lengte logisch te overwegen. Omdat het aantal van dergelijke vensters oneindig zou zijn, voert Azure Stream Analytics in plaats daarvan alleen gebeurtenissen uit voor die tijdstippen wanneer de inhoud van het venster daadwerkelijk wordt gewijzigd, met andere woorden wanneer een gebeurtenis het venster binnenkwam of verlaat.

In het volgende diagram ziet u een stroom met een reeks gebeurtenissen en hoe deze worden toegewezen aan schuifvensters van 10 seconden.

Stream Analytics 10 second sliding window

Syntaxis

{SLIDINGWINDOW | SLIDING} ( timeunit, windowsize )
{SLIDINGWINDOW | SLIDING} ( Duration( timeunit, windowsize ) )

Opmerking

Het schuifvenster 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.

Argumenten

tijdeenheid

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

Tijdeenheid Afkortingen
dagen dd, d
uur Hh
minuut mi, n
tweede ss, s
milliseconde mevrouw
microseconde Mcs

vensters aanpassen

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

De maximale grootte van het venster in alle gevallen is 7 dagen.

Voorbeelden

In dit voorbeeld vindt u alle tolhokjes die in de afgelopen 5 minuten meer dan 3 voertuigen hebben bediend:

SELECT DateAdd(minute,-5,System.Timestamp()) AS WinStartTime, System.Timestamp() AS WinEndTime, TollId, COUNT(*)
FROM Input TIMESTAMP BY EntryTime
GROUP BY TollId, SlidingWindow(minute, 5)
HAVING COUNT(*) > 3