Share via


슬라이딩 윈도우(Azure 스트림 분석)

슬라이딩 윈도우를 사용하여 시스템에서 지정된 길이의 가능한 모든 창을 논리적으로 고려하도록 할 수 있습니다. 이러한 창의 수는 무한하므로 Azure Stream Analytics는 창의 내용이 실제로 변경되는 시점의 이벤트만 출력합니다. 즉, 이벤트가 창을 입력하거나 종료할 때입니다.

다음 다이어그램은 일련의 이벤트가 있는 스트림과 10초의 슬라이딩 윈도우에 매핑되는 방법을 보여 줍니다.

Stream Analytics 10초 슬라이딩 윈도우

Syntax

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

참고

위 두 가지 방법으로 슬라이딩 윈도우를 사용할 수 있습니다. 도약 창과의 일관성을 허용하려면 모든 유형의 창과 함께 기간 함수를 사용하여 창 크기를 지정할 수 있습니다.

인수

timeunit

windowsize에 대한 시간 단위입니다. 다음 표에는 유효한 모든 timeunit 인수가 나와 있습니다.

Timeunit 약어
dd, d
hour hh
minute mi, n
second ss, s
밀리초 ms
microsecond mcs

windowsize

창의 크기를 설명하는 큰 정수입니다. windowsize는 정적이며 런타임에 동적으로 변경할 수 없습니다.

모든 경우 최대 기간은 7일입니다.

예제

이 예제에서는 지난 5분 동안 4대 이상의 차량이 통과한 모든 요금소를 찾습니다.

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