Csúszóablak

✅ Azure Stream Analytics ✅ Fabric Eventstream

Tolóablak használata esetén a rendszer arra kéri a rendszert, hogy logikailag fontolja meg az összes lehetséges, adott hosszúságú ablakot. Mivel az ilyen ablakok száma végtelen lenne, az Azure Stream Analytics ehelyett csak azokra a pontokra ad ki eseményeket, amikor az ablak tartalma ténylegesen megváltozik, vagyis amikor egy esemény belépett vagy kilép az ablakon.

Az alábbi ábra egy eseménysorozatot ábrázoló streamet mutat be, és azt, hogy hogyan vannak leképezve 10 másodperces tolóablakokra.

Stream Analytics 10 másodperces tolóablak

Szemantika

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

Megjegyzés:

A tolóablak a fenti két módon használható. A hoppingablakkal való konzisztencia engedélyezéséhez az Időtartam függvény minden ablaktípussal használható az ablak méretének megadásához.

Érvek

timeunit

Az ablakosítás időegysége. Az alábbi táblázat az összes érvényes időegység-argumentumot felsorolja.

Timeunit Rövidítések
nap dd, d
óra Hh
perc mi, n
második ss, s
Ezredmásodperc Ms
mikroszekundum Mcs

windowsize

Egy nagy egész szám, amely az ablak méretét írja le. Az ablakosítás statikus, és futásidőben nem módosítható dinamikusan.

Az ablak maximális mérete minden esetben 7 nap.

Példák

Ez a példa megkeresi az összes olyan fizetős standot, amely az elmúlt 5 percben több mint 3 járművet szolgált ki:

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