Sdílet prostřednictvím


Posuvné okno (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 dané délky. Vzhledem k tomu, že počet takových oken by byl nekonečný, Azure Stream Analytics místo toho vypisuje události pouze pro ty body v čase, kdy se obsah okna skutečně změní, jinými slovy, když událost vstoupila do okna nebo ho opustila.

Následující diagram znázorňuje stream s řadou událostí a způsob jejich namapování na posuvná okna v intervalu 10 sekund.

Stream Analytics 10sekundové posuvné okno

Syntax

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

Poznámka

Posuvné okno lze použít dvěma způsoby. Chcete-li zajistit konzistenci s skákajícím oknem, můžete k určení velikosti okna použít funkci Duration (Doba trvání) se všemi typy oken.

Argumenty

časová jednotka

Je jednotka času pro velikost okna. V následující tabulce jsou uvedeny všechny platné argumenty časového intervalu.

Časová jednotka Zkratky
day dd, d
hour hh
minute mi, n
second ss, s
Milisekund Paní
mikrosekundy Mcs

velikost okna

Velké celé číslo, které popisuje velikost okna. Velikost okna 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é budky, které za posledních 5 minut obsloužily 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