✅ Azure Stream Analytics ✅ Fabric Eventstream
スライディング ウィンドウを使用する場合、システムは特定の長さの可能なすべてのウィンドウを論理的に考慮するように求められます。 このようなウィンドウの数は無限になるので、Azure Stream Analytics は代わりに、ウィンドウの内容が実際に変更されたとき、つまり、イベントがウィンドウに入ったり終了したりしたときに、それらの時点についてのみイベントを出力します。
次の図は、一連のイベントを含むストリームと、それらが 10 秒のスライディング ウィンドウにどのようにマップされるかを示しています。
構文
{SLIDINGWINDOW | SLIDING} ( timeunit, windowsize )
{SLIDINGWINDOW | SLIDING} ( Duration( timeunit, windowsize ) )
注
スライディング ウィンドウは、上記の 2 つの方法で使用できます。 ホッピング ウィンドウとの一貫性を確保するために、Duration 関数をすべての種類のウィンドウで使用してウィンドウ サイズを指定することもできます。
論争
timeunit
ウィンドウサイズの時間の単位です。 次の表に、有効なすべての timeunit 引数を示します。
| Timeunit | 略語 |
|---|---|
| 日 | dd、d |
| 時間 | hh |
| 分 | mi、n |
| 秒 | ss、s |
| ミリ秒 | さん |
| マイクロ秒 | mcs |
windowsize
ウィンドウのサイズを表す大きな整数。 windowsize は静的であり、実行時に動的に変更することはできません。
すべての場合のウィンドウの最大サイズは 7 日です。
例示
この例では、過去 5 分間に 3 台を超える車両を提供したすべての有料ブースを検索します。
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