Class RowTimeRangeUnboundedPrecedingFunction<K>
- java.lang.Object
-
- org.apache.flink.api.common.functions.AbstractRichFunction
-
- org.apache.flink.streaming.api.functions.KeyedProcessFunction<K,IN,OUT>
-
- org.apache.flink.table.runtime.functions.KeyedProcessFunctionWithCleanupState<K,RowData,RowData>
-
- org.apache.flink.table.runtime.operators.over.AbstractRowTimeUnboundedPrecedingOver<K>
-
- org.apache.flink.table.runtime.operators.over.RowTimeRangeUnboundedPrecedingFunction<K>
-
- All Implemented Interfaces:
Serializable
,Function
,RichFunction
,CleanupState
public class RowTimeRangeUnboundedPrecedingFunction<K> extends AbstractRowTimeUnboundedPrecedingOver<K>
A ProcessFunction to support unbounded RANGE window. The RANGE option includes all the rows within the window frame that have the same ORDER BY values as the current row.E.g.: SELECT rowtime, b, c, min(c) OVER (PARTITION BY b ORDER BY rowtime RANGE BETWEEN UNBOUNDED preceding AND CURRENT ROW), max(c) OVER (PARTITION BY b ORDER BY rowtime RANGE BETWEEN UNBOUNDED preceding AND CURRENT ROW) FROM T.
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.flink.streaming.api.functions.KeyedProcessFunction
KeyedProcessFunction.Context, KeyedProcessFunction.OnTimerContext
-
-
Field Summary
-
Fields inherited from class org.apache.flink.table.runtime.operators.over.AbstractRowTimeUnboundedPrecedingOver
function, output
-
Fields inherited from class org.apache.flink.table.runtime.functions.KeyedProcessFunctionWithCleanupState
stateCleaningEnabled
-
-
Constructor Summary
Constructors Constructor Description RowTimeRangeUnboundedPrecedingFunction(long minRetentionTime, long maxRetentionTime, GeneratedAggsHandleFunction genAggsHandler, LogicalType[] accTypes, LogicalType[] inputFieldTypes, int rowTimeIdx)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
processElementsWithSameTimestamp(List<RowData> curRowList, Collector<RowData> out)
Process the same timestamp datas, the mechanism is different between rows and range window.-
Methods inherited from class org.apache.flink.table.runtime.operators.over.AbstractRowTimeUnboundedPrecedingOver
close, getCounter, onTimer, open, processElement
-
Methods inherited from class org.apache.flink.table.runtime.functions.KeyedProcessFunctionWithCleanupState
cleanupState, initCleanupTimeState, isProcessingTimeTimer, needToCleanupState, registerProcessingCleanupTimer
-
Methods inherited from class org.apache.flink.api.common.functions.AbstractRichFunction
getIterationRuntimeContext, getRuntimeContext, setRuntimeContext
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.flink.table.runtime.functions.CleanupState
registerProcessingCleanupTimer
-
-
-
-
Constructor Detail
-
RowTimeRangeUnboundedPrecedingFunction
public RowTimeRangeUnboundedPrecedingFunction(long minRetentionTime, long maxRetentionTime, GeneratedAggsHandleFunction genAggsHandler, LogicalType[] accTypes, LogicalType[] inputFieldTypes, int rowTimeIdx)
-
-
Method Detail
-
processElementsWithSameTimestamp
public void processElementsWithSameTimestamp(List<RowData> curRowList, Collector<RowData> out) throws Exception
Description copied from class:AbstractRowTimeUnboundedPrecedingOver
Process the same timestamp datas, the mechanism is different between rows and range window.- Specified by:
processElementsWithSameTimestamp
in classAbstractRowTimeUnboundedPrecedingOver<K>
- Throws:
Exception
-
-