Window Type Selection Analysis
For this Azure Stream Analytics scenario, the requirement is to calculate a running average of shopper counts during the previous 15 minutes, calculated at five-minute intervals.
Why Hopping Window (Option C) is Correct:
- Hopping windows are specifically designed for scenarios where you need to compute aggregates at regular intervals over a fixed time range
- The key parameters match perfectly:
- Window size: 15 minutes (the time range for the running average)
- Hop size: 5 minutes (the calculation interval)
- This creates overlapping windows where each calculation includes data from the previous 15 minutes, but results are emitted every 5 minutes
- The hopping window function in Azure Stream Analytics would be implemented as
HOPPINGWINDOW(minute, 15, 5)
Why Other Options Are Incorrect:
- Snapshot (A): Captures events at specific points in time but doesn't support the required 15-minute running average calculation
- Tumbling (B): Creates non-overlapping, contiguous time windows of fixed size. A 15-minute tumbling window would only output results every 15 minutes, not every 5 minutes as required
- Sliding (D): While sliding windows can produce overlapping results, they output events continuously as events occur rather than at fixed intervals. The requirement specifies "calculated at five-minute intervals," which aligns with hopping windows' fixed interval behavior
Best Practice Justification:
Hopping windows are the optimal choice when you need periodic reporting of aggregates over a fixed historical period. The 15-minute window with 5-minute hops ensures the running average is updated regularly while maintaining the required historical context, making it ideal for monitoring retail shopper patterns.