Tumbling Window

Tumbling windows are a non-overlapping events arrays ordered by time. The size of the window is dependent upon policy configuration, either time or event count. Events within the window are only processed once when a new window is triggered.

Time based windows

Example

The example defines a tumbling 10 second time based window using two aggregate functions for two event attributes.

time window:
  emitting type: pageFailures
  aggregate functions:
    FIRST: [ask, bid]
    LAST: [ask, bid]
  policy:
    type: tumblingTime
    window size: 10
    time unit: SECONDS

Attributes

AttributeDescriptionData TypeRequired

window size

Size of window with respect to timeUnit

Long

time unit

TimeUnit used for configuring window trigger. Supported types:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

TimeUnit

Default: MILLISECONDS


Event count based windows

Example

Configures a tumbling window with a maximum of 1000 events and an additional window trigger set to 5 seconds

time window:
  emitting type: pageFailures
  policy:
    type: tumblingCount
    window size: 1000
    delay: 5
    time unit: SECONDS

Attributes

AttributeDescriptionData TypeRequired

window size

Maximum number of events before triggering window processing

Long

delay

Time period to trigger window processing if window size has not been breached.

Note: If delay is set to zero this addition trigger is not activated.

Long

Default: 0

time unit

TimeUnit used for configuring window delay. Supported types:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

TimeUnit

Default: MILLISECONDS

Last updated