public class CumulativeWindowAssigner extends PanedWindowAssigner<TimeWindow> implements InternalTimeWindowAssigner
GroupWindowAssigner that windows elements into cumulative windows based on the
timestamp of the elements. Windows are overlap.| Modifier | Constructor and Description |
|---|---|
protected |
CumulativeWindowAssigner(long maxSize,
long step,
long offset,
boolean isEventTime) |
| Modifier and Type | Method and Description |
|---|---|
TimeWindow |
assignPane(Object element,
long timestamp)
Given the timestamp and element, returns the pane into which it should be placed.
|
Collection<TimeWindow> |
assignWindows(org.apache.flink.table.data.RowData element,
long timestamp)
Given the timestamp and element, returns the set of windows into which it should be placed.
|
TimeWindow |
getLastWindow(TimeWindow pane)
Gets the last window which the pane belongs to.
|
org.apache.flink.api.common.typeutils.TypeSerializer<TimeWindow> |
getWindowSerializer(org.apache.flink.api.common.ExecutionConfig executionConfig)
Returns a
TypeSerializer for serializing windows that are assigned by this WindowAssigner. |
boolean |
isEventTime()
Returns
true if elements are assigned to windows based on event time, false
otherwise. |
static CumulativeWindowAssigner |
of(Duration maxSize,
Duration step)
Creates a new
CumulativeWindowAssigner that assigns elements to cumulative time
windows based on the element timestamp. |
Iterable<TimeWindow> |
splitIntoPanes(TimeWindow window)
Splits the given window into panes collection.
|
String |
toString() |
CumulativeWindowAssigner |
withEventTime() |
CumulativeWindowAssigner |
withOffset(Duration offset) |
CumulativeWindowAssigner |
withProcessingTime() |
openprotected CumulativeWindowAssigner(long maxSize,
long step,
long offset,
boolean isEventTime)
public Collection<TimeWindow> assignWindows(org.apache.flink.table.data.RowData element, long timestamp)
GroupWindowAssignerassignWindows in class GroupWindowAssigner<TimeWindow>element - The element to which windows should be assigned.timestamp - The timestamp of the element when GroupWindowAssigner.isEventTime() returns true, or
the current system time when GroupWindowAssigner.isEventTime() returns false. The timestamp value is
mapping to UTC milliseconds for splitting windows simply.public TimeWindow assignPane(Object element, long timestamp)
PanedWindowAssignerassignPane in class PanedWindowAssigner<TimeWindow>element - The element to which windows should be assigned.timestamp - The timestamp of the element when GroupWindowAssigner.isEventTime() returns true, or
the current system time when GroupWindowAssigner.isEventTime() returns false.public Iterable<TimeWindow> splitIntoPanes(TimeWindow window)
PanedWindowAssignersplitIntoPanes in class PanedWindowAssigner<TimeWindow>window - the window to be split.public TimeWindow getLastWindow(TimeWindow pane)
PanedWindowAssignergetLastWindow in class PanedWindowAssigner<TimeWindow>public org.apache.flink.api.common.typeutils.TypeSerializer<TimeWindow> getWindowSerializer(org.apache.flink.api.common.ExecutionConfig executionConfig)
GroupWindowAssignerTypeSerializer for serializing windows that are assigned by this WindowAssigner.getWindowSerializer in class GroupWindowAssigner<TimeWindow>public boolean isEventTime()
GroupWindowAssignertrue if elements are assigned to windows based on event time, false
otherwise.isEventTime in class GroupWindowAssigner<TimeWindow>public String toString()
toString in class GroupWindowAssigner<TimeWindow>public static CumulativeWindowAssigner of(Duration maxSize, Duration step)
CumulativeWindowAssigner that assigns elements to cumulative time
windows based on the element timestamp.maxSize - The max size of the generated windows.step - The step interval for window size to increase of the generated windows.public CumulativeWindowAssigner withOffset(Duration offset)
public CumulativeWindowAssigner withEventTime()
withEventTime in interface InternalTimeWindowAssignerpublic CumulativeWindowAssigner withProcessingTime()
withProcessingTime in interface InternalTimeWindowAssignerCopyright © 2014–2025 The Apache Software Foundation. All rights reserved.