Átfedésmentes ablak (Azure Stream Analytics)

Az átfedésmentes ablakok rögzített méretű, egymást nem fedő és összefüggő időintervallumok. Az alábbi ábra egy eseménysorozatot ábrázoló streamet szemléltet, és azt, hogy hogyan vannak leképezve 10 másodperces ugróablakokra.

Stream Analytics-átfedési ablak 5 perc

Syntax

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

Megjegyzés

A Átfedésmentes ablak a fenti két módon használható. A Hopping ablakkal való konzisztencia engedélyezéséhez az Duration függvény minden ablaktípussal használható az ablak méretének megadásához. Az ablak időtartamának pozitív lebegőpontos állandónak kell lennie.

Argumentumok

timeunit

Az ablakméret időegysége. Az alábbi táblázat az összes érvényes időunit-argumentumot felsorolja.

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

windowsize

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

Az ablak maximális mérete 7 nap.

eltolás

Alapértelmezés szerint a ugróablakok az ablak végén vannak, és az elején kizárólagosak – például 12:00 és 13:00 óra között – azok az események, amelyek pontosan 13:00-kor történtek, de nem tartalmazzák a 12:00-kor történt eseményeket (ezek az események a 11:00 és 12:00 közötti időszak részét képezik).

Az Eltolás paraméter használatával módosíthatja ezt a viselkedést, és belefoglalhatja az eseményeket az ablak elejébe, és kizárhatja azokat, amelyek a végén történtek.

Példák

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

Idő megfontolandó szempontok

Minden ablakművelet eseményt ad ki az ablak végén. Az Azure Stream Analytics ablakai az ablak kezdő időpontjában nyílnak meg, és az ablak végén bezáródnak. Ha például 5 perces ablaka van 12:00 és 12:05 között, az összes 12:00-nál hosszabb és 12:05-ös időbélyegzőt tartalmazó esemény ebbe az ablakba lesz belefoglalva. Az ablak kimenete egyetlen esemény lesz a használt összesítő függvény alapján, és az időbélyeg megegyezik az ablak befejezési időpontjával. Az ablak kimeneti eseményének időbélyege a SELECT utasításban kivetíthető egy alias használatával a System.Timestamp() tulajdonság használatával.

Lásd még:

Ugróablak
Csúszóablak
Ablak