Dela via


Rullande fönster

✅ Azure Stream Analytics ✅ Fabric Eventstream

Rullande fönster är en serie tidsintervall med fast storlek, icke-överlappande och sammanhängande. Följande diagram illustrerar en ström med en serie händelser och hur de mappas till 10-sekunders rullande fönster.

Stream Analytics rullande fönster 5 min

Syntax

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

Anmärkning

Det rullande fönstret kan användas på de två ovanstående sätten. Om du vill tillåta konsekvens med hoppningsfönstret kan funktionen Varaktighet också användas med alla typer av fönster för att ange fönsterstorleken. Fönstervaraktigheten måste vara en positiv flyttalskonstant.

Argumentpunkter

timeunit

Är tidsenheten för windowsize. I följande tabell visas alla giltiga timeunit-argument.

Tidsunit Förkortningar
dag dd, d
timme Hh
minut mi, n
andra ss, s
millisekund Ms
mikrosekund Mcs

windowsize

Ett stort heltal som beskriver fönstrets storlek. Windows-storleken är statisk och kan inte ändras dynamiskt vid körning.

Fönstrets maximala storlek är 7 dagar.

offsetsize

Som standard är rullande fönster inkluderande i slutet av fönstret och exklusivt i början – till exempel 12:00–13:00 inkluderas händelser som inträffade exakt kl. 13:00, men inkluderar inte händelser som inträffade kl. 12:00 (dessa händelser kommer att vara en del av 11:00–12:00 PM-fönstret).

Parametern Offset kan användas för att ändra det här beteendet och inkludera händelserna i början av fönstret och exkludera de som hände i slutet.

Exempel

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

Tidsöverväganden

Varje fönsteråtgärd matar ut händelsen i slutet av fönstret. Fönstren i Azure Stream Analytics öppnas vid starttiden för fönstret och stängs vid fönstrets sluttid. Om du till exempel har ett 5-minutersfönster från 12:00 till 12:05 inkluderas alla händelser med tidsstämpel som är större än 12:00 och upp till tidsstämpeln 12:05. Utdata från fönstret är en enskild händelse baserat på den mängdfunktion som används med en tidsstämpel som är lika med fönstrets sluttid. Tidsstämpeln för utdatahändelsen i fönstret kan projiceras i SELECT-instruktionen med hjälp av egenskapen System.Timestamp() med hjälp av ett alias.

Se även

Hoppande fönster
Skjutfönster
fönsterhantering