Class KeyedStream.IntervalJoined<IN1,IN2,KEY>
- java.lang.Object
-
- org.apache.flink.streaming.api.datastream.KeyedStream.IntervalJoined<IN1,IN2,KEY>
-
- Type Parameters:
IN1
- Input type of elements from the first streamIN2
- Input type of elements from the second streamKEY
- The type of the key
- Enclosing class:
- KeyedStream<T,KEY>
@PublicEvolving public static class KeyedStream.IntervalJoined<IN1,IN2,KEY> extends Object
IntervalJoined is a container for two streams that have keys for both sides as well as the time boundaries over which elements should be joined.
-
-
Constructor Summary
Constructors Constructor Description IntervalJoined(KeyedStream<IN1,KEY> left, KeyedStream<IN2,KEY> right, long lowerBound, long upperBound, boolean lowerBoundInclusive, boolean upperBoundInclusive)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description KeyedStream.IntervalJoined<IN1,IN2,KEY>
enableAsyncState()
Enable the async state processing for following keyed processing function.KeyedStream.IntervalJoined<IN1,IN2,KEY>
lowerBoundExclusive()
Set the lower bound to be exclusive.<OUT> SingleOutputStreamOperator<OUT>
process(ProcessJoinFunction<IN1,IN2,OUT> processJoinFunction)
Completes the join operation with the given user function that is executed for each joined pair of elements.<OUT> SingleOutputStreamOperator<OUT>
process(ProcessJoinFunction<IN1,IN2,OUT> processJoinFunction, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType)
Completes the join operation with the given user function that is executed for each joined pair of elements.KeyedStream.IntervalJoined<IN1,IN2,KEY>
sideOutputLeftLateData(org.apache.flink.util.OutputTag<IN1> outputTag)
Send late arriving left-side data to the side output identified by the givenOutputTag
.KeyedStream.IntervalJoined<IN1,IN2,KEY>
sideOutputRightLateData(org.apache.flink.util.OutputTag<IN2> outputTag)
Send late arriving right-side data to the side output identified by the givenOutputTag
.KeyedStream.IntervalJoined<IN1,IN2,KEY>
upperBoundExclusive()
Set the upper bound to be exclusive.
-
-
-
Constructor Detail
-
IntervalJoined
public IntervalJoined(KeyedStream<IN1,KEY> left, KeyedStream<IN2,KEY> right, long lowerBound, long upperBound, boolean lowerBoundInclusive, boolean upperBoundInclusive)
-
-
Method Detail
-
upperBoundExclusive
@PublicEvolving public KeyedStream.IntervalJoined<IN1,IN2,KEY> upperBoundExclusive()
Set the upper bound to be exclusive.
-
lowerBoundExclusive
@PublicEvolving public KeyedStream.IntervalJoined<IN1,IN2,KEY> lowerBoundExclusive()
Set the lower bound to be exclusive.
-
sideOutputLeftLateData
@PublicEvolving public KeyedStream.IntervalJoined<IN1,IN2,KEY> sideOutputLeftLateData(org.apache.flink.util.OutputTag<IN1> outputTag)
Send late arriving left-side data to the side output identified by the givenOutputTag
. Data is considered late after the watermark
-
sideOutputRightLateData
@PublicEvolving public KeyedStream.IntervalJoined<IN1,IN2,KEY> sideOutputRightLateData(org.apache.flink.util.OutputTag<IN2> outputTag)
Send late arriving right-side data to the side output identified by the givenOutputTag
. Data is considered late after the watermark
-
process
@PublicEvolving public <OUT> SingleOutputStreamOperator<OUT> process(ProcessJoinFunction<IN1,IN2,OUT> processJoinFunction)
Completes the join operation with the given user function that is executed for each joined pair of elements.- Type Parameters:
OUT
- The output type.- Parameters:
processJoinFunction
- The user-defined process join function.- Returns:
- The transformed
DataStream
.
-
process
@PublicEvolving public <OUT> SingleOutputStreamOperator<OUT> process(ProcessJoinFunction<IN1,IN2,OUT> processJoinFunction, org.apache.flink.api.common.typeinfo.TypeInformation<OUT> outputType)
Completes the join operation with the given user function that is executed for each joined pair of elements. This methods allows for passing explicit type information for the output type.- Type Parameters:
OUT
- The output type.- Parameters:
processJoinFunction
- The user-defined process join function.outputType
- The type information for the output type.- Returns:
- The transformed
DataStream
.
-
enableAsyncState
@Experimental public KeyedStream.IntervalJoined<IN1,IN2,KEY> enableAsyncState()
Enable the async state processing for following keyed processing function. This also requires only State V2 APIs are used in the function.- Returns:
- the configured IntervalJoin itself.
-
-