Sdílet prostřednictvím


Posuvné okno

✅Eventstream prostředků infrastruktury Azure Stream Analytics ✅

Při použití posuvného okna je systém požádán, aby logicky zvážil všechna možná okna s danou délkou. Vzhledem k tomu, že počet takových oken by byl nekonečný, Azure Stream Analytics místo toho vypíše události pouze pro tyto body v čase, kdy se obsah okna skutečně změní, jinými slovy, když událost vstoupila nebo opustí okno.

Následující diagram znázorňuje datový proud s řadou událostí a jejich mapování na posuvná okna o 10 sekundách.

10sekundové posuvné okno Stream Analytics

Syntaxe

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

Poznámka:

Posuvné okno lze použít výše dvěma způsoby. Chcete-li povolit konzistenci s oknem Skákání, lze funkci Doba trvání použít také se všemi typy oken k určení velikosti okna.

Argumenty

timeunit

Je jednotkou času pro časové období. V následující tabulce jsou uvedeny všechny platné argumenty časového limitu.

Timeunit Zkratky
den dd, d
hodina Hh
minuta mi, n
vteřina ss, s
milisekunda milisekunda
mikrosekunda Mcs

windowsize

Velké celé číslo, které popisuje velikost okna. Windowsize je statická a nelze ji dynamicky měnit za běhu.

Maximální velikost okna je ve všech případech 7 dní.

Příklady

Tento příklad najde všechny placené stánky, které za posledních 5 minut obsluhovaly více než 3 vozidla:

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