public class RetractableTopNFunction extends AbstractTopNFunction
Input stream can contain any change kind: INSERT, DELETE, UPDATE_BEFORE and UPDATE_AFTER.
KeyedProcessFunction.Context, KeyedProcessFunction.OnTimerContext
hitCount, inputRowType, keyContext, outputRankNumber, rankEnd, requestCount, sortKeyComparator, sortKeySelector, ttlConfig
Constructor and Description |
---|
RetractableTopNFunction(StateTtlConfig ttlConfig,
InternalTypeInfo<RowData> inputRowType,
ComparableRecordComparator comparableRecordComparator,
RowDataKeySelector sortKeySelector,
RankType rankType,
RankRange rankRange,
GeneratedRecordEqualiser generatedEqualiser,
boolean generateUpdateBefore,
boolean outputRankNumber) |
Modifier and Type | Method and Description |
---|---|
void |
open(OpenContext openContext)
Initialization method for the function.
|
void |
processElement(RowData input,
KeyedProcessFunction.Context ctx,
Collector<RowData> out)
Process one element from the input stream.
|
checkSortKeyInBufferRange, collectDelete, collectDelete, collectInsert, collectInsert, collectUpdateAfter, collectUpdateAfter, collectUpdateBefore, collectUpdateBefore, getDefaultTopNSize, hasOffset, initRankEnd, isInRankEnd, isInRankRange, registerMetric, setKeyContext
onTimer
close, getIterationRuntimeContext, getRuntimeContext, open, setRuntimeContext
public RetractableTopNFunction(StateTtlConfig ttlConfig, InternalTypeInfo<RowData> inputRowType, ComparableRecordComparator comparableRecordComparator, RowDataKeySelector sortKeySelector, RankType rankType, RankRange rankRange, GeneratedRecordEqualiser generatedEqualiser, boolean generateUpdateBefore, boolean outputRankNumber)
public void open(OpenContext openContext) throws Exception
RichFunction
The openContext object passed to the function can be used for configuration and initialization. The openContext contains some necessary information that were configured on the function in the program composition.
public class MyFilter extends RichFilterFunction<String> {
private String searchString;
public void open(OpenContext openContext) {
// initialize the value of searchString
}
public boolean filter(String value) {
return value.equals(searchString);
}
}
By default, this method does nothing.
1. If you implement open(OpenContext openContext)
, the open(OpenContext
openContext)
will be invoked and the open(Configuration parameters)
won't be
invoked. 2. If you don't implement open(OpenContext openContext)
, the open(Configuration parameters)
will be invoked in the default implementation of the open(OpenContext openContext)
.
open
in interface RichFunction
open
in class AbstractTopNFunction
openContext
- The context containing information about the context in which the function
is opened.Exception
- Implementations may forward exceptions, which are caught by the runtime.
When the runtime catches an exception, it aborts the task and lets the fail-over logic
decide whether to retry the task execution.public void processElement(RowData input, KeyedProcessFunction.Context ctx, Collector<RowData> out) throws Exception
KeyedProcessFunction
This function can output zero or more elements using the Collector
parameter and
also update internal state or set timers using the KeyedProcessFunction.Context
parameter.
processElement
in class KeyedProcessFunction<RowData,RowData,RowData>
input
- The input value.ctx
- A KeyedProcessFunction.Context
that allows querying the timestamp of the element and getting a
TimerService
for registering timers and querying the time. The context is only
valid during the invocation of this method, do not store it.out
- The collector for returning result values.Exception
- This method may throw exceptions. Throwing an exception will cause the
operation to fail and may trigger recovery.Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.